MX2014000172A - Metodo y aparato para codificar video y metodo y aparato para decodificar video acompañados por una codificacion aritmetica. - Google Patents

Metodo y aparato para codificar video y metodo y aparato para decodificar video acompañados por una codificacion aritmetica.

Info

Publication number
MX2014000172A
MX2014000172A MX2014000172A MX2014000172A MX2014000172A MX 2014000172 A MX2014000172 A MX 2014000172A MX 2014000172 A MX2014000172 A MX 2014000172A MX 2014000172 A MX2014000172 A MX 2014000172A MX 2014000172 A MX2014000172 A MX 2014000172A
Authority
MX
Mexico
Prior art keywords
coding
unit
symbol
prefix
sequence
Prior art date
Application number
MX2014000172A
Other languages
English (en)
Inventor
Vadim Seregin
Il-Koo Kim
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of MX2014000172A publication Critical patent/MX2014000172A/es

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/1883Methods 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 relating to sub-band structure, e.g. hierarchical level, directional tree, e.g. low-high [LH], high-low [HL], high-high [HH]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Abstract

La presente invención se refiere a un método para decodificar un video a través de la decodificación de símbolos, el método incluye analizar símbolos de bloques de imagen de una corriente de bits recibida; clasificar un símbolo actual en una secuencia de bits de prefijo y una secuencia de bits de sufijo con base en un valor umbral determinado de acuerdo con el tamaño de un bloque actual; realizar la decodificación aritmética mediante el uso de un método de decodificación aritmética determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo; y realizar una binarización inversa mediante el uso de un método de binarización determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo.

Description

METODO Y APARATO PARA CODIFICAR VIDEO Y METODO Y APARATO PARA DECODIFICAR VIDEO ACOMPAÑADOS POR UNA CODIFICACION ARITMETICA Campo de la Invención La presente invención se refiere a la codificación de video y a la decodificación de video que implican una codificación aritmética y una decodificación aritmética, respectivamente .
Antecedentes de la Invención Conforme el hardware (componentes físicos) para reproducir y almacenar contenido de video de alta resolución o de alta calidad se está desarrollando y suministrando, está creciendo la necesidad de un codificador/decodificador de video para codificar o decodificar de manera efectiva el contenido de video de alta resolución o alta calidad. En un codificador/decodificador de video convencional, un video se codifica de acuerdo con un método de codificación limitado con base en un macrobloque que tiene un tamaño predeterminado .
Los datos de imagen de un dominio espacial se convierten a coeficientes de una región de frecuencia mediante el uso de un método de conversión de frecuencia. Un codificador/decodificador de video codifica coeficientes de frecuencia en unidades de bloques al dividir una imagen en una pluralidad de bloques que tienen un tamaño predeterminado Ref. 245920 y realizar una conversión de transformación de coseno discreta (DCT, por sus siglas en inglés) para una operación rápida de conversión de frecuencia. Los coeficientes de la región de frecuencia se comprimen fácilmente en comparación con los datos de imagen del dominio espacial. En particular, un valor de pixel de una imagen en el dominio espacial se representa como un error de predicción y de esta manera si la conversión de frecuencia se realiza en el error de predicción, una gran cantidad de datos se puede convertir a 0. Un codificador/decodificador de video convierte datos que se generan continua y repetidamente en datos pequeños para reducir una cantidad de datos.
Breve Descripción de la Invención Problema Técnico La presente invención proporciona un método y un aparato para realizar una codificación aritmética y una decodificación aritmética de un video mediante la clasificación de un símbolo en secuencias de bits de prefijo y sufijo.
Solución Técnica De acuerdo con un aspecto de la presente invención, se proporciona un método para decodificar un video a través de la decodificación de símbolos, el método incluye: analizar símbolos de bloques de imagen de una corriente de bits recibida; clasificar un símbolo actual en una secuencia de bits de prefijo y una secuencia de bits de sufijo con base en un valor umbral determinado de acuerdo con el tamaño de un bloque actual; realizar una decodificación aritmética mediante el uso de un método de decodificación aritmética determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo; realizar una binarización inversa mediante el uso de un método de binarización determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo; y restaurar los bloques de imagen al realizar una transformación inversa y una predicción en el bloque actual mediante el uso del símbolo actual restaurado a través de la decodificación aritmética y la binarización inversa.
Efectos Ventajosos La eficiencia de un proceso de codificación/decodificación de símbolos se mejora al realizar un método de binarización que tiene una cantidad relativamente pequeña de carga de operación en la región de sufijo o la secuencia de bits de sufijo o al omitir el modelado de contexto durante la codificación/decodificación aritmética basada en el contexto para la codificación/decodificación de símbolos.
Breve Descripción de las Figuras La FIGURA 1 es un diagrama de bloques de un aparato de codificación de video, de acuerdo con una modalidad de la presente invención; la FIGURA 2 es un diagrama de bloques de un aparato de decodificación de video, de acuerdo con una modalidad de la presente invención; las FIGURAS 3 y 4 son diagramas para describir la codificación aritmética mediante la clasificación de un símbolo en una secuencia de bits de prefijo y una secuencia de bits de sufijo de acuerdo con un valor umbral predeterminado, de acuerdo con una modalidad de la presente invención; la FIGURA 5 es un diagrama de flujo para describir un método de codificación de video, de acuerdo con una modalidad de la presente invención; la FIGURA 6 es un diagrama de flujo para describir un método de decodificación de video, de acuerdo con una modalidad de la presente invención; la FIGURA 7 es un diagrama de bloques de un aparato de codificación de video basado en unidades de codificación que tienen una estructura arborescente, de acuerdo con una modalidad de la presente invención; la FIGURA 8 es un diagrama de bloques de un aparato de decodificación de video basado en una unidad de codificación que tiene una estructura arborescente, de acuerdo con una modalidad de la presente invención; la FIGURA 9 es un diagrama conceptual de unidades de codificación, de acuerdo con una modalidad de la presente invención; la FIGURA 10 es un diagrama de bloques de un codificador de imágenes basado en unidades de codificación, de acuerdo con una modalidad de la presente invención; la FIGURA 11 es un diagrama de bloques de un decodificador de imágenes basado en unidades de codificación, de acuerdo con una modalidad de la presente invención; la FIGURA 12 es un diagrama que muestra unidades de codificación de acuerdo con profundidades y particiones, de acuerdo con una modalidad de la presente invención; la FIGURA 13 es un diagrama para describir una relación entre una unidad de codificación y unidades de transformación, de acuerdo con una modalidad de la presente invención; la FIGURA 14 es un diagrama para describir información de codificación de unidades de codificación de acuerdo con profundidades, de acuerdo con una modalidad de la presente invención; la FIGURA 15 es un diagrama que muestra unidades de codificación de acuerdo con profundidades, de acuerdo con una modalidad de la presente invención; las FIGURAS 16 a 18 son diagramas para describir una relación entre unidades de codificación, unidades de predicción y unidades de transformación, de acuerdo con una modalidad de la presente invención; y la FIGURA 19 es un diagrama para describir una relación entre una unidad de codificación, una unidad de predicción y una unidad de transformación de acuerdo con información de modo de codificación de la Tabla 1.
Descripción Detallada de la Invención De acuerdo con un aspecto de la presente invención, se proporciona un método para decodificar un video a través de la decodificación de símbolos, el método incluye: analizar símbolos de bloques de imagen de una corriente de bits recibida; clasificar un símbolo actual en una secuencia de bits de prefijo y una secuencia de bits de sufijo con base en un valor umbral determinado de acuerdo con el tamaño de un bloque actual; realizar una decodificación aritmética mediante el uso de un método de decodificación aritmética determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo; realizar una binarización inversa mediante el uso de un método de binarización determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo; y restaurar los bloques de imagen al realizar una transformación inversa y una predicción en el bloque actual mediante el uso del símbolo actual restaurado a través de la decodificación aritmética y la binarización inversa.
La realización de la binarización inversa puede incluir restaurar una región de prefijo y una región de sufijo del símbolo al realizar una binarización inversa de acuerdo con el método de binarización determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo.
La realización de la decodificación aritmética puede incluir: realizar una decodificación aritmética para determinar el modelado de contexto en la secuencia de bits de prefijo de acuerdo con ubicaciones de bits; y realizar una decodificación aritmética para omitir el modelado de contexto en la secuencia de bits de sufijo en un modo de derivación.
La realización de la decodificación aritmética puede incluir realizar la decodificación aritmética mediante el uso de un contexto de un índice predeterminado que se asigna previamente a las ubicaciones de los bits de la secuencia de bits de prefijo, cuando el símbolo es información de posición del coeficiente final de un coeficiente de transformación.
El símbolo actual puede incluir por lo menos uno de un modo de intra-predicción e información de posición del coeficiente final del bloque actual.
El método de binarización puede incluir además por lo menos una seleccionada del grupo que consiste de binarización unaria, binarización unaria truncada, binarización de Golomb exponencial y binarización de longitud fija .
De acuerdo con otro aspecto de la presente invención, se proporciona un método para codificar un video a través de la codificación de símbolos, el método incluye: generar símbolos al realizar una predicción y una transformación en bloques de imagen; clasificar un símbolo actual en una región de prefijo y una región de sufijo con base en un valor umbral determinado de acuerdo con el tamaño de un bloque actual; generar una secuencia de bits de prefijo y una secuencia de bits de sufijo mediante el uso de un método de binarización determinado para cada una de la región de prefijo y la región de sufijo; realizar una codificación de símbolos mediante el uso de un método de codificación aritmética determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo; y enviar las secuencias de bits generadas a través de la codificación de símbolos en la forma de corrientes de bits.
La realización de la codificación de símbolos puede incluir: realizar la codificación de símbolos en la secuencia de bits de prefijo mediante el uso de un método de codificación aritmética para realizar el modelado de contexto de acuerdo con ubicaciones de bits; y realizar la codificación de símbolos en la secuencia de bits de sufijo mediante el uso de un método de codificación aritmética para omitir el modelado de contexto en un modo de derivación.
La realización de la codificación de símbolos puede incluir realizar la codificación aritmética mediante el uso de un contexto de un índice predeterminado que se asigna previamente a las ubicaciones de los bits de la secuencia de bits de prefijo, cuando el símbolo es información de posición del coeficiente final de un coeficiente de transformación.
El símbolo actual puede incluir por lo menos uno de un modo de intra-predicción e información de posición del coeficiente final del bloque actual.
El método de binarización puede incluir además por lo menos una seleccionada del grupo que consiste de binarización unaria, binarización unaria truncada, binarización de Golomb exponencial y binarización de longitud fija.
De acuerdo con otro aspecto de la presente invención, se proporciona un aparato para decodificar un video a través de la decodificación de símbolos, el aparato incluye: un analizador para analizar símbolos de bloques de imagen de una corriente de bits recibida; un decodificador de símbolos para clasificar un símbolo actual en una secuencia de bits de prefijo y una secuencia de bits de sufijo con base en un valor de umbral determinado de acuerdo con el tamaño de un bloque actual y realizar una decodificación aritmética mediante el uso de un método de decodificación aritmética determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo y luego realizar una binarización inversa mediante el uso de un método de binarización determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo; y una unidad de restauración de imagen para restaurar los bloques de imagen al realizar una transformación inversa y una predicción en el bloque actual mediante el uso del símbolo actual restaurado a través de la decodificación aritmética y la binarización inversa.
De acuerdo con otro aspecto de la presente invención, se proporciona un aparato para codificar un video a través de la codificación de símbolos, el aparato incluye: un codificador de imagen para generar símbolos al realizar una predicción y una transformación en bloques de imagen; un codificador de símbolos para clasificar un símbolo actual en una región de prefijo y una región de sufijo con base en un valor umbral determinado de acuerdo con el tamaño de un bloque actual y generar una secuencia de bits de prefijo y una secuencia de bits de sufijo mediante el uso de un método de binarización determinado para cada una de la región de prefijo y la región de sufijo y luego realizar una codificación de símbolos mediante el uso de un método de codificación aritmética determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo; y una unidad de salida de corriente de bits para enviar las secuencias de bits generadas a través de la codificación de símbolos en la forma de corrientes de bits.
De acuerdo con otro aspecto de la presente invención, se proporciona un medio de grabación legible por computadora que tiene incorporado en el mismo un programa de computadora para ejecutar el método de decodificación de un video a través de la decodificación de símbolos.
De acuerdo con otro aspecto de la presente invención, se proporciona un medio de grabación legible por computadora que tiene incorporado en el mismo un programa de computadora para ejecutar el método de codificación de un video a través de la codificación de símbolos.
Modo de Invención En lo sucesivo, la presente invención se describirá más completamente con referencia a las figuras asociadas, en los cuales se muestran las modalidades ejemplares de la invención. Las expresiones tales como "por lo menos uno de", cuando anteceden una lista de elementos, modifican la lista completa de elementos y no modifican los elementos individuales de la lista.
Un método de codificación de video que implica la codificación aritmética y un método de decodificación de video que implica la decodificación aritmética de acuerdo con una modalidad de la presente invención se describirán con referencia a las FIGURAS 1 a 6. También, un método de codificación de video que implica la codificación aritmética y un método de decodificación de video que implica la decodificación aritmética basados en unidades de codificación que tienen una estructura arborescente de acuerdo con una modalidad de la presente invención se describirán con referencia a las FIGURAS 7 a 19. En lo sucesivo, una "imagen" puede referirse a una imagen fija de un video o una película, es decir, un video mismo.
En lo sucesivo, un método de codificación de video y un método de decodificación de video, de acuerdo con una modalidad de la presente invención, basados en un método de predicción en un modo de intra-predicción se describirán con referencia a las FIGURAS 1 a 6.
La FIGURA 1 es un diagrama de bloques de un aparato de codificación de video 10, de acuerdo con una modalidad de la presente invención.
El aparato de codificación de video 10 puede codificar datos de video de un dominio espacial a través de la intra-predicción/inter-predicción, transformación, cuantificación y codificación de símbolos. En lo sucesivo, las operaciones que ocurren cuando el aparato de codificación de video 10 codifica símbolos generados mediante la intra-predicción/inter-predicción, la transformación y la cuantificación a través de la codificación aritmética se describirán en detalle.
El aparato de codificación de video 10 incluye un codificador de imagen 12, un codificador de símbolo 14 y una unidad de salida de corriente de bits 16.
El aparato de codificación de video 10 puede dividir datos de imagen de un video en una pluralidad de unidades de datos y codificar los datos de imagen de acuerdo con las unidades de datos. La unidad de datos puede tener una forma cuadrada o una forma rectangular o puede tener una forma geométrica arbitraria, pero la unidad de datos no está limitada a una unidad de datos que tiene un tamaño predeterminado. De acuerdo con el método de codificación de video basado en las unidades de codificación que tienen una estructura arborescente, una unidad de datos puede ser una unidad de codificación máxima, una unidad de codificación, una unidad de predicción, una unidad de transformación o similares. Un ejemplo donde un método de codificación/decodificación aritmética de acuerdo con una modalidad de la presente invención se utiliza en el método de codificación/decodificación de video con base en las unidades de codificación que tienen una estructura arborescente se describirá con referencia a las FIGURAS 7 a 19.
Por conveniencia de descripción, un método de codificación de video para un "bloque" el cual es una clase de unidad de datos se describirá en detalle. Sin embargo, el método de codificación de video de acuerdo con varias modalidades de la presente invención no está limitado al método de codificación de video para el "bloque" y se puede utilizar para varias unidades de datos.
El codificador de imágenes 12 realiza operaciones, tal como la intra-predicción/inter-predicción, transformación o cuantificación, en bloques de imagen para generar símbolos.
El codificador de símbolos 14 clasifica un símbolo actual en una región de prefijo y una región de sufijo con base en un valor umbral determinado de acuerdo con el tamaño de un bloque actual para codificar el símbolo actual de entre los símbolos generados de acuerdo con los bloques. El codificador de símbolos 14 puede determinar el valor umbral para clasificar el símbolo actual en la región de prefijo y la región de sufijo con base en por lo menos una de una anchura y una longitud del bloque actual.
El codificador de símbolos 14 puede determinar un método de codificación de símbolos para cada una de la región de prefijo y la región de sufijo y codificar cada una de la región de prefijo y la región de sufijo de acuerdo con el método de codificación de símbolos.
La codificación de símbolos se puede dividir en un proceso de binarización para transformar un símbolo en secuencias de bits y un proceso de codificación aritmética para realizar una codificación aritmética basada en contexto en las secuencias de bits. El codificador de símbolos 14 puede determinar un método de binarización para cada una de la región de prefijo y la región de sufijo del símbolo y realizar una binarización en cada una de la región de prefijo y la región de sufijo de acuerdo con el método de binarización. Una secuencia de bits de prefijo y una secuencia de bits de sufijo se pueden generar a partir de la región de prefijo y la región de sufijo, respectivamente.
Alternativamente, el codificador de símbolos 14 puede determinar un método de codificación aritmética para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo del símbolo y realizar una codificación aritmética en cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo de acuerdo con el método de codificación aritmética.
También, el codificador de símbolos 14 puede determinar un método de binarización para cada una de la región de prefijo y la región de sufijo del símbolo y realizar una binarización en cada una de la región de prefijo y la región de sufijo de acuerdo con el método de binarización y puede determinar un método de codificación aritmética para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo del símbolo y realizar una codificación aritmética en la secuencia de bits de prefijo y la secuencia de bits de sufijo de acuerdo con el método de codificación aritmética.
El codificador de símbolos 14 de acuerdo con una modalidad de la presente invención puede determinar un método de binarización para cada una de la región de prefijo y la región de sufijo. Los métodos de binarización determinados para la región de prefijo y la región de sufijo pueden ser diferentes entre sí.
El codificador de símbolos 14 puede determinar un método de codificación aritmética para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo. Los métodos de codificación aritmética determinados para la secuencia de bits de prefijo y la secuencia de bits de sufijo pueden ser diferentes entre sí.
Por consiguiente, el codificador de símbolos 14 puede binarizar la región de prefijo y la región de sufijo mediante el uso de diferentes métodos únicamente en un proceso de binarización de un proceso de decodificación de símbolos o puede codificar la secuencia de bits de prefijo y la secuencia de bits de sufijo mediante el uso de diferentes métodos solo en un proceso de codificación aritmética. También, el codificador de símbolos 14 puede codificar la región de prefijo (secuencia de bits de prefijo) y la región de sufijo (secuencia de bits de sufijo) mediante el uso de diferentes métodos en los procesos tanto de binarización como de codificación aritmética.
El método de binarización seleccionado puede ser por lo menos uno de los métodos de binarización general, binarización unaria, binarización uñaría truncada, binarización de Golomb exponencial y binarización de longitud fija.
El codificador de símbolos 14 puede realizar una codificación de símbolos al realizar una codificación aritmética para realizar un modelado de contexto en la secuencia de bits de prefijo de acuerdo con ubicaciones de bits y al realizar una codificación aritmética para omitir el modelado de contexto en la secuencia de bits de sufijo en un modo de derivación.
El codificador de símbolos 14 puede realizar individualmente la codificación de símbolos en la región de prefijo y la región de sufijo con respecto a los símbolos que incluyen por lo menos uno del modo de intra-predicción y la información de posición del coeficiente final de un coeficiente de transformación.
El codificador de símbolos 14 también puede realizar la codificación aritmética mediante el uso de un contexto de un índice predeterminado que se asigna previamente a la secuencia de bits de prefijo. Por ejemplo, el codificador de símbolos 14 puede realizar una codificación aritmética mediante el uso de un contexto de un índice predeterminado que se asigna previamente a cada ubicación de los bits de la secuencia de bits de prefijo cuando el símbolo es información de posición del coeficiente final del coeficiente de transformación.
La unidad de salida de corriente de bits 16 envía secuencias de bits generadas a través de la codificación de símbolos en la forma de corrientes de bits.
El aparato de codificación de video 10 puede realizar una codificación aritmética en los símbolos de bloques de un video y enviar los símbolos.
El aparato de codificación de video 10 puede incluir un procesador central (el cual no se muestra) para controlar la totalidad del codificador de imágenes 12, el codificador de símbolos 14 y la unidad de salida de corriente de bits 16. Alternativamente, el codificador de imágenes 12, el codificador de símbolos 14 y la unidad de salida de corriente de bits 16 pueden ser operados por procesadores (los cuales no se muestran) instalados respectivamente en los mismos y el aparato de codificación de video completo 10 puede ser operado al operar sistemáticamente los procesadores (los cuales no se muestran) . Alternativamente, el codificador de imágenes 12, el codificador de símbolos 14 y la unidad de salida de corriente de bits 16 pueden ser controlados por un procesador externo (el cual no se muestra) del aparato de codificación de video 10.
El aparato de codificación de video 10 puede incluir por lo menos una unidad de almacenamiento de datos (la cual no se muestra) para almacenar datos que son introducidos/enviados a/desde el codificador de imágenes 12, el codificador de símbolos 14 y la unidad de salida de corriente de bits 16. El aparato de codificación de video 10 puede incluir un controlador de memoria (el cual no se muestra) para controlar la entrada/salida de datos almacenados en la unidad de almacenamiento de datos (la cual no se muestra) .
El aparato de codificación de video 10 es operado al ser vinculado con un procesador de codificación de video interno o un procesador de codificación de video externo para realizar la codificación de video que incluye una predicción y una transformación, enviando de ese modo un resultado de la codificación de video. El procesador de codificación de video interno del aparato de codificación de video 10 puede realizar una operación de codificación de video básica no solo mediante el uso de un procesador separado, sino también al incluir un módulo de procesamiento de codificación de video en el aparato de codificación de video 10, un aparato de operación central o un aparato de operación gráfica.
La FIGURA 2 es un diagrama de bloques de un aparato de decodificación de video 20, de acuerdo con una modalidad de la presente invención.
El aparato de decodificación de video 20 puede decodificar los datos de video codificados por el aparato de codificación de video 10 a través del análisis, decodificación de símbolos, cuantificación inversa, transformación inversa, intra-predicción/compensación de movimiento, etcétera y restaurar los datos de video cerca de los datos de video originales del dominio espacial. En lo sucesivo, se describirá un proceso en el cual el aparato de decodificación de video 20 realiza una decodificación aritmética en los símbolos analizados de una corriente de bits para restaurar los símbolos.
El aparato de decodificación de video 20 incluye un analizador 22, un decodificador de símbolos 24 y una unidad de restauración de imagen 26.
El aparato de decodificación de video 20 puede recibir una corriente de bits que incluye datos codificados de un video. El analizador 22 puede analizar símbolos de bloques de imagen de la corriente de bits.
El analizador 22 puede analizar los símbolos codificados a través de una codificación aritmética con respecto a los bloques de video de la corriente de bits.
El analizador 22 puede analizar símbolos que incluyen un modo de intra-predicción del bloque del video, información de posición del coeficiente final de un coeficiente de transformación, etcétera de la corriente de bits recibida.
El decodificador de símbolos 24 determina un valor umbral para clasificar un símbolo actual en una secuencia de bits de prefijo y una secuencia de bits de sufijo. El decodificador de símbolos 24 puede determinar el valor umbral para clasificar el símbolo actual en la secuencia de bits de prefijo y la secuencia de bits de sufijo con base en el tamaño de un bloque actual, es decir, por lo menos una de una anchura y una altura del bloque actual. El decodificador de símbolos 24 determina un método de decodificación aritmética para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo. El decodificador de símbolos 24 realiza una decodificación de símbolos mediante el uso del método de decodificación aritmética determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo .
Los métodos de decodificación aritmética determinados para la secuencia de bits de prefijo y la secuencia de bits de sufijo pueden ser diferentes entre sí.
El decodificador de símbolos 24 puede determinar un método de binarización para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo del símbolo. Por consiguiente, el decodificador de símbolos 24 puede realizar una binarización inversa en la secuencia de bits de prefijo del símbolo mediante el uso del método de binarización. Los métodos de binarización determinados para la secuencia de bits de prefijo y la secuencia de bits de sufijo pueden ser diferentes entre sí.
También, el decodificador de símbolos 24 puede realizar una decodificación aritmética mediante el uso del método de decodificación aritmética determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo del símbolo y puede realizar una binarización inversa mediante el uso del método de binarización determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo generadas a través de la decodificación aritmética.
Por consiguiente, el decodificador de símbolos 24 puede decodificar la secuencia de bits de prefijo y la secuencia de bits de sufijo mediante el uso de diferentes métodos solo en un proceso de decodificación aritmética de un proceso de decodificación de símbolos o puede realizar una binarización inversa mediante el uso de diferentes métodos solo en un proceso de binarización inversa. También, el decodificador de símbolos 24 puede decodificar la secuencia de bits de prefijo y la secuencia de bits de sufijo mediante el uso de diferentes métodos en los procesos tanto de decodificación aritmética como de binarización inversa.
El método de binarización determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo del símbolo puede ser no solo un método de binarización general, sino que también puede ser por lo menos uno de los métodos de binarización uñaría, binarización unaria truncada, binarización de Golomb exponencial y binarización de longitud fija.
El decodificador de símbolos 24 puede realizar una decodificación aritmética para realizar el modelado de contexto en la secuencia de bits de prefijo de acuerdo con ubicaciones de bits. El decodificador de símbolos 24 puede utilizar un método de decodificación aritmética para omitir el modelado de contexto en la secuencia de bits de sufijo en un modo de derivación. Por consiguiente, el decodificador de símbolos 24 puede realizar una decodificación de símbolos a través de la decodificación aritmética realizada en cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo del símbolo.
El decodificador de símbolos 24 puede realizar la decodificación aritmética en la secuencia de bits de prefijo y la secuencia de bits de sufijo de símbolos que incluyen por lo menos uno de un modo de intra-predicción e información de posición del coeficiente final de un coeficiente de transformación.
El decodificador de símbolos 24 puede realizar una decodificación aritmética mediante el uso de un contexto de un índice predeterminado que se asigna previamente de acuerdo con ubicaciones de los bits de la secuencia de bits de prefijo cuando el símbolo es información acerca de la posición del coeficiente final del coeficiente de transformación .
La unidad de restauración de imagen 26 puede restaurar una región de prefijo y una región de sufijo de un símbolo al realizar la decodificación aritmética y la binarización inversa en cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo. La unidad de restauración de imágenes 26 puede restaurar el símbolo al sintetizar la región de prefijo y la región de sufijo del símbolo.
La unidad de restauración de imágenes 26 realiza una transformación inversa y una predicción en el bloque actual mediante el uso del símbolo actual restaurado a través de la decodificación aritmética y la binarización inversa. La unidad de restauración de imágenes 26 puede restaurar bloques de imagen al realizar operaciones, tales como la cuantificación inversa, transformación inversa o intra-predicción/compensación de movimiento, mediante el uso de los símbolos correspondientes para cada uno de los bloques de imagen.
El aparato de decodificación de video 20 de acuerdo con una modalidad de la presente invención puede incluir un procesador central (el cual no se muestra) para controlar la totalidad del analizador 22, el decodificador de símbolos 24, y la unidad de restauración de imágenes 26. Alternativamente, el analizador 22, el decodificador de símbolos 24 y la unidad de restauración de imágenes 26 pueden ser operados por procesadores (los cuales no se muestran) instalados respectivamente en los mismos y el aparato de decodificación de video completo 20 puede ser operado mediante la operación sistemática de los procesadores (los cuales no se muestran) . Alternativamente, el analizador 22, el decodificador de símbolos 24 y la unidad de restauración de imágenes 26 pueden ser controlados por un procesador externo (el cual no se muestra) del aparato de decodificación de video 20.
El aparato de decodificación de video 20 puede incluir por lo menos una unidad de almacenamiento de datos (la cual no se muestra) para almacenar datos que son introducidos/enviados a/desde el analizador 22, el decodificador de símbolos 24 y la unidad de restauración de imágenes 26. El aparato de decodificación de video 20 puede incluir un controlador de memoria (el cual no se muestra) para controlar la entrada/salida de datos almacenados en la unidad de almacenamiento de datos (la cual no se muestra) .
El aparato de decodificación de video 20 se opera al ser vinculado con un procesador de decodificación de video interno o un procesador de decodificación de video externo para realizar la decodificación de video que incluye una transformación inversa. El procesador de decodificación de video interno del aparato de decodificación de video 20 puede realizar una operación de decodificación de video básica no solo mediante el uso de un procesador separado, sino también al incluir un módulo de procesamiento de decodificación de video en el aparato de decodificación de video 20, un aparato de operación central o un aparato de operación gráfica.
La codificación aritmética binaria adaptable con base en el contexto (CABAC, por sus siglas en inglés) se utiliza ampliamente como un método de codificación/decodificación aritmética basado en un contexto para la codificación/decodificación de símbolos. De acuerdo con la codificación/decodificación aritmética basada en el contexto, cada bit de una secuencia de bits de símbolo puede ser un número binario de un contexto y una ubicación de cada bit se puede mapear en un índice de número binario. Una longitud de la secuencia de bits, es decir, una longitud del número binario, puede variar de acuerdo con el tamaño de un valor de símbolo. El modelado de contexto para determinar un contexto de un símbolo se requiere para realizar la codificación/decodificación aritmética basada en el contexto. El contexto es renovado de acuerdo con las ubicaciones de bits de la secuencia de bits de símbolo, es decir, en cada índice de bit, para realizar el modelado de contexto y de esta manera se requiere un proceso de operación complicado.
De acuerdo con el aparato de codificación de video 10 del aparato de decodificación de video 20 descrito con referencia a las FIGURAS 1 y 2, el símbolo se clasifica en la región de prefijo y la región de sufijo y se puede utilizar un método de binarización relativamente simple para la región de sufijo en comparación con la región de prefijo. También, la codificación/decodificación aritmética a través del modelado de contexto se realiza en la secuencia de bits de prefijo y el modelado de contexto no se realiza en la secuencia de bits de sufijo y de esta manera una carga de una cantidad de operación para la codificación/decodificación aritmética basada en el contexto se puede reducir. Por consiguiente, el aparato de codificación de video 10 y el aparato de decodificación de video 20 pueden mejorar la eficiencia de un proceso de codificación/decodificación de símbolos al realizar un método de binarización que tiene una cantidad relativamente pequeña de carga de operación en la región de sufijo o la secuencia de bits de sufijo o al omitir el modelado de contexto durante la codificación/decodificación aritmética basada en el contexto para la codificación/decodificación de símbolos.
En lo sucesivo, se describirán varias modalidades para la codificación aritmética que pueden ser realizadas por el aparato de codificación de video 10 y el aparato de decodificación de video 20.
Las FIGURAS 3 y 4 son diagramas para describir una codificación aritmética al clasificar un símbolo en una secuencia de bits de prefijo y una secuencia de bits de sufijo de acuerdo con un valor umbral predeterminado, de acuerdo con una modalidad de la presente invención.
Con referencia a la FIGURA 3, un proceso para realizar una codificación de símbolos, de acuerdo con una modalidad de la presente invención, en la información de posición del coeficiente de final de un símbolo se describirá con detalle. La información de posición del coeficiente final es un símbolo que representa una ubicación de un coeficiente final, no 0, de entre coeficientes de transformación de un bloque. Puesto que el tamaño del bloque se define como una anchura y una altura, la información de posición del coeficiente final puede ser representada por coordenadas bidimensionales , es decir, una coordenada x en una dirección de anchura y una coordenada y en una dirección de altura. Para conveniencia de la descripción, la FIGURA 3 muestra un caso donde la codificación de símbolos se realiza en la coordenada x en la dirección de la anchura de entre la información de posición del coeficiente final cuando una anchura de un bloque es w.
Un intervalo de la coordenada x de la información de posición del coeficiente final está dentro de la anchura del bloque y de esta manera la coordenada x de la información de posición del coeficiente final es igual a o mayor que 0 e igual a o menor que w-1. Para la codificación aritmética del símbolo, el símbolo se puede clasificar en una región de prefijo y una región de sufijo con base en un valor umbral predeterminado th. De esta manera, la codificación aritmética se puede realizar en la secuencia de bits de prefijo en la cual la región de prefijo es binarizada, con base en el contexto determinado a través del modelado de contexto. También, la codificación aritmética se puede realizar en la secuencia de bits de sufijo en la cual la región de sufijo se binariza, en un modo de derivación en el cual se omite el modelado de contexto.
En este documento, el valor umbral th para clasificar el símbolo en la región de prefijo y la región de sufijo se puede determinar con base en la anchura w del bloque. Por ejemplo, el valor umbral th se puede determinar que es (w/2) -1 para dividir la secuencia de bits por dos (fórmula de determinación del valor umbral 1) . Alternativamente, la anchura w del bloque tiene generalmente un cuadrado de 2 y de esta manera el valor umbral th se puede determinar con base en un valor logarítmico de la anchura w (fórmula de determinación del valor umbral 2) . <fórmula de determinación del valor umbral 1> th = (w/2) - 1; <fórmula de determinación del valor umbral 2> th = (log2w<<l) - 1; En la FIGURA 3, de acuerdo con la fórmula de determinación del valor umbral 1, cuando la anchura w del bloque es 8, la fórmula proporciona un valor umbral th = (8/2) - 1 = 3. De esta manera, en la coordenada x de la información de posición del coeficiente final, 3 se puede clasificar como la región de prefijo y el resto de los valores diferentes de 3 se pueden clasificar como la región de sufijo. La región de prefijo y la región de sufijo se pueden binarizar de acuerdo con el método de binarización determinado para cada una de la región de prefijo y la región de sufijo.
Cuando una coordenada x N de la información de posición del coeficiente final actual es 5, la coordenada x de la información de posición del coeficiente final se puede clasificar como N = th + 2 = 3 + 2. En otras palabras, en la coordenada x de la información de posición del coeficiente final, 3 se puede clasificar como la región de prefijo y 2 se puede clasificar como la región de sufijo.
De acuerdo con una modalidad de la presente invención, la región de prefijo y la región de sufijo se pueden binarizar de acuerdo con diferentes métodos de binarización determinados para la región de prefijo y la región de sufijo, respectivamente. Por ejemplo, la región de prefijo se puede binarizar de acuerdo con un método de binarización uñaría y la región de sufijo se puede binarizar de acuerdo con un método de binarización general.
Por consiguiente, después de que 3 se binariza de acuerdo con el método de binarización uñaría, una secuencia de bits de prefijo 32 "0001" se puede generar a partir de la región de prefijo y después de que 2 se binariza de acuerdo con el método de binarización general, la secuencia de bits de sufijo 34 "010" se puede generar a partir de la región de sufijo .
También, la codificación aritmética basada en el contexto se puede realizar en la secuencia de bits de prefijo 32 "0001" a través del modelado de contexto. De esta manera, un índice de contexto se puede determinar para cada número binario de la secuencia de bits de prefijo 32 "0001".
La codificación aritmética se puede realizar en la secuencia de bits de sufijo 34 "010" en un modo de derivación sin realizar el modelado de contexto. La codificación aritmética se puede realizar sin realizar el modelado de contexto asumiendo que en el modo de derivación cada número binario tiene un contexto de un estado de probabilidad igual, es decir, el contexto de 50%.
Por consiguiente, la codificación aritmética basada en el contexto se puede realizar en cada una de la secuencia de bits de prefijo 32 "0001" y la secuencia de bits de sufijo 34 "010" para completar la codificación de símbolos con respecto a la coordenada x N de la información de posición del coeficiente final actual.
Aunque se ha descrito en la modalidad en la cual la codificación de símbolos se realiza por vía de la binarización y la codificación aritmética, la decodificación de símbolos se puede realizar de la misma manera. En otras palabras, una secuencia de bits de símbolo analizada se puede clasificar en una secuencia de bits de prefijo y una secuencia de bits de sufijo con base en la anchura w del bloque, la decodificación aritmética se puede realizar en la secuencia de bits de prefijo 32 a través del modelado de contexto y la decodificación aritmética se puede realizar en la secuencia de bits de sufijo 34 sin realizar el modelado de contexto. La binarización inversa se puede realizar en la secuencia de bits de prefijo 32 después de la decodificación aritmética mediante el uso del método de binarización unaria y la región de prefijo se puede restaurar. También, la binarización inversa se puede realizar en la secuencia de bits de sufijo 34 después de la codificación aritmética mediante el uso del método de binarización general y de esta manera la región de sufijo se puede restaurar. El símbolo se puede restaurar al sintetizar la región de prefijo y la región de sufijo restauradas.
Aunque se ha descrito la modalidad en la cual el método de binarización unaria se utiliza para la región de prefijo (secuencia de bits de prefijo) y el método de binarización general se utiliza para la región de sufijo (secuencia de bits de sufijo) , el método de binarización no está limitado a los mismos. Alternativamente, un método de binarización unaria truncada se puede utilizar para la región de prefijo (secuencia de bits de prefijo) y un método de binarización de longitud fija se puede utilizar para la región de sufijo (secuencia de bits de sufijo) .
Aunque solo se ha descrito la modalidad con respecto a la información de posición del coeficiente final en una dirección de anchura del bloque, también se puede utilizar una modalidad con respecto a una información de posición del coeficiente final en una dirección de altura del bloque.
También, no hay necesidad de realizar un modelado de contexto en la secuencia de bits de sufijo para realizar la codificación aritmética mediante el uso de un contexto que tiene una probabilidad fija, sino que hay la necesidad de realizar un modelado de contexto variable en la secuencia de bits de prefijo. El modelado de contexto que se realiza en la secuencia de bits de prefijo se puede determinar de acuerdo con el tamaño del bloque.
Tabla de Mapeo de Contextos En la tabla de mapeo de contextos, una ubicación de cada número corresponde al índice de números binarios de la secuencia de bits de prefijo y el número indica un índice de contexto que se utiliza en una ubicación del bit correspondiente. Por conveniencia de la descripción, por ejemplo, en un bloque de 4x4, la secuencia de bits de prefijo está comprendida de un total de cuatro bits y cuando k es 0, 1, 2 y 3 de acuerdo con la tabla de mapeo de contextos, los índices de contexto 0, 1, 2 y 2 se determinan para el índice de número binario k-th y de esta manera se puede realizar la codificación aritmética con base en el modelado de contexto.
La FIGURA 4 muestra una modalidad en la cual un modo de intra-predicción incluye un modo intra luma y un modo intra croma que indican una dirección de intra-predicción de un bloque luma y un bloque croma, respectivamente. Cuando el modo de intra-predicción es 6, una secuencia de bits de símbolo 40 "0000001" se genera de acuerdo con un método de binarización unaria. En este caso, la codificación aritmética se puede realizar en un primer bit 41 "0" de la secuencia de bits de símbolo 40 del modo de intra-predicción, a través del modelado de contexto, y la codificación aritmética se puede realizar en el resto de los bits 45 "000001" de la secuencia de bits de símbolo 40, en un modo de derivación. En otras palabras, el primer bit 41 de la secuencia de bits de símbolo 40 corresponde a una secuencia de bits de prefijo y el resto de los bits 45 de la secuencia de bits de símbolo 40 corresponde a una secuencia de bits de sufijo.
Cuantos bits de la secuencia de bits de símbolo 40 se codifican en la codificación aritmética como la secuencia de bits de prefijo a través del modelado de contexto y cuantos bits de la secuencia de bits de símbolo 40 se codifican en la codificación aritmética como la secuencia de bits de sufijo en el modo de derivación se puede determinar de acuerdo con el tamaño de un bloque o el tamaño de un conjunto de bloques. Por ejemplo, con respecto a un bloque de 64x64, la codificación aritmética se puede realizar únicamente en un primer bit de entre las secuencias de bits de un modo de intra-predicción y la codificación aritmética se puede realizar en el resto de los bits en un modo de derivación. Con respecto a los bloques que tienen otros tamaños, la codificación aritmética se puede realizar en todos los bits de las secuencias de bits del modo de intra-predicción en el modo de derivación.
En general, la información acerca de los bits cercanos a un bit menos significativo (LSB, por sus siglas en inglés) es relativamente menos importante que la información acerca de los bits cercanos a un bit más significativo (MSB, por sus siglas en inglés) de una secuencia de bits de símbolo. Por consiguiente, el aparato de codificación de video 10 y el aparato de decodificación de video 20 pueden seleccionar un método de codificación aritmética de acuerdo con un método de binarización que tiene una exactitud relativamente alta con respecto a la secuencia de bits de prefijo cercana al MSB aún cuando existe una carga de una cantidad de operación y pueden seleccionar un método de codificación aritmética de acuerdo con un método de binarización capaz de realizar una operación simple con respecto a la secuencia de bits de sufijo cercana al LSB. También, el aparato de codificación de video 10 y el aparato de decodificación de video 20 pueden seleccionar un método de codificación aritmética con base en el modelado de contexto con respecto al modelado de contexto y pueden seleccionar un método de codificación aritmética, sin realizar el modelado de contexto, con respecto a la secuencia de bits de sufijo cercana al LSB.
En la descripción anterior, la modalidad en la cual la binarización se realiza en la secuencia de bits de prefijo y la secuencia de bits de sufijo de la información de posición del coeficiente final del coeficiente de transformación mediante el uso de diferentes métodos se ha descrito con referencia a la FIGURA 3. También, la modalidad en la cual la codificación aritmética se realiza en la secuencia de bits de prefijo y la secuencia de bits de sufijo de entre las secuencias de bits del modo de intra-predicción mediante el uso de diferentes métodos se ha descrito con referencia a la FIGURA 4.
Sin embargo, de acuerdo con varias modalidades de la presente invención, un método de codificación de símbolos en el cual se utilizan métodos de binarización/codificación aritmética determinados individualmente para la secuencia de bits de prefijo y la secuencia de bits de sufijo o se utilizan diferentes métodos de binarización/codificación aritmética no está limitado a las modalidades descritas con referencia a las FIGURAS 3 y 4 y varios métodos de binarización/codificación aritmética se pueden utilizar para varios símbolos.
La FIGURA 5 es un diagrama de flujo para describir un método de codificación de video, de acuerdo con una modalidad de la presente invención.
En la operación 51, los símbolos se generan al realizar una predicción y una transformación en los bloques de imagen .
En la operación 53, un símbolo actual se clasifica en una región de prefijo y una región de sufijo con base en un valor umbral determinado de acuerdo con el tamaño de un bloque actual .
En la operación 55, una secuencia de bits de prefijo y una secuencia de bits de sufijo se generan mediante el uso de métodos de binarización determinados individualmente para la región de prefijo y la región de sufijo del símbolo.
En la operación 57, una codificación de símbolos se realiza mediante el uso de métodos de codificación aritmética determinados individualmente para la secuencia de bits de prefijo y la secuencia de bits de sufijo.
En la operación 59, las secuencias de bits generadas a través de la codificación de símbolos se envían en la forma de corrientes de bits .
En la operación 57, la codificación de símbolos se puede realizar en la secuencia de bits de prefijo mediante el uso de un método de codificación aritmética para realizar un modelado de contexto de acuerdo con las ubicaciones de bits y la codificación de símbolos también se puede realizar en la secuencia de bits de sufijo mediante el uso de un método de codificación aritmética para omitir el modelado de contexto en un modo de derivación.
En la operación 57, cuando el símbolo es la información de posición del coeficiente final de un coeficiente de transformación, la codificación aritmética se puede realizar mediante el uso de un contexto de un índice predeterminado que se asigna previamente a las ubicaciones de los bits de la secuencia de bits de prefijo.
La FIGURA 6 es un diagrama de flujo para describir un método de decodificación de video, de acuerdo con una modalidad de la presente invención.
En la operación 61, los símbolos de bloques de imagen se analizan de una corriente de bits recibida.
En la operación 63, un símbolo actual se clasifica en una secuencia de bits de prefijo y una secuencia de bits de sufijo con base en un valor umbral determinado de acuerdo con el tamaño de un bloque actual .
En la operación 65, la decodificación aritmética se realiza mediante el uso de un método de decodificación aritmética determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo del símbolo actual .
En la operación 67, después de la decodificación aritmética, la binarización inversa se realiza mediante el uso de un método de binarización determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo .
La región de prefijo y la región de sufijo del símbolo se pueden restaurar al realizar la binarización inversa mediante el uso del método de binarización determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo.
En la operación 69, los bloques de imagen se pueden restaurar al realizar una transformación inversa y una predicción en el bloque actual mediante el uso del símbolo actual restaurado a través de la decodificación aritmética y la binarización inversa.
En la operación 65, la decodificación aritmética para determinar el modelado de contexto de acuerdo con las ubicaciones de los bits se puede realizar en la secuencia de bits de prefijo y la decodificación aritmética para omitir el modelado de contexto se puede realizar en la secuencia de bits de sufijo en un modo de derivación.
En la operación 65, cuando el símbolo es la información de posición del coeficiente final del coeficiente de transformación, la decodificación aritmética se puede realizar mediante el uso del contexto del índice predeterminado que se asigna previamente a las ubicaciones de los bits de la secuencia de bits de prefijo.
En el aparato de codificación de video 10 de acuerdo con una modalidad de la presente invención y el aparato de decodificación de video 20 de acuerdo con otra modalidad de la presente invención, los bloques en los cuales se dividen los datos de video se dividen en unidades de codificación que tienen una estructura arborescente, las unidades de predicción se utilizan para realizar una intra-predicción en las unidades de codificación y una unidad de transformación se utiliza para transformar las unidades de codificación .
En lo sucesivo, se describirán un método y un aparato para codificar un video y un método y un aparato para decodificar un video con base en una unidad de codificación que tiene una estructura arborescente, una unidad de predicción y una unidad de transformación.
La FIGURA 7 es un diagrama de bloques de un aparato de codificación de video 100, con base en las unidades de codificación que tienen una estructura arborescente, de acuerdo con una modalidad de la presente invención.
El aparato de codificación de video 100 que involucra la predicción de video con base en la unidad de codificación que tiene una estructura arborescente incluye un divisor de unidades de codificación máximas 110, un determinador de unidades de codificación 120 y una unidad de salida 130. Por conveniencia de la descripción, el aparato de codificación de video 100 que involucra la predicción de video con base en la unidad de codificación que tiene una estructura arborescente será referido como un aparato de codificación de video 100.
El divisor de unidades de codificación máximas 110 puede dividir una imagen actual con base en una unidad de codificación máxima para la imagen actual de una imagen. Si la imagen actual es más grande que la unidad de codificación máxima, los datos de imagen de la imagen actual se pueden dividir en por lo menos la unidad de codificación máxima. La unidad de codificación máxima de acuerdo con una modalidad de la presente invención puede ser una unidad de datos que tiene un tamaño de 32x32, 64x64, 128x128, 256x256, etcétera, en donde la forma de la unidad de datos es un cuadro que tiene una anchura y una longitud en cuadros de 2. Los datos de imagen se pueden enviar al determinador de unidades de codificación 120 de acuerdo con por lo menos la unidad de codificación máxima.
Una unidad de codificación de acuerdo con una modalidad de la presente invención se puede caracterizar por un tamaño máximo y una profundidad. La profundidad indica un número de veces que la unidad de codificación se divide espacialmente a partir de la unidad de codificación máxima, y conforme la profundidad aumenta, las unidades de codificación más profundas de acuerdo con las profundidades se pueden dividir desde la unidad de codificación máxima hasta una unidad de codificación mínima. Una profundidad de la unidad de codificación máxima es la profundidad superior y una profundidad de la unidad de codificación mínima es la profundidad inferior. Puesto que un tamaño de una unidad de codificación que corresponde a cada profundidad disminuye conforme aumenta la profundidad de la unidad de codificación máxima, una unidad de codificación que corresponde a una profundidad más alta puede incluir una pluralidad de unidades de codificación que corresponden a profundidades más bajas.
Como se describiera anteriormente, los datos de imagen de la imagen actual se dividen en las unidades de codificación máximas de acuerdo con un tamaño máximo de la unidad de codificación, y cada una de las unidades de codificación máximas puede incluir unidades de codificación más profundas que se dividen de acuerdo con las profundidades. Puesto que la unidad de codificación máxima de acuerdo con una modalidad de la presente invención se divide de acuerdo con las profundidades, los datos de imagen de un dominio espacial incluidos en la unidad de codificación máxima se pueden clasificar jerárquicamente de acuerdo con las profundidades.
Se puede predeterminar una profundidad máxima y un tamaño máximo de una unidad de codificación, los cuales limitan el número total de veces que una altura y una anchura de la unidad de codificación máxima se dividen jerárquicamente.
El determinador de unidades de codificación 120 codifica por lo menos una región dividida que se obtiene al dividir una región de la unidad de codificación máxima de acuerdo con las profundidades y determina una profundidad para enviar datos de imagen codificados finalmente de acuerdo con por lo menos la región dividida. En otras palabras, el determinador de unidades de codificación 120 determina una profundidad codificada al codificar los datos de imagen en las unidades de codificación más profundas de acuerdo con las profundidades, de acuerdo con la unidad de codificación máxima de la imagen actual y seleccionar una profundidad que tiene el error de codificación más pequeño.
Los datos de imagen en la unidad de codificación máxima se codifica con base en las unidades de codificación más profundas que corresponden a por lo menos una profundidad igual a o más pequeña que la profundidad máxima y los resultados de la codificación de los datos de imagen se comparan con base en cada una de las unidades de codificación más profundas. Una profundidad que tiene el error de codificación más pequeño se puede seleccionar después de comparar errores de codificación de las unidades de codificación más profundas. Se puede seleccionar por lo menos una profundidad codificada para cada unidad de codificación máxima .
El tamaño de la unidad de codificación máxima se divide conforme una unidad de codificación se divide jerárquicamente de acuerdo con las profundidades y conforme el número de unidades de codificación incrementa. También, incluso si las unidades de codificación corresponden a una misma profundidad en una unidad de codificación máxima, se determina si se divide cada una de las unidades de codificación que corresponden a la misma profundidad a una profundidad más baja al medir un error de codificación de los datos de imagen de cada unidad de codificación, de manera separada. Por consiguiente, incluso cuando los datos de imagen se incluyen en una unidad de codificación máxima, los datos de imagen se dividen en regiones de acuerdo con las profundidades y los errores de codificación pueden diferir de acuerdo con regiones en la unidad de codificación máxima, y de esta manera las profundidades codificadas pueden diferir de acuerdo con regiones en los datos de imagen. De esta manera, una o más profundidades codificadas se pueden determinar en una unidad de codificación máxima y los datos de imagen de la unidad de codificación máxima se pueden dividir de acuerdo con unidades de codificación de por lo menos una profundidad codificada.
Por consiguiente, el determinador de unidades de codificación 120 puede determinar unidades de codificación que tienen una estructura arborescente incluida en la unidad de codificación máxima. Las "unidades de codificación que tienen una estructura arborescente" de acuerdo con una modalidad de la presente invención incluyen unidades de codificación que corresponden a una profundidad determinada que es la profundidad codificada, de entre todas las unidades de codificación más profundas que están incluidas en la unidad de codificación máxima. Una unidad de codificación de una profundidad codificada se puede determinar jerárquicamente de acuerdo con profundidades en la misma región de la unidad de codificación máxima y se pueden determinar independientemente en diferentes regiones.
Similarmente, una profundidad codificada en una región actual se puede determinar independientemente de una profundidad codificada en otra región.
Una profundidad máxima de acuerdo con una modalidad de la presente invención es un índice relacionado con el número de veces que se realiza la división de una unidad de codificación máxima a una unidad de codificación mínima. Una primera profundidad máxima de acuerdo con una modalidad de la presente invención puede indicar el número total de veces que se realiza la división de la unidad de codificación máxima a la unidad de codificación mínima. Una segunda profundidad máxima de acuerdo con una modalidad de la presente invención puede indicar el número total de niveles de profundidad de la unidad de codificación máxima a la unidad de codificación mínima. Por ejemplo, cuando una profundidad de la unidad de codificación máxima es 0, una profundidad de una unidad de codificación, en la cual la unidad de codificación máxima se divide una vez, se puede establecer como 1, y una profundidad de una unidad de codificación, en la cual la unidad de codificación máxima se divide dos veces, se puede establecer como 2. En este documento, si la unidad de codificación mínima es una unidad de codificación en la cual la unidad de codificación máxima se divide cuatro veces, existen 5 niveles de profundidad de las profundidades 0, 1, 2, 3 y 4, y de esta manera la primera profundidad máxima se puede establecer como 4 y la segunda profundidad máxima se puede establecer como 5.
La codificación de predicción y la transformación se pueden realizar de acuerdo con la unidad de codificación máxima. La codificación de predicción y la transformación también se realizan con base en las unidades de codificación más profundas de acuerdo con una profundidad igual a o profundidades menores que la profundidad máxima, de acuerdo con la unidad de codificación máxima.
Puesto que el número de unidades de codificación más profundas incrementa siempre que la unidad de codificación máxima se divide de acuerdo con profundidades, la codificación que incluye la codificación de predicción y la transformación se realiza en todas las unidades de codificación más profundas que se generan conforme la profundidad aumenta. Para la conveniencia de la descripción, la codificación de predicción y la transformación ahora se describirán con base en una unidad de codificación de una profundidad actual, en una unidad de codificación máxima.
El aparato de codificación de video 100 puede seleccionar diversamente un tamaño o forma de una unidad de datos para codificar los datos de imagen. Con el propósito de codificar los datos de imagen, las operaciones, tal como la codificación de predicción, transformación y codificación entrópica, se realizan, y en ese momento, la misma unidad de datos se puede utilizar para todas las operaciones o diferentes unidades de datos se pueden utilizar para cada operación .
Por ejemplo, el aparato de codificación de video 100 puede seleccionar no solo una unidad de codificación para codificar los datos de imagen, sino también una unidad de datos diferente de la unidad de codificación con el fin de realizar la codificación de predicción en los datos de imagen en la unidad de codificación.
Con el propósito de realizar una codificación de predicción en la unidad de codificación máxima, la codificación de predicción se puede realizar con base en una unidad de codificación que corresponde a una profundidad codificada, es decir, con base en una unidad de codificación que ya no se divide en unidades de codificación que corresponden a una profundidad más baja. En lo sucesivo, la unidad de codificación que ya no se divide y se vuelve una unidad base para la codificación de predicción ahora será referida como una "unidad de predicción" . Una partición obtenida al dividir la unidad de predicción puede incluir una unidad de predicción o una unidad de datos obtenida al dividir por lo menos una de una altura y una anchura de la unidad de predicción. Una partición es una unidad de datos que tiene una forma en la cual se divide la unidad de predicción de la unidad de codificación y la unidad de predicción puede ser una partición que tiene el mismo tamaño que la unidad de codificación.
Por ejemplo, cuando una unidad de codificación de 2Nx2N (donde N es un número entero positivo) ya no se divide y se vuelve una unidad de predicción de 2Nx2N, y un tamaño de una partición puede ser 2Nx2N, 2NxN, Nx2N o NxN. Los ejemplos de un tipo de partición incluyen particiones simétricas que se obtienen al dividir simétricamente una altura o una anchura de la unidad de predicción, las particiones obtenidas al dividir asimétricamente la altura o la anchura de la unidad de predicción, tal como l:n o n:l, particiones que se obtienen al dividir geométricamente la unidad de predicción y particiones que tienen formas arbitrarias.
Un modo de predicción de la unidad de predicción puede ser por lo menos uno de un modo intra, un modo inter y un modo de omisión. Por ejemplo, el modo intra o el modo inter se pueden realizar en la partición de 2Nx2N, 2NxN, Nx2N o NxN. También, el modo de omisión se puede realizar solo en la partición de 2Nx2N. La codificación se realiza independientemente en una unidad de predicción en una unidad de codificación, seleccionando por esa razón un modo de predicción que tiene un error de codificación más pequeño.
El aparato de codificación de video 100 también puede realizar la transformación en los datos de imagen en una unidad de codificación con base no únicamente en la unidad de codificación para codificar los datos de imagen, sino también con base en una unidad de datos que es diferente de la unidad de codificación. Con el propósito de realizar la transformación en la unidad de codificación, la transformación se puede realizar con base en una unidad de datos que tiene un tamaño más pequeño que o igual a la unidad de codificación. Por ejemplo, la unidad de datos para la transformación puede incluir una unidad de transformación para un modo intra y una unidad de transformación para un modo ínter.
De manera similar a la unidad de codificación, la unidad de transformación en la unidad de codificación se puede dividir recursivamente en regiones de dimensiones más pequeñas. De esta manera, los datos residuales en la unidad de codificación se pueden dividir de acuerdo con la unidad de transformación que tiene la estructura arborescente de acuerdo con profundidades de transformación.
Una profundidad de transformación que indica el número de veces que se realiza la división para alcanzar la unidad de transformación mediante la división de la altura y la anchura de la unidad de codificación también se puede establecer en la unidad de transformación. Por ejemplo, en una unidad de codificación actual de 2Nx2N, una profundidad de transformación puede ser 0 cuando el tamaño de una unidad de transformación también es 2Nx2N, puede ser 1 cuando el tamaño de una unidad de transformación es NxN y puede ser 2 cuando el tamaño de una unidad de transformación es N/2xN/2. En otras palabras, la unidad de transformación que tiene la estructura arborescente se puede establecer de acuerdo con las profundidades de transformación.
La información de codificación de acuerdo con unidades de codificación que corresponden a una profundidad codificada requiere no únicamente información acerca de la profundidad codificada, sino también información relacionada con una codificación de predicción y una transformación. Por consiguiente, el determinador de unidades de codificación 120 no solo determina una profundidad codificada que tiene un error de codificación más pequeño, sino que también determina un tipo de partición en una unidad de predicción, un modo de predicción de acuerdo con unidades de predicción y un tamaño de una unidad de transformación para la transformación.
Las unidades de codificación de acuerdo con una estructura arborescente en una unidad de codificación máxima y un método para determinar una unidad de predicción/partición y una unidad de transformación, de acuerdo con modalidades de la presente invención, se describirán en detalle posteriormente con referencia a las FIGURAS 7 hasta 19.
El determinador de unidades de codificación 120 puede medir un error de codificación de unidades de codificación más profundas de acuerdo con profundidades mediante el uso de la Optimización basada en la Tasa de Distorsión con base en multiplicadores de Lagrange.
La unidad de salida 130 envía los datos de imagen de la unidad de codificación máxima, los cuales se codifican con base en por lo menos la profundidad codificada que es determinada por el determinador de unidades de la codificación 120 e información acerca del modo de codificación de acuerdo con la profundidad codificada, en corrientes de bits.
Los datos de imagen codificados se pueden obtener al codificar datos residuales de una imagen.
La información acerca del modo de codificación de acuerdo con la profundidad codificada puede incluir información acerca de la profundidad codificada, el tipo de partición en la unidad de predicción, el modo de predicción y el tamaño de la unidad de transformación.
La información acerca de la profundidad codificada se puede definir mediante el uso de información de división de acuerdo con profundidades, la cual indica si la codificación se realiza en unidades de codificación de una profundidad más baja en lugar de una profundidad actual. Si la profundidad actual de la unidad de codificación actual es la profundidad codificada, los datos de imagen en la unidad de codificación actual se codifican y se envían, y de esta manera la información de división se puede definir para no dividir la unidad de codificación actual a una profundidad más baja. Alternativamente, si la profundidad actual de la unidad de codificación actual no es la profundidad codificada, la codificación se realiza en la unidad de codificación de la profundidad más baja y de esta manera la información de división se puede definir para dividir la unidad de codificación actual para obtener las unidades de codificación de la profundidad más baja.
Si la profundidad actual no es la profundidad codificada, la codificación se realiza en la unidad de codificación que se divide en la unidad de codificación de la profundidad más baja. Puesto que por lo menos una unidad de codificación de la profundidad más baja existe en una unidad de codificación de la profundidad actual, la codificación se realiza repetidamente en cada unidad de codificación de la profundidad más baja y de esta manera la codificación se puede realizar recursivamente para las unidades de codificación que tienen la misma profundidad.
Puesto que las unidades de codificación que tienen una estructura arborescente se determinan para una unidad de codificación máxima y la información acerca de por lo menos el modo de codificación se determina para una unidad de codificación de una profundidad codificada, la información acerca de por lo menos un modo de codificación se puede determinar para una unidad de codificación máxima. También, una profundidad codificada de los datos de imagen de la unidad de codificación máxima puede ser diferente de acuerdo con ubicaciones puesto que los datos de imagen se dividen jerárquicamente de acuerdo con profundidades y de esta manera la información acerca de la profundidad codificada y el modo de codificación se pueden establecer para los datos de imagen .
Por consiguiente, la unidad de salida 130 puede asignar información de codificación acerca de una profundidad codificada, correspondiente y un modo de codificación a por lo menos una de la unidad de codificación, la unidad de predicción y una unidad mínima incluida en la unidad de codificación máxima.
La unidad mínima de acuerdo con una modalidad de la presente invención es una unidad de datos rectangular que se obtiene al dividir la unidad de codificación mínima constituyendo la profundidad más baja por 4. Alternativamente, la unidad mínima puede ser una unidad de datos rectangular, máxima que se puede incluir en todas las unidades de codificación, unidades de predicción, unidades de partición y unidades de transformación incluidas en la unidad de codificación máxima.
Por ejemplo, la información de codificación enviada a través de la unidad de salida 130 se puede clasificar en información de codificación de acuerdo con unidades de codificación e información de codificación de acuerdo con unidades de predicción. La información de codificación de acuerdo con las unidades de codificación puede incluir la información acerca del modo de predicción y acerca del tamaño de las particiones. La información de codificación de acuerdo con las unidades de predicción puede incluir información acerca de una dirección estimada de un modo inter, acerca de un índice de imagen de referencia del modo inter, acerca de un vector de movimiento, acerca de un componente croma de un modo intra y acerca de un método de interpolación del modo intra. También, la información acerca del tamaño máximo de la unidad de codificación definido de acuerdo con imágenes, cortes o grupos de imágenes (GOPs, por sus siglas en inglés) y la información acerca de la profundidad máxima se pueden insertar en un conjunto de parámetros de secuencia (SPS, por sus siglas en inglés) o un conjunto de parámetros de imagen (PPS, por sus siglas en inglés) .
También, la información acerca del tamaño máximo de la unidad de transformación permitido para el video actual y la información acerca del tamaño mínimo de la unidad de transformación se pueden enviar por vía de un encabezado de una corriente de bits, un SPS o un PPS. La unidad de salida 130 puede codificar y enviar información de referencia, información de predicción de dirección individual, información de tipo de corte que incluye un cuarto tipo de corte, etcétera relacionada con la predicción descrita anteriormente con referencia a las FIGURAS 1 a 6.
En el aparato de codificación de video 100, la unidad de codificación más profunda puede ser una unidad de codificación obtenida al dividir una altura o anchura de una unidad de codificación de una profundidad más alta, la cual está una capa arriba, por dos. En otras palabras, cuando el tamaño de la unidad de codificación de la profundidad actual es 2Nx2N, el tamaño de la unidad de codificación de la profundidad más baja es Nx . También, la unidad de codificación de la profundidad actual que tiene el tamaño de 2Nx2N puede incluir a lo sumo 4 unidades de codificación de la profundidad más baja.
Por consiguiente, el aparato de codificación de video 100 puede formar las unidades de codificación que tienen la estructura arborescente al determinar unidades de codificación que tienen una forma óptima y un tamaño óptimo para cada unidad de codificación máxima, con base en el tamaño de la unidad de codificación máxima y la profundidad máxima determinada considerando características de la imagen actual. También, puesto que la codificación se puede realizar en cada unidad de codificación máxima mediante el uso de cualquiera de varios modos de predicción y transformaciones, un modo de codificación óptimo se puede determinar considerando características de la unidad de codificación de diversos tamaños de imágenes.
De esta manera, si una imagen que tiene alta resolución o una gran cantidad de datos se codifica en un macrobloque convencional, un número de macrobloques por imagen incrementa excesivamente. Por consiguiente, un número de piezas de información comprimida generadas para cada macrobloque incrementa y de esta manera es difícil transmitir la información comprimida y la eficiencia de compresión de datos disminuye. Sin embargo, mediante el uso del aparato de codificación de video 100, la eficiencia de compresión de imágenes se puede incrementar puesto que una unidad de codificación se ajusta mientras se consideran las características de una imagen mientras se incrementa un tamaño máximo de una unidad de codificación mientras se considera un tamaño de la imagen.
El aparato de codificación de video 100 de la FIGURA 7 puede realizar operaciones del aparato de codificación de video 10 descrito con referencia a la FIGURA 1.
El determinador de unidades de codificación 120 puede realizar operaciones del codificador de imágenes 12 del aparato de codificación de video 10. El determinador de unidades de codificación 120 puede determinar una unidad de predicción para la intra-predicción de acuerdo con unidades de codificación que tienen una estructura arborescente para cada unidad de codificación máxima, realizar la intra-predicción en cada unidad de predicción, determinar una unidad de transformación para la transformación y realizar la transformación en cada unidad de transformación.
La unidad de salida 130 puede realizar operaciones de una unidad de codificación de símbolos 14 y una unidad de salida de corriente de bits 16 del aparato de codificación de video 10. Se generan símbolos para varias unidades de datos, tal como una imagen, corte, unidad de codificación máxima, unidad de codificación, unidad de predicción y unidad de transformación, y cada uno de los símbolos se clasifica en una región de prefijo y una región de sufijo de acuerdo con un valor umbral determinado con base en el tamaño de la unidad de datos correspondiente. La unidad de salida 130 puede generar una secuencia de bits de prefijo y una secuencia de bits de sufijo mediante el uso de un método de binarización determinado para cada una de la región de prefijo y la región de sufijo del símbolo. Cualquiera de una binarización general, una binarización unaria, una binarización unaria truncada, una binarización de Golomb exponencial y una binarización de longitud fija se selecciona para binarizar la región de prefijo y la región de sufijo, generando de ese modo la secuencia de bits de prefijo y la secuencia de bits de sufijo.
La unidad de salida 130 puede realizar la codificación de símbolos mediante la realización de una codificación aritmética determinada para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo. La unidad de salida 130 puede realizar la codificación de símbolo al realizar una codificación aritmética para realizar el modelado de contexto de acuerdo con ubicaciones de bits en la secuencia de bits de prefijo y al realizar una codificación aritmética para omitir el modelado de contexto en la secuencia de bits de sufijo en un modo de derivación.
Por ejemplo, cuando la información de posición del coeficiente final de un coeficiente de transformación de la unidad de transformación se codifica, el valor umbral para clasificar la secuencia de bits de prefijo y la secuencia de bits de sufijo se puede determinar de acuerdo con el tamaño (anchura o altura) de la unidad de transformación. Alternativamente, el valor umbral se puede determinar de acuerdo con tamaños de un corte que incluye la unidad de transformación actual, una unidad de codificación máxima, una unidad de codificación, una unidad de predicción, etcétera.
Alternativamente, se puede determinar por medio de un índice máximo de un modo de intra-predicción cuantos bits de una secuencia de bits de símbolo se codifican en una codificación aritmética como la secuencia de bits de prefijo a través del modelado de contexto en el modo de intra- predicción y cuantos bits de la secuencia de bits de símbolo se codifican en la codificación aritmética como la secuencia de bits de sufijo en un modo de derivación. Por ejemplo, se puede utilizar un total de 34 modos de intra-predicción para unidades de predicción que tienen tamaños de 8x8, 16x16 y 32x32, se puede utilizar un total de 17 modos de intra-predicción para una unidad de predicción que tiene un tamaño de 4x4, y se puede utilizar un total de modos de intra-predicción de números para una unidad de predicción que tiene un tamaño de 64x64. En este caso, puesto que las unidades de predicción capaces de utilizar el mismo número de modos de intra-predicción se considera que tienen características estadísticas similares, un primer bit de entre las secuencias de bits en el modo de intra-predicción se puede codificar a través del modelado de contexto para la codificación aritmética con respecto a las unidades de predicción que tienen tamaños de 8x8, 16x16 y 32x32. También, todos los bits de entre las secuencias de bits en el modo de intra-predicción se pueden codificar en el modo de derivación para la codificación aritmética con respecto al resto de unidades de predicción, es decir, las unidades de predicción que tienen tamaños de 4x4 y 64x64.
La unidad de salida 130 puede enviar las secuencias de bits generadas a través de la codificación de símbolos en la forma de corrientes de bits.
La FIGURA 8 es un diagrama de bloques de un aparato de decodificación de video 200 con base en una unidad de codificación que tiene una estructura arborescente, de acuerdo con una modalidad de la presente invención.
El aparato de decodificación de video 200 que realiza una predicción de video con base en la unidad de codificación que tiene una estructura arborescente incluye un receptor 210, un extractor de datos de imagen e información de codificación 220 y un decodificador de datos de imagen 230.
Las definiciones de varios términos, tal como una unidad de codificación, profundidad, unidad de predicción, unidad de transformación e información acerca de varios modos de codificación, para varias operaciones del aparato de decodificación de video 200 son idénticas a aquellas descritas con referencia a la FIGURA 7 y el aparato de codificación de video 100.
El receptor 210 recibe y analiza una corriente de bits de un video codificado. El extractor de datos de imagen e información de codificación 220 extrae los datos de imagen codificados para cada unidad de codificación de la corriente de bits analizada, en donde las unidades de codificación tienen una estructura arborescente de acuerdo con cada unidad de codificación máxima y envía los datos de imagen extraídos al decodificador de datos de imagen 230. El extractor de datos de imagen e información de codificación 220 puede extraer información acerca de un tamaño máximo de una unidad de codificación de una imagen actual, de un encabezado acerca de la imagen actual, o un SPS o un PPS .
También, el extractor de datos de imagen e información de codificación 220 extrae información acerca de una profundidad codificada y un modo de codificación para las unidades de codificación que tienen una estructura arborescente de acuerdo con cada unidad de codificación máxima, de la corriente de bits analizada. La información extraída acerca de la profundidad codificada y el modo de codificación se envía al decodificador de datos de imagen 230. En otras palabras, los datos de imagen en una corriente de bits se dividen en la unidad de codificación máxima de modo que el decodificador de datos de imagen 230 decodifica los datos de imagen para cada unidad de codificación máxima.
La información acerca de la profundidad codificada y el modo de codificación de acuerdo con la unidad de codificación máxima se pueden establecer para la información acerca de por lo menos una unidad de codificación que corresponde a la profundidad codificada y la información acerca de un modo de codificación puede incluir información acerca de un tipo de partición de una unidad de codificación correspondiente la cual corresponde a la profundidad codificada, un modo de predicción y un tamaño de una unidad de transformación. También, la información de división de acuerdo con las profundidades se puede extraer como la información acerca de la profundidad codificada.
La información acerca de la profundidad codificada y el modo de codificación de acuerdo con cada unidad de codificación máxima extraída por el extractor de datos de imagen e información de codificación 220 es información acerca de una profundidad codificada y un modo de codificación determinado para generar un error de codificación mínimo cuando un codificador, tal como el aparato de codificación de video 100, realiza repetidamente una codificación para cada unidad de codificación más profunda de acuerdo con profundidades de acuerdo con cada unidad de codificación máxima. Por consiguiente, el aparato de decodificación de video 200 puede restaurar una imagen al decodificar los datos de imagen de acuerdo con una profundidad codificada y un modo de codificación que genera el error de codificación mínimo.
Puesto que la información de codificación acerca de la profundidad codificada y el modo de codificación se pueden asignar a una unidad de datos predeterminada de entre una unidad de codificación correspondiente, una unidad de predicción y una unidad mínima, el extractor de datos de imagen e información de codificación 220 puede extraer la información acerca de la profundidad codificada y el modo de codificación de acuerdo con las unidades de datos predeterminadas. Se puede inferir que las unidades de datos predeterminadas a las cuales se asigna la misma información acerca de la profundidad codificada y el modo de codificación son las unidades de datos incluidas en la misma unidad de codificación máxima.
El decodificador de datos de imagen 230 restaura la imagen actual al decodificar los datos de imagen en cada unidad de codificación máxima con base en la información acerca de la profundidad codificada y el modo de codificación de acuerdo con las unidades de codificación máximas. En otras palabras, el decodificador de datos de imagen 230 puede decodificar los datos de imagen codificados con base en la información extraída acerca del tipo de partición, el modo de predicción y la unidad de transformación para cada unidad de codificación de entre las unidades de codificación que tienen la estructura arborescente incluida en cada unidad de codificación máximas. Un proceso de decodificación puede incluir una predicción que incluye la intra-predicción y la compensación de movimiento, y la transformación inversa.
El decodificador de datos de imagen 230 puede realizar la intra-predicción o compensación de movimiento de acuerdo con una partición y un modo de predicción de cada unidad de codificación, con base en la información acerca del tipo de partición y el modo de predicción de la unidad de predicción de la unidad de codificación de acuerdo con profundidades codificadas.
También, el decodificador de datos de imagen 230 puede realizar la transformación inversa de acuerdo con cada unidad de transformación en la unidad de codificación, con base en la información acerca de la unidad de transformación de acuerdo con las unidades de codificación que tienen una estructura arborescente, con el fin de realizar la transformación inversa de acuerdo con las unidades de codificación máximas. Un valor de pixel de un dominio espacial en la unidad de codificación se puede restaurar a través de la transformación inversa.
El decodificador de datos de imagen 230 puede determinar por lo menos una profundidad codificada de una unidad de codificación máxima actual mediante el uso de información de división de acuerdo con las profundidades. Si la información de división indica que los datos de imagen ya no se dividen en la profundidad actual, la profundidad actual es una profundidad codificada. Por consiguiente, el decodificador de datos de imagen 230 puede decodificar datos codificados de por lo menos una unidad de codificación que corresponde a cada profundidad codificada en la unidad de codificación máxima, actual mediante el uso de la información acerca del tipo de partición de la unidad de predicción, el modo de predicción y el tamaño de la unidad de transformación para cada unidad de codificación que corresponde a la profundidad codificada y envía los datos de imagen de la unidad de codificación máxima, actual.
En otras palabras, las unidades de datos que contienen la información de codificación que incluye la misma información de división se pueden recopilar al observar el conjunto de información de codificación asignado para la unidad de datos predeterminada de entre la unidad de codificación, la unidad de predicción y la unidad mínima, y se puede considerar que las unidades de datos recopiladas son una unidad de datos que es decodificada por el decodificador de datos de imagen 230 en el mismo modo de codificación. La decodificación de la unidad de codificación actual se puede realizar al obtener información acerca del modo de codificación para cada unidad de codificación determinada de esta manera.
También, el aparato de decodificación de video 200 de la FIGURA 8 puede realizar operaciones del aparato de decodificación de video 20 descrito anteriormente con referencia a la FIGURA 2.
El receptor 210 y el extractor de datos de imagen e información de codificación 220 pueden realizar operaciones del analizador 22 y el decodificador de símbolos 24 del aparato de decodificación de video 20. El decodificador de datos de imagen 230 puede realizar operaciones del decodificador de símbolos 24 del aparato de decodificación de video 20.
El receptor 210 recibe una corriente de bits de una imagen y el extractor de datos de imagen e información de codificación 220 analiza símbolos de bloques de imagen de la corriente de bits recibida.
El extractor de datos de imagen e información de codificación 220 puede clasificar un símbolo actual en una secuencia de bits de prefijo y una secuencia de bits de sufijo con base en un valor umbral determinado de acuerdo con el tamaño de un bloque actual. Por ejemplo, cuando la información de posición del coeficiente final del coeficiente de transformación de la unidad de transformación se decodifica, el valor umbral para clasificar la secuencia de bits de prefijo y la secuencia de bits de sufijo se puede determinar de acuerdo con el tamaño (anchura o altura) de la unidad de transformación. Alternativamente, el valor umbral se puede determinar de acuerdo con tamaños del corte que incluye la unidad de transformación actual, la unidad de codificación máxima, la unidad de codificación, la unidad de predicción, etcétera. Alternativamente, se puede determinar por medio del índice máximo del modo de intra-predicción cuantos bits de la secuencia de bits de símbolo se codifican en la codificación aritmética como la secuencia de bits de prefijo a través del modelado de contexto en el modo de intra-predicción y cuantos bits de la secuencia de bits de símbolo se codifican en la codificación aritmética como la secuencia de bits de sufijo en el modo de derivación.
La decodificación aritmética se realiza mediante el uso de un método de decodificación aritmética determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo del símbolo actual. La decodificación aritmética para determinar el modelado de contexto de acuerdo con las posiciones de bits se puede realizar en la secuencia de bits de prefijo y la decodificación aritmética para omitir el modelado de contexto se puede realizar en la secuencia de bits de sufijo mediante el uso del modo de derivación.
Después de la decodificación aritmética, la binarización inversa se realiza de acuerdo con un método de binarización determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo. La región de prefijo y la región de sufijo del símbolo se pueden restaurar al realizar la binarización inversa de acuerdo con el método de binarización determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo .
El decodificador de datos de imagen 230 puede restaurar bloques de imagen al realizar una transformación inversa y una predicción en el bloque actual mediante el uso del símbolo actual restaurado a través de la decodificación aritmética y la binarización inversa.
Consecuentemente, el aparato de decodificación de video 200 puede obtener información acerca de por lo menos una unidad de codificación que genera el error de codificación mínimo cuando la codificación se realiza recursivamente para cada unidad de codificación máxima y puede utilizar la información para decodificar la imagen actual. En otras palabras, las unidades de codificación que tienen la estructura arborescente determinadas que son las unidades de codificación óptimas en cada unidad de codificación máxima se pueden decodificar.
Por consiguiente, incluso si los datos de imagen tienen alta resolución y una gran cantidad de datos, los datos de imagen se pueden decodificar eficientemente y se pueden restaurar mediante el uso de un tamaño de una unidad de codificación y un modo de codificación, los cuales se determinan de manera adaptable de acuerdo con características de los datos de imagen, mediante el uso de información acerca de un modo de codificación óptimo recibido de un codificador.
La FIGURA 9 es un diagrama conceptual de unidades de codificación de acuerdo con una modalidad de la presente invención .
Un tamaño de una unidad de codificación se puede expresar en anchura y altura y puede ser 64x64, 32x32, 16x16 y 8x8. Una unidad de codificación de 64x64 se puede dividir en particiones de 64x64, 64x32, 32x64 o 32x32, una unidad de codificación de 32x32 se puede dividir en particiones de 32x32, 32x16, 16x32 o 16x16, una unidad de codificación de 16x16 se puede dividir en particiones de 16x16, 16x8, 8x16 o 8x8 y una unidad de codificación de 8x8 se pueden dividir en particiones de 8x8, 8x4, 4x8 o 4x4.
En los datos de video 310, una resolución es 1920x1080, un tamaño máximo de una unidad de codificación es 64 y una profundidad máxima es 2. En los datos de video 320, una resolución es 1920x1080, un tamaño máximo de una unidad de codificación es 64 y una profundidad máxima es 3. En los datos de video 330, una resolución es 352x288, un tamaño máximo de una unidad de codificación es 16 y una profundidad máxima es 1. La profundidad máxima mostrada en la FIGURA 9 indica el número total de divisiones de una unidad de codificación máxima a una unidad de decodificación mínima.
Si una resolución es alta o una cantidad de datos es grande, un tamaño máximo de una unidad de codificación puede ser grande con el fin de no solo incrementar la eficiencia de codificación, sino también de reflejar de manera exacta las características de una imagen. Por consiguiente, el tamaño máximo de la unidad de codificación de los datos de video 310 y 320 que tienen la resolución más alta que los datos de video 330 puede ser 64.
Puesto que la profundidad máxima de los datos de video 310 es 2, las unidades de codificación 315 de los datos de video 310 pueden incluir una unidad de codificación máxima que tiene un tamaño de eje largo de 64 y unidades de codificación que tienen tamaños de eje largo de 32 y 16 puesto que las profundidades se aumentan a dos capas al dividir dos veces la unidad de codificación máxima. Mientras tanto, puesto que la profundidad máxima de los datos de video 330 es 1, las unidades de codificación 335 de los datos de video 330 pueden incluir una unidad de codificación máxima que tiene un tamaño de eje largo de 16 y unidades de codificación que tienen un tamaño de eje largo de 8 puesto que las profundidades se aumentan a una capa al dividir una vez la unidad de codificación máxima.
Puesto que la profundidad máxima de los datos de video 320 es 3, las unidades de codificación 325 de los datos de video 320 pueden incluir una unidad de codificación máxima que tiene un tamaño de eje largo de 64 y unidades de codificación que tienen tamaños de eje largo de 32, 16 y 8 puesto que las profundidades se aumentan a 3 capas al dividir tres veces la unidad de codificación máxima. Conforme la profundidad aumenta, la información detallada se puede expresar de manera precisa.
La FIGURA 10 es un diagrama de bloques de un codificador de imágenes 400 basado en unidades de codificación, de acuerdo con una modalidad de la presente invención.
El codificador de imágenes 400 realiza operaciones del determinador de unidades de codificación 120 del aparato de codificación de video 100 para codificar datos de imagen. En otras palabras, un intra-predictor 410 realiza una intra-predicción en unidades de codificación en un modo intra, de entre una trama actual 405 y un estimador de movimiento 420 y un compensador de movimiento 425 realiza una inter-estimación y una compensación de movimiento en unidades de codificación en un modo Ínter de entre la trama actual 405 mediante el uso de la trama actual 405 y una trama de referencia 495.
La salida de datos del intra-predictor 410, el estimador de movimiento 420 y el compensador de movimiento 425 se envía como un coeficiente de transformación cuantificado a través de un transformador 430 y un cuantificador 440. El coeficiente de transformación cuantificado se restaura como datos en un dominio espacial a través de un cuantificador inverso 460 y un transformador inverso 470 y los datos restaurados en el dominio espacial se envían como la trama de referencia 495 después de ser posprocesados a través de una unidad de desbloqueo 480 y una unidad de filtración de bucle 490. El coeficiente de transformación cuantificado se puede enviar como una corriente de bits 455 a través de un codificador entrópico 450.
Con el propósito de que el codificador de imágenes 400 sea aplicado al aparato de codificación de video 100, todos los elementos del codificador de imágenes 400, es decir, el intra-predictor 410, estimador de movimiento 420, compensador de movimiento 425, transformador 430, cuantificador 440, codificador entrópico 450, cuantificador inverso 460, transformador inverso 470, unidad de desbloqueo 480 y unidad de filtración de bucle 490 realizan operaciones con base en cada unidad de codificación de entre las unidades de codificación que tienen una estructura arborescente mientras se considera la profundidad máxima de cada unidad de codificación máxima.
Específicamente, el intra-predictor 410, el estimador de movimiento 420 y el compensador de movimiento 425 determinan particiones y un modo de predicción de cada unidad de codificación de entre las unidades de codificación que tienen una estructura arborescente mientras se considera el tamaño máximo y la profundidad máxima de una unidad de codificación máxima, actual y el transformador 430 determina el tamaño de la unidad de transformación en cada unidad de codificación de entre las unidades de codificación que tienen una estructura arborescente.
En particular, el codificador entrópico 450 puede realizar la codificación de símbolos en la región de prefijo y la región de sufijo al clasificar un símbolo en la región de prefijo y la región de sufijo de acuerdo con un valor umbral, predeterminado y utilizar diferentes métodos de binarización y codificación aritmética con respecto a la región de prefijo y la región de sufijo.
El valor umbral para clasificar el símbolo en la región de prefijo y la región de sufijo se pueden determinar con base en tamaños de unidades de datos del símbolo, es decir, un corte, una unidad de codificación máxima, una unidad de codificación, una unidad de predicción, una unidad de transformación, etcétera.
La FIGURA 11 es un diagrama de bloques de un decodificador de imágenes 500 con base en unidades de codificación, de acuerdo con una modalidad de la presente invención.
Un analizador 510 analiza los datos de imagen codificados que son decodificados y la información acerca de la codificación requerida para la decodificación de una corriente de bits 505. Los datos de imagen codificados se envían como datos cuantificados de manera inversa a través de un decodificador entrópico 520 y un cuantificador inverso 530, y los datos cuantificados de manera inversa se restauran a datos de imagen en un dominio espacial a través de un transformador inverso 540.
Un intra-predictor 550 realiza una intra-predicción en unidades de codificación en un modo intra con respecto a los datos de imagen en el dominio espacial y un compensador de movimiento 560 realiza una compensación de movimiento en unidades de codificación en un modo inter mediante el uso de una trama de referencia 585.
Los datos de imagen en el dominio espacial, los cuales pasaron a través del intra-predictor 550 y el compensador de movimiento 560, se pueden enviar como una trama restaurada 595 después de ser pos-procesados a través de una unidad de desbloqueo 570 y una unidad de filtración de bucle 580. También, los datos de imagen, los cuales son posprocesados a través de la unidad de desbloqueo 570 y la unidad de filtración de bucle 580, se pueden enviar como la trama de referencia 585.
Con el propósito de decodificar los datos de imagen en el decodificador de datos de imagen 230 del aparato de decodificación de video 200, el decodificador de imágenes 500 puede realizar operaciones que son realizadas después del analizador 510.
Con el propósito de que el decodificador de imágenes 500 sea aplicado en el aparato de decodificación de video 200, todos los elementos del decodificador de imágenes 500, es decir el analizador 510, decodificador entrópico 520, cuantificador inverso 530, transformador inverso 540, intra-predictor 550, compensador de movimiento 560, unidad de desbloqueo 570 y unidad de filtración de bucle 580 realizan operaciones con base en unidades de codificación que tienen una estructura arborescente para cada unidad de codificación máxima .
Específicamente, el intra-predictor 550 y el compensador de movimiento 560 realizan operaciones con base en particiones y un modo de predicción para cada una de las unidades de codificación que tienen una estructura arborescente y el transformador inverso 540 realiza operaciones con base en el tamaño de una unidad de transformación para cada unidad de codificación.
En particular, el decodificador entrópico 520 puede realizar la decodificación de símbolos para cada una de una secuencia de bits de prefijo y una secuencia de bits de sufijo al clasificar la secuencia de bits de símbolo analizada en la secuencia de bits de prefijo y la secuencia de bits de sufijo de acuerdo con un valor umbral, predeterminado y utilizar diferentes métodos de binarización y decodificación aritmética con respecto a la secuencia de bits de prefijo y la secuencia de bits de sufijo.
El valor umbral para clasificar la secuencia de bits de símbolo en la secuencia de bits de prefijo y la secuencia de bits de sufijo se puede determinar con base en tamaños de unidades de datos del símbolo, es decir, un corte, una unidad de codificación máxima, una unidad de codificación, una unidad de predicción, una unidad de transformación, etcétera.
La FIGURA 12 es un diagrama que muestra unidades de codificación más profundas de acuerdo con profundidades y particiones, de acuerdo con una modalidad de la presente invención .
El aparato de codificación de video 100 y el aparato de decodificación de video 200 utilizan unidades de codificación jerárquicas con el fin de considerar características de una imagen. Una altura máxima, una anchura máxima y una profundidad máxima de las unidades de codificación se pueden determinar de manera adaptable de acuerdo con las características de la imagen o pueden ser establecidas de manera diferente por un usuario. Los tamaños de unidades de codificación más profundas de acuerdo con las profundidades se pueden determinar de acuerdo con el tamaño máximo, predeterminado de la unidad de codificación.
En una estructura jerárquica 600 de las unidades de codificación, de acuerdo con una modalidad de la presente invención, la altura máxima y la anchura máxima de las unidades de codificación son cada una 64 y la profundidad máxima es 4. En este documento, la profundidad máxima indica que un número total de veces de división se realiza desde la unidad de codificación máxima hasta la unidad de codificación mínima. Puesto que una profundidad aumenta a lo largo de un eje vertical de la estructura jerárquica 600, una altura y una anchura de la unidad de codificación más profunda se dividen cada una. También, una unidad de predicción y particiones, las cuales son bases para la codificación de predicción de cada unidad de codificación más profunda, se muestran a lo largo de un eje horizontal de la estructura jerárquica 600.
En otras palabras, una unidad de codificación 610 es una unidad de codificación máxima en la estructura jerárquica 600, en donde una profundidad de 0 y un tamaño, es decir una altura por anchura, es 64x64. La profundidad aumenta a lo largo del eje vertical y existe una unidad de codificación 620 que tiene un tamaño de 32x32 y una profundidad de 1, una unidad de codificación 630 que tiene un tamaño de 16x16 y una profundidad de 2, una unidad de codificación 640 que tiene un tamaño de 8x8 y una profundidad de 3 y una unidad de codificación 650 que tiene un tamaño de 4x4 y una profundidad de 4. La unidad de codificación 650 que tiene el tamaño de 4x4 y la profundidad de 4 es una unidad de codificación mínima.
La unidad de predicción y las particiones de una unidad de codificación se disponen a lo largo del eje horizontal de acuerdo con cada profundidad. En otras palabras, si la unidad de codificación 610 que tiene el tamaño de 64x64 y la profundidad de 0 es una unidad de predicción, la unidad de predicción se puede dividir en particiones incluidas en la unidad de codificación 610, es decir una partición 610 que tiene un tamaño de 64x64, particiones 612 que tienen el tamaño de 64x32, particiones 614 que tienen el tamaño de 32x64 o particiones 616 que tienen el tamaño de 32x32.
Similarmente , una unidad de predicción de la unidad de codificación 620 que tiene el tamaño de 32x32 y la profundidad de 1 se puede dividir en particiones incluidas en la unidad de codificación 620, es decir una partición 620 que tiene un tamaño de 32x32, particiones 622 que tienen un tamaño de 32x16, particiones 624 que tienen un tamaño de 16x32 y particiones 626 que tienen un tamaño de 16x16.
Similarmente, una unidad de predicción de la unidad de codificación 630 que tiene el tamaño de 16x16 y la profundidad de 2 se puede dividir en particiones incluidas en la unidad de codificación 630, es decir una partición que tiene un tamaño de 16x16 incluida en la unidad de codificación 630, particiones 632 que tienen un tamaño de 16x8, particiones 634 que tienen un tamaño de 8x16 y particiones 636 que tienen un tamaño de 8x8.
Similarmente, una unidad de predicción de la unidad de codificación 640 que tiene el tamaño de 8x8 y la profundidad de 3 se puede dividir en particiones incluidas en la unidad de codificación 640, es decir una partición que tiene un tamaño de 8x8 incluida en la unidad de codificación 640, particiones 642 que tienen un tamaño de 8x4, particiones 644 que tienen un tamaño de 4x8 y particiones 646 que tienen un tamaño de 4x4.
La unidad de codificación 650 que tiene el tamaño de 4x4 y la profundidad de 4 es la unidad de codificación mínima y una unidad de codificación de la profundidad más baja. Una unidad de predicción de la unidad de codificación 650 se asigna únicamente a una partición que tiene un tamaño de 4x4.
Con el propósito de determinar por lo menos la profundidad codificada de las unidades de codificación que constituyen la unidad de codificación máxima 610, el determinador de unidades de codificación 120 del aparato de codificación de video 100 realiza una codificación para unidades de codificación que corresponden a cada profundidad incluida en la unidad de codificación máxima 610.
Un número de unidades de codificación más profundas de acuerdo con las profundidades que incluyen datos en el mismo intervalo y el mismo tamaño incrementa conforme la profundidad aumenta. Por ejemplo, cuatro unidades de codificación que corresponden a una profundidad de 2 se requieren para cubrir datos que están incluidos en una unidad de codificación que corresponde a una profundidad de 1. Por consiguiente, con el propósito de comparar los resultados de codificación de los mismos datos de acuerdo con las profundidades, la unidad de codificación que corresponde a la profundidad de 1 y cuatro unidades de codificación que corresponden a la profundidad de 2 se codifican cada una.
Con el propósito de realizar una codificación para una profundidad actual de entre las profundidades, se puede seleccionar un error de codificación más pequeño para la profundidad actual al realizar una codificación para cada unidad de predicción en las unidades de codificación que corresponden a la profundidad actual, a lo largo del eje horizontal de la estructura jerárquica 600. Alternativamente, el error de codificación mínimo se puede buscar al comparar los errores de codificación más pequeños de acuerdo con las profundidades y realizar una codificación para cada profundidad conforme la profundidad aumenta a lo largo del eje vertical de la estructura jerárquica 600. Una profundidad y una partición que tienen el error de codificación mínimo en la unidad de codificación 610 se pueden seleccionar como la profundidad codificada y un tipo de partición de la unidad de codificación 610.
La FIGURA 13 es un diagrama para describir una relación entre una unidad de codificación y unidades de transformación, de acuerdo con una modalidad de la presente invención.
El aparato de codificación de video 100 o 200 codifica o decodifica una imagen de acuerdo con unidades de codificación que tienen tamaños más pequeños que o iguales a una unidad de codificación máxima para cada unidad de codificación máxima. Los tamaños de las unidades de transformación para la transformación durante la codificación se pueden seleccionar con base en unidades de datos que no son más grandes que una unidad de codificación correspondiente .
Por ejemplo, en el aparato de codificación de video 100 o 200, si un tamaño de la unidad de codificación 710 es 64x64, la transformación se puede realizar mediante el uso de las unidades de transformación 720 que tienen un tamaño de 32x32.
También, los datos de la unidad de codificación 710 que tiene el tamaño de 64x64 se pueden codificar al realizar la transformación en cada una de las unidades de transformación que tienen el tamaño de 32x32, 16x16, 8x8 y 4x4, los cuales son más pequeños que 64x64, y luego se puede seleccionar una unidad de transformación que tiene el error de codificación más pequeño.
La FIGURA 14 es un diagrama para describir información de codificación de unidades de codificación que corresponden a una profundidad codificada, de acuerdo con una modalidad de la presente invención.
La unidad de salida 130 del aparato de codificación de video 100 puede codificar y transmitir información 800 acerca de un tipo de partición, información 810 acerca de un modo de predicción e información 820 acerca de un tamaño de una unidad de transformación para cada unidad de codificación que corresponde a una profundidad codificada, como información acerca de un modo de codificación.
La información 800 indica información acerca de una forma de una partición obtenida al dividir una unidad de predicción de una unidad de codificación actual, en donde la partición es una unidad de datos para la codificación de predicción de la unidad de codificación actual. Por ejemplo, una unidad de codificación actual CU_0 que tiene un tamaño de 2Nx2N se puede dividir en cualquiera de una partición 802 que tiene un tamaño de 2Nx2N, una partición 804 que tiene un tamaño de 2NxN, una partición 806 que tiene un tamaño de Mx2N y una partición 808 que tiene un tamaño de NxN. En este documento, la información 800 acerca de un tipo de partición se establece para indicar una de la partición 804 que tiene un tamaño de 2NxN, la partición 806 que tiene un tamaño de Nx2N y la partición 808 que tiene un tamaño de NxN.
La información 810 indica un modo de predicción de cada partición. Por ejemplo, la información 810 puede indicar un modo de codificación de predicción realizada en una partición indicada por la información 800, es decir, un modo intra 812, un modo inter 814 o un modo de omisión 816.
La información 820 indica una unidad de transformación que se basa en cuando se realiza la transformación en la unidad de codificación actual. Por ejemplo, la unidad de transformación puede ser una primera unidad de intra-transformación 822, una segunda unidad de intra-transformación 824, una primera unidad de inter-transformación 826 o una segunda unidad de inter-transformación 828.
El extractor de datos de imagen e información de codificación 220 del aparato de decodificación de video 200 puede extraer y utilizar la información 800, 810 y 820 para la decodificación, de acuerdo con cada unidad de codificación más profunda .
La FIGURA 15 es un diagrama que muestra unidades de codificación más profundas de acuerdo con las profundidades, de acuerdo con una modalidad de la presente invención.
La información de división se puede utilizar para indicar un cambio de una profundidad. La información de división indica si una unidad de codificación de una profundidad actual se divide en unidades de codificación de una profundidad más baja.
Una unidad de predicción 910 para la codificación de predicción de una unidad de codificación 900 que tiene una profundidad de 0 y un tamaño de 2N_0x2N_0 puede incluir particiones de un tipo de partición 912 que tiene un tamaño de 2N_0x2N__0, un tipo de partición 914 que tiene un tamaño de 2N_0xN_0, un tipo de partición 916 que tiene un tamaño de N_0x2N_0 y un tipo de partición 918 tiene un tamaño de M_0xN_0. La FIGURA 15 solo ilustra los tipos de partición 912 hasta 918 los cuales se obtienen al dividir simétricamente la unidad de predicción 910, pero el tipo de partición no está limitado a los mismos, y las particiones de la unidad de predicción 910 pueden incluir particiones asimétricas, particiones que tienen una forma predeterminada y particiones que tienen una forma geométrica.
La codificación de predicción se realiza repetidamente en una partición que tiene un tamaño de 2N_0x2N_0, dos particiones que tienen un tamaño de 2N_0xN_0, dos particiones que tienen un tamaño de N_0x2N_0 y cuatro particiones que tienen un tamaño de N_0xN_0 , de acuerdo con cada tipo de partición. La codificación de predicción en un modo intra y un modo ínter se puede realizar en las particiones que tienen los tamaños de 2N__0x2N_0 , N_0x2N_0, 2N_0xN_0 y N_0 N_0. La codificación de predicción en un modo de omisión se realiza únicamente en la partición que tiene el tamaño de 2N_0x2N_0.
Los errores de codificación que incluyen la codificación de predicción en los tipos de partición 912 hasta 918 se comparan y el error de codificación más pequeño se determina entre los tipos de partición. Si un error de codificación es el más pequeño en uno de los tipos de partición 912 hasta 916, la unidad de predicción 910 no puede ser dividida en una profundidad más baja.
Si el error de codificación es el más pequeño en el tipo de partición 918, una profundidad se cambia de 0 a 1 para dividir el tipo de partición 918 en la operación 920 y la codificación se realiza repetidamente en las unidades de codificación 930 que tienen una profundidad de 2 y un tamaño de N_0xN_0 para buscar un error de codificación mínimo.
Una unidad de predicción 940 para la codificación de predicción de la unidad de codificación 930 que tiene una profundidad de 1 y un tamaño de 2N_lx2N_l (=N_0xN_0) puede incluir particiones de un tipo de partición 942 que tiene un tamaño de 2N_lx2N_l, un tipo de partición 944 que tiene un tamaño de 2N_lxN_l, un tipo de partición 946 que tiene un tamaño de N_lx2N_l y un tipo de partición 948 que tiene un tamaño de N_lxN_l .
Si un error de codificación es el más pequeño en el tipo de partición 948, una profundidad se cambia de 1 a 2 para dividir el tipo de partición 948 en la operación 950 y la codificación se realiza repetidamente en las unidades de codificación 960, las cuales tienen una profundidad de 2 y un tamaño de N_2xN_2 para buscar un error de codificación mínimo .
Cuando una profundidad máxima es d, la unidad de codificación de acuerdo con cada profundidad se puede realizar hasta cuando una profundidad llega a ser d-1, y la información de división se puede codificar hasta cuando una profundidad es uno de 0 a d-2. En otras palabras, cuando la codificación se realiza hasta cuando la profundidad es d-1 después de que una unidad de codificación que corresponde a una profundidad de d-2 se divide en la operación 970, una unidad de predicción 990 para la codificación de predicción de una unidad de codificación 980 que tiene una profundidad de d-1 y un tamaño de 2N_ (d- 1 ) x2N_ (d- 1) puede incluir particiones de un tipo de partición 992 que tiene un tamaño de 2N_ (d-1) x2N_ (d-1) , un tipo de partición 994 que tiene un tamaño de 2N_ (d-1) xN_ (d- 1 ) , un tipo de partición 996 que tiene un tamaño de N_ (d- 1) x2N_ (d-1 ) y un tipo de partición 998 que tiene un tamaño de N_(d-l)xN_(d-l) .
La codificación de predicción se puede realizar repetidamente en una partición que tiene un tamaño de 2N_(d-1) x2N_ (d- 1) , dos particiones que tienen un tamaño de 2N_(d-l)x _(d-l), dos particiones que tienen un tamaño de N_(d-l)x2N_(d-l), cuatro particiones que tienen un tamaño de N_(d-l)xN_(d-l) de entre los tipos de partición 992 hasta 998 para buscar un tipo de partición que tiene un error de codificación mínimo.
Incluso cuando el tipo de partición 998 tiene el error de codificación mínimo, puesto que una profundidad máxima es d, una unidad de codificación CU_(d-l) que tiene una profundidad de d-1 ya no se divide a una profundidad más baja y una profundidad codificada para las unidades de codificación que constituyen una unidad de codificación máxima actual 900 se determina que es d-1 y un tipo de partición de la unidad de codificación máxima actual 900 se puede determinar que es N_ (d- 1) N_ (d-1 ) . También, puesto que la profundidad máxima es d y una unidad de codificación mínima 980 que tiene la profundidad más baja de d-1 ya no se divide a una profundidad más baja, la información de división para la unidad de codificación mínima 980 no se establece.
Una unidad de datos 999 puede ser una "unidad mínima" para la unidad de codificación máxima actual. Una unidad mínima de acuerdo con una modalidad de la presente invención puede ser una unidad de datos rectangular que se obtiene al dividir una unidad de codificación mínima 980 por 4. Al realizar repetidamente la codificación, el aparato de codificación de video 100 puede seleccionar una profundidad que tiene el error de codificación más pequeño al comparar errores de codificación de acuerdo con profundidades de la unidad de codificación 900 para determinar una profundidad codificada y establecer un tipo de partición correspondiente y un modo de predicción como un modo de codificación de la profundidad codificada.
Como tales, los errores de codificación mínimos de acuerdo con las profundidades se comparan en todas las profundidades de 1 hasta d y una profundidad que tiene el error de codificación más pequeño se puede determinar como una profundidad codificada. La profundidad codificada, el tipo de partición de la unidad de predicción y el modo de predicción se puede codificar y transmitir como información acerca de un modo de codificación. También, puesto que una unidad de codificación se divide de una profundidad de 0 a una profundidad codificada, solo la información de división de la profundidad codificada se establece a 0 y la información de división de las profundidades excluyendo la profundidad codificada se establece a 1.
El extractor de datos de imagen e información de codificación 220 del aparato de decodificación de video 200 puede extraer y utilizar la información acerca de la profundidad codificada y la unidad de predicción de la unidad de codificación 900 para decodificar la partición 912. El aparato de decodificación de video 200 puede determinar una profundidad, en la cual la información de división es 0, como una profundidad codificada mediante el uso de información de división de acuerdo con profundidades y puede utilizar información acerca del modo de codificación de la profundidad correspondiente para la decodificación.
Las FIGURAS 16 hasta 18 son diagramas para describir una relación entre unidades de codificación, unidades de predicción y unidades de transformación, de acuerdo con una modalidad de la presente invención.
Las unidades de codificación 1010 son unidades de codificación que tienen una estructura arborescente, que corresponde a profundidades codificadas que son determinadas por el aparato de codificación de video 100, en una unidad de codificación máxima. Las unidades de predicción 1060 son particiones de unidades de predicción de cada una de las unidades de codificación 1010 y las unidades de transformación 1070 son unidades de transformación de cada una de las unidades de codificación 1010.
Cuando una profundidad de una unidad de codificación máxima es 0 en las unidades de codificación 1010, las profundidades de las unidades de codificación 1012 y 1054 son 1, las profundidades de las unidades de codificación 1014, 1016, 1018, 1028, 1050 y 1052 son 2, las profundidades de las unidades de codificación 1020, 1022, 1024, 1026, 1030, 1032 y 1048 son 3 y las profundidades de las unidades de codificación 1040, 1042, 1044 y 1046 son 4.
En las unidades de predicción 1060, algunas unidades de codificación 1014, 1016, 1022, 1032, 1048, 1050, 1052 y 1054 se obtienen al dividir las unidades de codificación en las unidades de codificación 1010. En otras palabras, los tipos de partición en las unidades de codificación 1014, 1022, 1050 y 1054 tienen un tamaño de 2NxN, los tipos de partición en las unidades de codificación 1016, 1048 y 1052 tienen un tamaño de Nx2N y un tipo de partición de la unidad de codificación 1032 tiene un tamaño de NxN. Las unidades de predicción y las particiones de las unidades de codificación 1010 son más pequeñas que o iguales a cada unidad de codificación.
La transformación o la transformación inversa se realiza en datos de imagen de la unidad de codificación 1052 en las unidades de transformación 1070 en una unidad de datos que es más pequeña que la unidad de codificación 1052. También, las unidades de codificación 1014, 1016, 1022, 1032, 1048, 1050 y 1052 en las unidades de transformación 1070 son diferentes de aquellas en las unidades de predicción 1060 en términos de tamaños y formas. En otras palabras, los aparatos de codificación y decodificación de video 100 y 200 pueden realizar una intra-predicción, estimación de movimiento, compensación de movimiento, transformación y transformación inversa individualmente en una unidad de datos en la misma unidad de codificación.
Por consiguiente, la codificación se realiza recursivamente en cada una de las unidades de codificación que tienen una estructura jerárquica en cada región de una unidad de codificación máxima para determinar una unidad de codificación óptima y de esta manera se pueden obtener unidades de codificación que tienen una estructura arborescente recursiva. La información de codificación puede incluir información de división acerca de una unidad de codificación, información acerca de un tipo de partición, información acerca de un modo de predicción e información acerca de un tamaño de una unidad de transformación. La Tabla 1 muestra la información de codificación que puede ser establecida por los aparatos de codificación y decodificación de video 100 y 200.
Tabla 1 La unidad de salida 130 del aparato de codificación de video 100 puede enviar la información de codificación acerca de las unidades de codificación que tienen una estructura arborescente y el extractor de datos de imagen e información de codificación 220 del aparato de decodificación de video 200 puede extraer la información de codificación acerca de las unidades de codificación que tienen una estructura arborescente de una corriente de bits recibida.
La información de división indica si una unidad de codificación actual se divide en unidades de codificación de una profundidad más baja. Si la información de división de una profundidad actual d es 0, una profundidad, en la cual una unidad de codificación actual ya no se divide en una profundidad más baja, es una profundidad codificada y de esta manera la información acerca de un tipo de partición, modo de predicción y tamaño de una unidad de transformación se puede definir para la profundidad codificada. Si la unidad de codificación actual se divide adicionalmente de acuerdo con la información de división, la codificación se realiza independientemente en cuatro unidades de codificación divididas de una profundidad más baja.
Un modo de predicción puede ser uno de un modo intra, un modo inter y un modo de omisión. El modo intra y el modo inter se pueden definir en todos los tipos de partición y el modo de omisión se define únicamente en un tipo de partición que tiene un tamaño de 2Nx2N.
La información acerca del tipo de partición puede indicar tipos de partición simétrica que tienen tamaños de 2Nx2N, 2NxN, Nx2N y NxN, los cuales se obtienen al dividir simétricamente una altura o una anchura de una unidad de predicción y tipos de partición asimétrica que tienen tamaños de 2NxnU, 2 xnD, nLx2N y nRx2N, los cuales se obtienen al dividir asimétricamente la altura o anchura de la unidad de predicción. Los tipos de partición asimétrica que tienen los tamaños de 2NxnU y 2NxnD se pueden obtener respectivamente al dividir la altura de la unidad de predicción en 1:3 y 3:1 y los tipos de partición asimétrica que tienen los tamaños de nLx2N y nRx2N se pueden obtener respectivamente al dividir la anchura de la unidad de predicción en 1:3 y 3:1.
El tamaño de la unidad de transformación se puede establecer para que sea dos tipos en el modo intra y dos tipos en el modo ínter. En otras palabras, si la información de división de la unidad de transformación es 0, el tamaño de la unidad de transformación puede ser 2Nx2N, el cual es el tamaño de la unidad de codificación actual. Si la información de división de la unidad de transformación es 1, las unidades de transformación se pueden obtener al dividir la unidad de codificación actual. También, si un tipo de partición de la unidad de codificación actual que tiene el tamaño de 2Nx2N es un tipo de partición simétrica, un tamaño de la unidad de transformación puede ser NxN y si el tipo de partición de la unidad de codificación actual es un tipo de partición asimétrica, el tamaño de la unidad de transformación puede ser N/2xN/2.
La información de codificación acerca de unidades de codificación que tienen una estructura arborescente puede 5 incluir por lo menos una de una unidad de codificación que corresponde a una profundidad codificada, una unidad de predicción y una unidad mínima. La unidad de codificación que corresponde a la profundidad codificada puede incluir por lo menos una de una unidad de predicción y una unidad mínima que contiene la misma información de codificación.
Por consiguiente, se determina si las unidades de datos adyacentes están incluidas en la misma unidad de codificación que corresponde a la profundidad codificada al comparar información de codificación de las unidades de datos adyacentes. También, una unidad de codificación correspondiente la cual corresponde a una profundidad codificada se determina mediante el uso de información de codificación de una unidad de datos y de esta manera se puede determinar una distribución de profundidades codificadas en una unidad de codificación máxima.
Por consiguiente, si una unidad de codificación actual se predice con base en información de codificación de unidades de datos adyacentes, la información de codificación de unidades de datos en unidades de codificación más profundas que son adyacentes a la unidad de codificación actual puede ser referida directamente y utilizada.
Alternativamente, si una unidad de codificación actual se predice con base en información de codificación de unidades de datos adyacentes, las unidades de datos que son adyacentes a la unidad de codificación actual se buscan utilizando información codificada de las unidades de datos y las unidades de codificación adyacentes, buscadas pueden ser referidas para predecir la unidad de codificación actual.
La FIGURA 19 es un diagrama para describir una relación entre una unidad de codificación, una unidad de predicción, una unidad de predicción, y una unidad de transformación, de acuerdo con la información de modo de codificación de la Tabla 1.
Una unidad de codificación máxima 1300 incluye las unidades de codificación 1302, 1304, 1306, 1312, 1314, 1316 y 1318 de las profundidades codificadas. En este documento, puesto que la unidad de codificación 1318 es una unidad de codificación de una profundidad codificada, la información de división se puede establecer a 0. La información acerca de un tipo de partición de la unidad de codificación 1318 que tiene un tamaño de 2Nx2N se puede establecer para que sea uno de un tipo de partición 1322 que tiene un tamaño de 2Nx2N, un tipo de partición 1324 que tiene un tamaño de 2NxN, un tipo de partición 1326 que tiene un tamaño de Nx2N, un tipo de partición 1328 que tiene un tamaño de NxN, un tipo de partición 1332 que tiene un tamaño de 2NxnU, un tipo de partición 1334 que tiene un tamaño de 2NxnD, un tipo de partición 1336 que tiene un tamaño de nLx2N y un tipo de partición 1338 que tiene un tamaño de nRx2N.
La información de división (indicador de tamaño de TU) de una unidad de transformación es una clase de un índice de transformación y un tamaño de unidad de transformación que corresponde al índice de transformación puede variar de acuerdo con un tipo de la unidad de predicción o la partición de la unidad de codificación.
Por ejemplo, cuando el tipo de partición se establece para que sea simétrico, es decir el tipo de partición 1322, 1324, ,1326 o 1328, una unidad de transformación 1342 que tiene un tamaño de 2Nx2N se establece si la información de división de una unidad de transformación es 0 y una unidad de transformación 1344 que tiene un tamaño de NxN se establece si un indicador de tamaño de TU es 1.
Cuando el tipo de partición se establece para que sea asimétrico, es decir, el tipo de partición 1332, 1334, 1336 o 1338, una unidad de transformación 1352 que tiene un tamaño de 2Nx2N se establece si un indicador de tamaño de TU es 0 y una unidad de transformación 1354 que tiene un tamaño de N/2xN/2 se establece si un indicador de tamaño de TU es 1.
Con referencia a la FIGURA 19, el indicador de tamaño de TU es un indicador que tiene un valor de 0 o 1, pero el indicador de tamaño de TU no está limitado a 1 bit y una unidad de transformación se puede dividir jerárquicamente teniendo una estructura arborescente mientras que el indicador de tamaño de TU incrementa de 0. El indicador de tamaño de TU se puede utilizar como una modalidad del índice de transformación.
En este caso, si la información de división de la unidad de transformación se utiliza junto con el tamaño de la unidad de transformación máxima y el tamaño de la unidad de transformación mínima, el tamaño de la unidad de transformación que se utiliza realmente se puede expresar. El aparato de codificación de video 100 puede codificar información del tamaño de la unidad de transformación máxima, información del tamaño de la unidad de transformación mínima e información de división de la unidad de transformación máxima. La información del tamaño de la unidad de transformación máxima, la información del tamaño de la unidad de transformación mínima y la información de división de la unidad de transformación máxima codificadas se pueden insertar en un SPS . El aparato de decodificación de video 200 puede realizar la decodificación de video mediante el uso de la información del tamaño de la unidad de transformación máxima, la información del tamaño de la unidad de transformación mínima y la información de división de la unidad de transformación máxima .
Por ejemplo, si una unidad de codificación actual tiene un tamaño de 64x64 y el tamaño de la unidad de transformación máxima es 32x32, cuando la información de división de la unidad de transformación es 0, un tamaño de la unidad de transformación se puede establecer a 32x32, cuando la información de división de la unidad de transformación es 1, el tamaño de la unidad de transformación se puede establecer a 16x16 y cuando la información de división de la unidad de transformación es 2, el tamaño de la unidad de transformación se puede establecer a 8x8.
Alternativamente, si la unidad de codificación actual tiene un tamaño de 32x32 y el tamaño de la unidad de transformación mínima es 32x32, cuando la información de división de la unidad de transformación es 1, el tamaño de la unidad de transformación se puede establecer a 32x32 y puesto que el tamaño de la unidad de transformación es igual a o mayor que 32x32, no se puede establecer más información de división de la unidad de transformación.
Alternativamente, si la unidad de codificación actual tiene un tamaño de 64x64 y la información de división de la unidad de transformación máxima es 1, la información de división de la unidad de transformación se puede establecer a 0 o 1 y no se puede establecer otra información de división de la unidad de transformación.
Por consiguiente, si la información de división de la unidad de transformación máxima se define como "MaxTransformSizelndex" , si un tamaño de la unidad de transformación mínima se define como "MinTransformSize" y si un tamaño de la unidad de transformación se define como "RootTuSize" cuando la información de división de la unidad de transformación es 0, "CurrMinTuSize" el cual es un tamaño de la unidad de transformación mínima disponible en la unidad de codificación actual puede ser definido por la fórmula (1) posterior 5 CurrMinTuSize = max (MinTransformSize, RootTuSize/(2AMaxTransformSizelndex))... (1) En comparación con "CurrMinTuSize" el cual es el tamaño de la unidad de transformación mínima disponible en la unidad de codificación actual, "RootTuSize" el cual es un Q tamaño de la unidad de transformación cuando la información de división de la unidad de transformación es 0 puede representar un tamaño de la unidad de transformación máxima que se puede adoptar en un sistema. En otras palabras, de acuerdo con la fórmula (1) , 5 "RootTuSize/ (2AMaxTransformSizelndex) " es un tamaño de la unidad de transformación en el cual "RootTuSize" se divide un número de veces que corresponde a la información de división de la unidad de transformación máxima y "MinTransformSize" es un tamaño de la unidad de transformación mínima y de esta Q manera un valor más pequeño de entre "RootTuSize/ (2^MaxTransformSizelndex) " y "MinTransformSize" puede ser "CurrMinTuSize" el cual es el tamaño de la unidad de transformación mínima disponible en la unidad de codificación actual. cr El "RootTuSize" el cual es el tamaño de la unidad de transformación máxima puede variar de acuerdo con un modo de predicción.
Por ejemplo, si un modo de predicción actual es un modo ínter, el "RootTuSize" se puede determinar de acuerdo con la fórmula (2) posterior. En la fórmula (1) , "MaxTransformSize" indica un tamaño de la unidad de transformación máxima y "PUSize" indica un tamaño de la unidad de predicción actual.
RootTuSize = m¡n( axTransformSize, PUSize) (2) En otras palabras, si el modo de predicción actual es un modo inter, el "RootTuSize" el cual es un tamaño de la unidad de transformación cuando la información de división de la unidad de transformación es 0 se puede establecer a un valor más pequeño de entre el tamaño de la unidad de transformación máxima y el tamaño de la unidad de predicción actual .
Si un modo de predicción de una unidad de partición actual es un modo intra, el "RootTuSize" se puede determinar de acuerdo con la fórmula (3) posterior. "PartitionSize" indica un tamaño de la unidad de partición actual.
RootTuSize = min(MaxTransformSize, PartitionSize) (3) En otras palabras, si el modo de predicción actual es un modo intra, el "RootTuSize" se puede establecer a un valor más pequeño de entre el tamaño de la unidad de transformación máxima y el tamaño de la unidad de partición actual .
Sin embargo, el tamaño de la unidad de transformación máxima actual "RootTuSize" que varía de acuerdo con un modo de predicción de la unidad de partición es solo un ejemplo y un factor para determinar el tamaño de la unidad de transformación máxima actual no está limitado al mismo .
Los datos de imagen de un dominio espacial se codifican para cada unidad de codificación que tiene una estructura arborescente mediante el uso de un método de codificación de video basado en las unidades de codificación que tienen una estructura arborescente descritas anteriormente con referencia a las FIGURAS 7 a 19 y la decodificación se realiza en cada unidad de codificación máxima mediante el uso de un método de decodificación basado en las unidades de codificación que tienen una estructura arborescente y de esta manera los datos de imagen del dominio espacial se restauran, restaurando de ese modo un video el cual es una imagen y una secuencia de imágenes. El video restaurado se puede reproducir por medio de un aparato de reproducción, se puede almacenar en un medio de almacenamiento o se puede transmitir por vía de una red.
Las modalidades de la presente invención se pueden escribir como programas de computadora y se pueden implementar en computadoras digitales de uso general que ejecutan los programas utilizando un medio de grabación legible por computadora. Los ejemplos del medio de grabación legible por computadora incluye medios de almacenamiento magnéticos (por ejemplo, ROM, discos flexibles, discos duros, etcétera) y medios de grabación ópticos (por ejemplo, CD-ROMs o DVDs) .
Mientras que esta invención ha sido mostrada y descrita particularmente con referencia a modalidades preferidas de la misma, aquellas personas de experiencia ordinaria en el campo entenderán que se pueden hacer varios cambios en la forma y los detalles en la presente sin apartarse del espíritu y alcance de la invención como se definen por las reivindicaciones anexas. Las modalidades preferidas se deben considerar únicamente en un sentido descriptivo y no para propósitos de limitación. Por lo tanto, el alcance de la invención no es definido por la descripción detallada de la invención sino por las reivindicaciones anexas y se interpretará que todas las diferencias dentro del alcance están incluidas en la presente invención.
Se hace constar que con relación a esta fecha, el mejor método conocido por la solicitante para llevar a la práctica la citada invención, es el que resulta claro de la presente descripción de la invención.

Claims (15)

REIVINDICACIONES Habiéndose descrito la invención como antecede, se reclama como propiedad lo contenido en las siguientes reivindicaciones:
1. Un método para decodificar un video a través de la decodificación de símbolos, caracterizado porque comprende : analizar símbolos de bloques de imagen de una corriente de bits recibida; clasificar un símbolo actual en una secuencia de bits de prefijo y una secuencia de bits de sufijo con base en un valor umbral determinado de acuerdo con el tamaño de un bloque actual; realizar la decodificación aritmética mediante el uso de un método de decodificación aritmética determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo; realizar la binarizacion inversa mediante el uso de un método de binarizacion determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo; y restaurar los bloques de imagen al realizar la transformación inversa y la predicción en el bloque actual mediante el uso del símbolo actual restaurado a través de la decodificación aritmética y la binarizacion inversa.
2. El método de conformidad con la reivindicación 1, caracterizado porque la realización de la binarización inversa comprende restaurar una región de prefijo y una región de sufijo del símbolo al realizar la binarización inversa de acuerdo con el método de binarización determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo.
3. El método de conformidad con la reivindicación 1, caracterizado porque la realización de la decodificación aritmética comprende: realizar la decodificación aritmética para determinar el modelado de contexto en la secuencia de bits de prefijo de acuerdo con ubicaciones de bits; y realizar la decodificación aritmética para omitir el modelado de contexto en la secuencia de bits de sufijo en un modo de derivación.
4. El método de conformidad con la reivindicación 1, caracterizado porque la realización de la decodificación aritmética comprende realizar la decodificación aritmética mediante el uso de un contexto de un índice predeterminado que se asigna previamente a las ubicaciones de los bits de la secuencia de bits de prefijo, cuando el símbolo es la información de posición del coeficiente final de un coeficiente de transformación.
5. El método de conformidad con la reivindicación 1, caracterizado porque el símbolo actual comprende por lo menos uno de un modo de intra-predicción e información de posición del coeficiente final del bloque actual.
6. El método de conformidad con la reivindicación 2, caracterizado porque el método de binarización comprende además por lo menos una seleccionada del grupo que consiste de la binarización unaria, binarización uñaría truncada, binarización de golomb exponencial y binarización de longitud fija.
7. Un método para codificar un video a través de la codificación de símbolos, caracterizado porque comprende: generar símbolos al realizar la predicción y la transformación en bloques de imagen; clasificar un símbolo actual en una región de prefijo y una región de sufijo con base en un valor umbral determinado de acuerdo con el tamaño de un bloque actual; generar una secuencia de bits de prefijo y una secuencia de bits de sufijo mediante el uso de un método de binarización determinado para cada una de la región de prefijo y la región de sufijo; realizar la codificación de símbolos mediante el uso de un método de codificación aritmética determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo; y enviar secuencias de bits generadas a través de la codificación de símbolos en la forma de corrientes de bits.
8. El método de conformidad con la reivindicación 7, caracterizado porque la realización de la codificación de símbolos comprende: realizar la codificación de símbolos en la secuencia de bits de prefijo mediante el uso de un método de codificación aritmética para realizar el modelado de contexto de acuerdo con ubicaciones de bits; y realizar la codificación de símbolos en la secuencia de bits de sufijo mediante el uso de un método de codificación aritmética para omitir el modelado de contexto en un modo de derivación.
9. El método de conformidad con la reivindicación 7, caracterizado porque la realización de la codificación de símbolos comprende realizar la codificación aritmética mediante el uso de un contexto de un índice predeterminado que se asigna previamente a las ubicaciones de los bits de la secuencia de bits de prefijo, cuando el símbolo es información de posición del coeficiente final de un coeficiente de transformación.
10. El método de conformidad con la reivindicación 7, caracterizado porque el símbolo actual comprende por lo menos uno de un modo de intra-predicción e información de posición del coeficiente final del bloque actual.
11. El método de conformidad con la reivindicación 7, caracterizado porque además el método de binarización comprende además por lo menos una seleccionada del grupo que consiste de la binarizacion uñaría, binarizacion unaria truncada, binarizacion de golomb exponencial y binarizacion de longitud fija.
12. Un aparato para decodificar un video a través de la decodificación de símbolos, caracterizado porque comprende: un analizador para analizar símbolos de bloques de imagen de una corriente de bits recibida; un decodificador de símbolos para clasificar un símbolo actual en una secuencia de bits de prefijo y una secuencia de bits de sufijo con base en un valor de umbral determinado de acuerdo con el tamaño de un bloque actual y realizar la decodificación aritmética mediante el uso de un método de decodificación aritmética determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo y luego realizar la binarizacion inversa mediante el uso de un método de binarizacion determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo; y una unidad de restauración de imágenes para restaurar los bloques de imagen al realizar la transformación inversa y la predicción en el bloque actual mediante el uso del símbolo actual restaurado a través de la decodificación aritmética y la binarizacion inversa.
13. Un aparato para codificar un video a través de la codificación de símbolos, caracterizado porque comprende: un codificador de imágenes para generar símbolos al realizar la predicción y la transformación en bloques de imagen; un codificador de símbolos para clasificar un símbolo actual en una región de prefijo y una región de sufijo con base en un valor umbral determinado de acuerdo con el tamaño de un bloque actual y generar una secuencia de bits de prefijo y una secuencia de bits de sufijo mediante el uso de un método de binarización determinado para cada una de la región de prefijo y la región de sufijo y luego realizar la codificación de símbolos mediante el uso de un método de codificación aritmética determinado para cada una de la secuencia de bits de prefijo y la secuencia de bits de sufijo; y una unidad de salida de corriente de bits para enviar secuencias de bits generadas a través de la codificación de símbolos en la forma de corrientes de bits.
14. Un medio de grabación legible por computadora, caracterizado porque tiene incorporado en el mismo un programa de computadora para ejecutar el método de conformidad con la reivindicación 1.
15. Un medio de grabación legible por computadora, caracterizado porque tiene incorporado en el mismo un programa de computadora para ejecutar el método de conformidad con la reivindicación 7.
MX2014000172A 2011-06-28 2012-06-27 Metodo y aparato para codificar video y metodo y aparato para decodificar video acompañados por una codificacion aritmetica. MX2014000172A (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201161502038P 2011-06-28 2011-06-28
PCT/KR2012/005087 WO2013002555A2 (ko) 2011-06-28 2012-06-27 산술부호화를 수반한 비디오 부호화 방법 및 그 장치, 비디오 복호화 방법 및 그 장치

Publications (1)

Publication Number Publication Date
MX2014000172A true MX2014000172A (es) 2014-02-19

Family

ID=47424665

Family Applications (4)

Application Number Title Priority Date Filing Date
MX2014000172A MX2014000172A (es) 2011-06-28 2012-06-27 Metodo y aparato para codificar video y metodo y aparato para decodificar video acompañados por una codificacion aritmetica.
MX2015004485A MX337232B (es) 2011-06-28 2012-06-27 Metodo y aparato para codificar video y metodo y aparato para decodificar video acompañados por una codificacion aritmetica.
MX2015004496A MX337230B (es) 2011-06-28 2012-06-27 Metodo y aparato para codificar video y metodo y aparato para decodificar video acompañados por una codificacion aritmetica.
MX2015004494A MX336876B (es) 2011-06-28 2014-01-07 Metodo y aparato para codificar video y metodo y aparato para decodificar video acompañados por una codificacion aritmetica.

Family Applications After (3)

Application Number Title Priority Date Filing Date
MX2015004485A MX337232B (es) 2011-06-28 2012-06-27 Metodo y aparato para codificar video y metodo y aparato para decodificar video acompañados por una codificacion aritmetica.
MX2015004496A MX337230B (es) 2011-06-28 2012-06-27 Metodo y aparato para codificar video y metodo y aparato para decodificar video acompañados por una codificacion aritmetica.
MX2015004494A MX336876B (es) 2011-06-28 2014-01-07 Metodo y aparato para codificar video y metodo y aparato para decodificar video acompañados por una codificacion aritmetica.

Country Status (27)

Country Link
US (7) US9565455B2 (es)
EP (7) EP3013054A1 (es)
JP (6) JP5735710B2 (es)
KR (7) KR101457399B1 (es)
CN (9) CN103782597A (es)
AU (6) AU2012276453B2 (es)
BR (5) BR112013033708A2 (es)
CA (2) CA2975695C (es)
CY (2) CY1119931T1 (es)
DK (2) DK2884749T3 (es)
ES (4) ES2797423T3 (es)
HR (2) HRP20180051T1 (es)
HU (4) HUE038521T2 (es)
LT (2) LT2884749T (es)
MX (4) MX2014000172A (es)
MY (5) MY160178A (es)
NO (1) NO3064648T3 (es)
PH (4) PH12017500999B1 (es)
PL (4) PL3402206T3 (es)
PT (2) PT2728866T (es)
RS (2) RS58373B1 (es)
RU (4) RU2618511C1 (es)
SI (2) SI2728866T1 (es)
TR (1) TR201902208T4 (es)
TW (4) TWI562618B (es)
WO (1) WO2013002555A2 (es)
ZA (5) ZA201400647B (es)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MX2014000172A (es) * 2011-06-28 2014-02-19 Samsung Electronics Co Ltd Metodo y aparato para codificar video y metodo y aparato para decodificar video acompañados por una codificacion aritmetica.
CN107396118B (zh) * 2011-07-18 2020-02-21 太阳专利托管公司 编码方法和编码装置
WO2013017092A1 (en) 2011-08-04 2013-02-07 Mediatek Inc. Method and apparatus for reordered binarization of syntax elements in cabac
CN107197284B (zh) 2011-11-07 2020-03-27 太阳专利托管公司 图像编码解码装置
SG10201707023VA (en) 2012-04-15 2017-10-30 Samsung Electronics Co Ltd Parameter update method for entropy coding and decoding of conversion coefficient level, and entropy coding device and entropy decoding device of conversion coefficient level using same
GB2513111A (en) * 2013-04-08 2014-10-22 Sony Corp Data encoding and decoding
US9930348B2 (en) * 2014-03-14 2018-03-27 Qualcomm Incorporated Coefficient level coding in a video coding process
EP3138288B1 (en) 2014-06-20 2020-12-23 HFI Innovation Inc. Method and apparatus of binarization and context-adaptive coding for syntax in video coding
US20160044339A1 (en) * 2014-08-07 2016-02-11 Qualcomm Incorporated System and method for reordering of prefixes and suffixes in variable length coding to increase throughput
WO2016119726A1 (en) * 2015-01-30 2016-08-04 Mediatek Inc. Method and apparatus for entropy coding of source samples with large alphabet
KR102473209B1 (ko) * 2015-12-14 2022-12-02 삼성전자주식회사 스토리지 장치 및 스토리지 장치의 동작 방법
US10142629B2 (en) * 2015-12-28 2018-11-27 Mediatek Inc. Method and apparatus for entropy coding in image compression
US10708164B2 (en) * 2016-05-03 2020-07-07 Qualcomm Incorporated Binarizing secondary transform index
KR102527184B1 (ko) 2018-03-29 2023-05-03 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 변환 계수 블록 코딩
AU2018204786A1 (en) * 2018-06-29 2020-01-16 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding a transformed block of video samples
FI3799690T3 (fi) 2018-07-11 2023-11-22 Huawei Tech Co Ltd Lohkon sisäisen tilan lumamerkinanto
BR122021011813A2 (pt) 2018-11-12 2021-08-10 Lg Electronics Inc. Método de decodificação de imagens através de um aparelho de decodificação, método de codificação de imagens através de um aparelho de codificação e mídia de armazenamento legível por computador não transitória
CN115442608A (zh) * 2018-12-17 2022-12-06 Lg电子株式会社 图像编码/解码方法及发送数据的方法
WO2020145698A1 (ko) * 2019-01-13 2020-07-16 엘지전자 주식회사 비디오 신호를 처리하기 위한 방법 및 이를 위한 장치
US10986334B2 (en) * 2019-03-09 2021-04-20 Tencent America LLC Method and apparatus for video coding
AU2020234409B2 (en) * 2019-03-12 2023-11-02 Lg Electronics Inc. Transform-based image coding method and device therefor
JP7332873B2 (ja) * 2019-09-10 2023-08-24 富士通株式会社 符号化回路、復号化回路、符号化方法、復号化方法、伝送装置、及び光伝送システム
CN110995274B (zh) * 2019-11-18 2022-02-08 中国科学院自动化研究所 一种解压缩方法及装置
JP7388900B2 (ja) 2019-12-06 2023-11-29 日本放送協会 符号化装置、復号装置、及びプログラム
CN114079774A (zh) * 2020-08-21 2022-02-22 北京三星通信技术研究有限公司 帧间预测信息的编解码方法及装置
CN114615504A (zh) * 2020-12-04 2022-06-10 腾讯科技(深圳)有限公司 视频解码方法、视频编码方法、装置及设备
CN113518222B (zh) * 2021-06-07 2022-11-08 同济大学 不同类型串采用不同长度二值化方案的编解码方法及装置
JP2023026969A (ja) * 2021-08-16 2023-03-01 キヤノン株式会社 撮像システム、サーバ装置、サーバ装置の制御方法、プログラム、および記憶媒体

Family Cites Families (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2755527B1 (fr) * 1996-11-07 1999-01-08 Thomson Multimedia Sa Procede de prediction compensee en mouvement et codeur utilisant un tel procede
US6859840B2 (en) 2001-01-29 2005-02-22 Kasenna, Inc. Prefix caching for media objects
KR100729270B1 (ko) * 2002-05-02 2007-06-15 프라운호퍼-게젤샤프트 츄어 푀르더룽 데어 안게반텐 포르슝에.파우. 이미지 및/또는 비디오 인코더 및 디코더에서의변환계수를 인코딩하는 방법 및 장치, 및 이에 대응하는컴퓨터 프로그램 및 컴퓨터로 읽을 수 있는 저장매체
DE10301362B4 (de) * 2003-01-16 2005-06-09 GEMAC-Gesellschaft für Mikroelektronikanwendung Chemnitz mbH Blockdatenkompressionssystem, bestehend aus einer Kompressionseinrichtung und einer Dekompressionseinrichtung, und Verfahren zur schnellen Blockdatenkompression mit Multi-Byte-Suche
US6900748B2 (en) * 2003-07-17 2005-05-31 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Method and apparatus for binarization and arithmetic coding of a data value
US7379608B2 (en) * 2003-12-04 2008-05-27 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung, E.V. Arithmetic coding for transforming video and picture data units
US7599435B2 (en) 2004-01-30 2009-10-06 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Video frame encoding and decoding
JP4418762B2 (ja) * 2004-05-07 2010-02-24 キヤノン株式会社 画像符号化装置及び画像復号装置及びそれらの制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体
DE102004049156B4 (de) 2004-10-08 2006-07-13 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Codierschema für einen ein zeitlich veränderliches Graphikmodell darstellenden Datenstrom
KR100647295B1 (ko) * 2004-11-10 2006-11-23 삼성전자주식회사 비디오 디코더에서의 인접 정보 처리 장치 및 방법과 그방법을 수행하기 위한 프로그램이 저장된 기록 매체
US7430238B2 (en) * 2004-12-10 2008-09-30 Micronas Usa, Inc. Shared pipeline architecture for motion vector prediction and residual decoding
US20060153293A1 (en) * 2005-01-12 2006-07-13 Ulead Systems, Inc. Method for transcoding compressed data
KR100703776B1 (ko) 2005-04-19 2007-04-06 삼성전자주식회사 향상된 코딩 효율을 갖는 컨텍스트 기반 적응적 산술 코딩및 디코딩 방법과 이를 위한 장치, 이를 포함하는 비디오코딩 및 디코딩 방법과 이를 위한 장치
KR100718134B1 (ko) 2005-07-21 2007-05-14 삼성전자주식회사 비트율에 적응적인 영상 데이터 이진 산술 부호화/복호화장치 및 방법
CN100466739C (zh) * 2005-10-12 2009-03-04 华为技术有限公司 Cabac解码系统及方法
KR100873636B1 (ko) 2005-11-14 2008-12-12 삼성전자주식회사 단일 부호화 모드를 이용하는 영상 부호화/복호화 방법 및장치
EP2765780A1 (en) 2005-12-05 2014-08-13 Huawei Technologies Co., Ltd. Binarizing method and device thereof
CN1984336A (zh) 2005-12-05 2007-06-20 华为技术有限公司 一种二进制化方法及装置
US7778472B2 (en) 2006-03-27 2010-08-17 Qualcomm Incorporated Methods and systems for significance coefficient coding in video compression
FR2900004A1 (fr) * 2006-04-18 2007-10-19 Thomson Licensing Sas Procede et dispositif de decodage arithmetique
US7262722B1 (en) * 2006-06-26 2007-08-28 Intel Corporation Hardware-based CABAC decoder with parallel binary arithmetic decoding
CN101175210B (zh) * 2006-10-30 2010-08-11 中国科学院计算技术研究所 用于视频预测残差系数解码的熵解码方法及熵解码装置
JP4878262B2 (ja) 2006-10-31 2012-02-15 キヤノン株式会社 エントロピー符号化装置
JP4739167B2 (ja) * 2006-10-31 2011-08-03 キヤノン株式会社 正規化処理装置
JP4825644B2 (ja) 2006-11-14 2011-11-30 ルネサスエレクトロニクス株式会社 画像復号装置、画像符号化装置、およびシステムlsi
DK2123052T3 (da) * 2007-01-18 2011-02-28 Fraunhofer Ges Forschung Kvalitetsskalerbar videodatastrøm
US9521433B2 (en) * 2007-09-06 2016-12-13 Nec Corporation Video encoding device, video decoding device, video encoding method, video decoding method, video encoding or decoding program
US8782379B2 (en) * 2007-09-27 2014-07-15 Qualcomm Incorporated H.264 video decoder CABAC core optimization techniques
US8938009B2 (en) * 2007-10-12 2015-01-20 Qualcomm Incorporated Layered encoded bitstream structure
US8891615B2 (en) * 2008-01-08 2014-11-18 Qualcomm Incorporated Quantization based on rate-distortion modeling for CABAC coders
US9008171B2 (en) 2008-01-08 2015-04-14 Qualcomm Incorporated Two pass quantization for CABAC coders
US8509555B2 (en) * 2008-03-12 2013-08-13 The Boeing Company Error-resilient entropy coding for partial embedding and fine grain scalability
US8705622B2 (en) 2008-04-10 2014-04-22 Qualcomm Incorporated Interpolation filter support for sub-pixel resolution in video coding
JP2009272739A (ja) * 2008-05-01 2009-11-19 Olympus Corp 撮像装置
KR20090129926A (ko) 2008-06-13 2009-12-17 삼성전자주식회사 영상 부호화 방법 및 그 장치, 영상 복호화 방법 및 그 장치
JP5083579B2 (ja) * 2008-06-23 2012-11-28 日本電気株式会社 復号処理装置、プロセッサ、電子機器、復号処理方法、及び復号処理プログラム
BRPI0917456B1 (pt) 2008-08-19 2020-09-15 Contentarmor Método para atendimento a fluxo de vídeo de codificação aritmética binária adaptativa com base em contexto (cabac)
US20100054326A1 (en) * 2008-08-26 2010-03-04 General Instrument Corporation Method and apparatus for detecting start and end of a video sequence
EP2164176A1 (en) * 2008-09-12 2010-03-17 Thomson Licensing Method for lossless compressing prefix-suffix-codes, method for decompressing a bit sequence representing integers or symbols encoded in compressed prefix-suffix-codes and storage medium or signal carrying compressed prefix-suffix-codes
JP2010200281A (ja) * 2009-02-27 2010-09-09 Josho Gakuen 復号装置、及びプログラム
TWI387314B (zh) * 2009-03-10 2013-02-21 Univ Nat Central Image processing apparatus and method thereof
US8294603B2 (en) * 2009-06-30 2012-10-23 Massachusetts Institute Of Technology System and method for providing high throughput entropy coding using syntax element partitioning
US8948241B2 (en) 2009-08-07 2015-02-03 Qualcomm Incorporated Signaling characteristics of an MVC operation point
US20120230405A1 (en) 2009-10-28 2012-09-13 Media Tek Singapore Pte. Ltd. Video coding methods and video encoders and decoders with localized weighted prediction
US20110110591A1 (en) 2009-11-09 2011-05-12 Ming-Hwa Sheu Multi-point image labeling method
JP4819940B2 (ja) 2009-12-04 2011-11-24 株式会社日立国際電気 動画像符号化装置
CN101771879B (zh) * 2010-01-28 2011-08-17 清华大学 基于cabac的并行归一化编码实现电路及编码方法
WO2011128268A1 (en) * 2010-04-13 2011-10-20 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Probability interval partioning encoder and decoder
KR101983380B1 (ko) * 2010-05-12 2019-05-28 인터디지탈 매디슨 페이튼트 홀딩스 통합된 유효성 맵 코딩을 위한 방법 및 장치
RS56250B1 (sr) 2010-07-09 2017-11-30 Samsung Electronics Co Ltd Uređaj za entropijsko dekodiranje koeficijenta transformacije
CN102014283A (zh) * 2010-11-30 2011-04-13 上海大学 一阶差分前缀表示的图像数据无损压缩的编码方法
US9042440B2 (en) * 2010-12-03 2015-05-26 Qualcomm Incorporated Coding the position of a last significant coefficient within a video block based on a scanning order for the block in video coding
US8976861B2 (en) 2010-12-03 2015-03-10 Qualcomm Incorporated Separately coding the position of a last significant coefficient of a video block in video coding
JP5041060B2 (ja) * 2010-12-27 2012-10-03 ソニー株式会社 符号化装置及び符号化方法
WO2012134246A2 (ko) * 2011-04-01 2012-10-04 엘지전자 주식회사 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치
IL290229B2 (en) 2011-06-16 2023-04-01 Ge Video Compression Llc Entropy coding of motion vector differences
MX2014000172A (es) * 2011-06-28 2014-02-19 Samsung Electronics Co Ltd Metodo y aparato para codificar video y metodo y aparato para decodificar video acompañados por una codificacion aritmetica.
CN107396118B (zh) * 2011-07-18 2020-02-21 太阳专利托管公司 编码方法和编码装置
US9154792B2 (en) * 2011-11-08 2015-10-06 Qualcomm Incorporated Progressive coding of position of last significant coefficient
US9357185B2 (en) * 2011-11-08 2016-05-31 Qualcomm Incorporated Context optimization for last significant coefficient position coding
US20130182772A1 (en) * 2012-01-13 2013-07-18 Qualcomm Incorporated Determining contexts for coding transform coefficient data in video coding
EP2810440A1 (en) * 2012-02-04 2014-12-10 General Instrument Corporation Devices and methods for context reduction in last significant coefficient position coding
US9237344B2 (en) * 2012-03-22 2016-01-12 Qualcomm Incorporated Deriving context for last position coding for video coding
US9621921B2 (en) * 2012-04-16 2017-04-11 Qualcomm Incorporated Coefficient groups and coefficient coding for coefficient scans

Also Published As

Publication number Publication date
CA2840481C (en) 2017-09-26
JP5873201B2 (ja) 2016-03-01
KR20140146561A (ko) 2014-12-26
NO3064648T3 (es) 2018-02-24
CA2975695C (en) 2019-02-05
US10091510B2 (en) 2018-10-02
AU2016206259A1 (en) 2016-08-04
PH12017500999A1 (en) 2017-10-02
EP3402206B1 (en) 2020-05-20
TW201701675A (zh) 2017-01-01
BR112013033708A2 (pt) 2017-06-27
CN107835421B (zh) 2020-08-11
AU2016206261B2 (en) 2017-10-19
RS58373B1 (sr) 2019-03-29
KR20180023939A (ko) 2018-03-07
PL3402206T3 (pl) 2020-07-13
JP5934413B2 (ja) 2016-06-15
RU2689135C1 (ru) 2019-05-24
TWI597975B (zh) 2017-09-01
CN105554510B (zh) 2019-06-28
MY160181A (en) 2017-02-28
BR122015021376A2 (pt) 2019-08-27
AU2016206260A1 (en) 2016-08-04
US20160156939A1 (en) 2016-06-02
AU2012276453A1 (en) 2014-01-30
CN107835431B (zh) 2021-05-25
KR20150046772A (ko) 2015-04-30
RU2618511C1 (ru) 2017-05-04
CY1119931T1 (el) 2018-12-12
HRP20180051T1 (hr) 2018-02-09
AU2016206260B2 (en) 2017-10-19
PL2884749T3 (pl) 2018-04-30
AU2016206261A1 (en) 2016-08-04
DK2884749T3 (en) 2018-01-22
EP2849445A1 (en) 2015-03-18
JP2014525166A (ja) 2014-09-25
JP2015149773A (ja) 2015-08-20
US9247270B2 (en) 2016-01-26
ZA201502759B (en) 2017-01-25
US20150181224A1 (en) 2015-06-25
AU2016206258A1 (en) 2016-08-04
PL3306939T3 (pl) 2020-11-02
JP2015149770A (ja) 2015-08-20
EP3013054A1 (en) 2016-04-27
CN105357540A (zh) 2016-02-24
CN105554510A (zh) 2016-05-04
PT2728866T (pt) 2019-02-21
EP3306939A1 (en) 2018-04-11
WO2013002555A3 (ko) 2013-04-11
CN105357541A (zh) 2016-02-24
ZA201502760B (en) 2017-01-25
US20150139332A1 (en) 2015-05-21
RU2654491C1 (ru) 2018-05-21
CN105357540B (zh) 2019-09-06
SI2884749T1 (en) 2018-03-30
CN107835431A (zh) 2018-03-23
TW201737713A (zh) 2017-10-16
ZA201400647B (en) 2015-09-30
CN107820098B (zh) 2021-01-08
CN107835432A (zh) 2018-03-23
DK2728866T3 (en) 2019-03-18
US10547842B2 (en) 2020-01-28
CN107820098A (zh) 2018-03-20
ZA201502762B (en) 2022-11-30
MY160178A (en) 2017-02-28
PH12017501000B1 (en) 2017-10-02
HRP20190301T1 (hr) 2019-04-05
RU2014102581A (ru) 2015-08-10
CA2975695A1 (en) 2013-01-03
CA2840481A1 (en) 2013-01-03
EP2728866A4 (en) 2015-03-18
PH12017501001B1 (en) 2017-10-02
KR20150046774A (ko) 2015-04-30
US20180376144A1 (en) 2018-12-27
PL2728866T3 (pl) 2019-05-31
TR201902208T4 (tr) 2019-03-21
EP2884749B1 (en) 2018-01-10
PH12017500999B1 (en) 2017-10-02
KR101457399B1 (ko) 2014-11-04
WO2013002555A2 (ko) 2013-01-03
US9565455B2 (en) 2017-02-07
MY160180A (en) 2017-02-28
CY1121340T1 (el) 2020-05-29
ES2816059T3 (es) 2021-03-31
MX337230B (es) 2016-02-18
US20150139299A1 (en) 2015-05-21
AU2018200070B2 (en) 2019-02-14
MY160326A (en) 2017-02-28
US20170237985A1 (en) 2017-08-17
CN103782597A (zh) 2014-05-07
JP5873203B2 (ja) 2016-03-01
PH12017501002A1 (en) 2017-10-02
KR20140075658A (ko) 2014-06-19
SI2728866T1 (sl) 2019-03-29
BR122015021373A2 (pt) 2019-08-27
JP2015149771A (ja) 2015-08-20
ES2711671T3 (es) 2019-05-06
PT2884749T (pt) 2018-01-18
KR101560550B1 (ko) 2015-10-16
AU2016206258B2 (en) 2017-05-25
KR101560551B1 (ko) 2015-10-16
KR20130002285A (ko) 2013-01-07
TWI661716B (zh) 2019-06-01
KR20150046773A (ko) 2015-04-30
TWI562618B (en) 2016-12-11
AU2016206259B2 (en) 2017-07-13
US9258571B2 (en) 2016-02-09
HUE051665T2 (hu) 2021-03-29
TW201813401A (zh) 2018-04-01
TWI615020B (zh) 2018-02-11
BR122015021374A2 (pt) 2019-08-27
EP3306939B1 (en) 2020-08-05
KR101917239B1 (ko) 2018-11-09
PH12017501002B1 (en) 2017-10-02
US9554157B2 (en) 2017-01-24
CN105516732A (zh) 2016-04-20
EP3021591A1 (en) 2016-05-18
HUE038521T2 (hu) 2018-10-29
ES2655917T3 (es) 2018-02-22
BR122015021375A2 (pt) 2019-08-27
JP2015149772A (ja) 2015-08-20
KR101560549B1 (ko) 2015-10-16
ES2797423T3 (es) 2020-12-02
LT2728866T (lt) 2019-03-12
JP5873200B2 (ja) 2016-03-01
CN107835421A (zh) 2018-03-23
PH12017501000A1 (en) 2017-10-02
ZA201502761B (en) 2017-01-25
MX336876B (es) 2016-02-04
EP3402206A1 (en) 2018-11-14
AU2012276453B2 (en) 2016-05-05
TW201309031A (zh) 2013-02-16
HUE044112T2 (hu) 2019-09-30
AU2018200070A1 (en) 2018-01-25
MX337232B (es) 2016-02-18
MY160179A (en) 2017-02-28
US9668001B2 (en) 2017-05-30
US20150181225A1 (en) 2015-06-25
EP2884749A1 (en) 2015-06-17
JP5873202B2 (ja) 2016-03-01
LT2884749T (lt) 2018-01-25
RU2586321C2 (ru) 2016-06-10
KR101560552B1 (ko) 2015-10-16
HUE050522T2 (hu) 2020-12-28
JP5735710B2 (ja) 2015-06-17
JP2015149774A (ja) 2015-08-20
CN107835432B (zh) 2020-08-11
PH12017501001A1 (en) 2017-10-02
EP2728866A2 (en) 2014-05-07
EP2728866B1 (en) 2019-02-13
RS56754B1 (sr) 2018-04-30
KR101835641B1 (ko) 2018-03-07

Similar Documents

Publication Publication Date Title
AU2018200070B2 (en) Method and apparatus for coding video and method and apparatus for decoding video accompanied with arithmetic coding
CA2876288C (en) Method and apparatus for encoding and decoding of hierarchically partitioned video
JP2015130708A (ja) ビデオ復号化方法及びビデオ復号化装置
CA2854074A1 (en) Method and apparatus for determining context model of transform coefficient level in entropy coding and decoding

Legal Events

Date Code Title Description
FG Grant or registration