MX2013000344A - Metodo y aparato para codificar/decodificar por entropia un coeficiente de transformacion. - Google Patents

Metodo y aparato para codificar/decodificar por entropia un coeficiente de transformacion.

Info

Publication number
MX2013000344A
MX2013000344A MX2013000344A MX2013000344A MX2013000344A MX 2013000344 A MX2013000344 A MX 2013000344A MX 2013000344 A MX2013000344 A MX 2013000344A MX 2013000344 A MX2013000344 A MX 2013000344A MX 2013000344 A MX2013000344 A MX 2013000344A
Authority
MX
Mexico
Prior art keywords
location
information
transformation coefficient
significant transformation
last significant
Prior art date
Application number
MX2013000344A
Other languages
English (en)
Inventor
Bae-Keun Lee
Yu-Mi Sohn
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 MX2013000344A publication Critical patent/MX2013000344A/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/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/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • 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/18Methods 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 set of transform coefficients
    • 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/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • 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/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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
    • 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/96Tree coding, e.g. quad-tree coding

Abstract

La presente invención se refiere a un método y un aparato para codificar por entropía un bloque de transformación, y a un método y un aparato para decodificar por entropía el bloque de transformación. El método para codificar por entropía un coeficiente de transformación de conformidad con una modalidad de la presente invención involucra: determinar la ubicación del último coeficiente de transformación significativo que no es cero de entre los coeficientes de transformación de un bloque de transformación de un tamaño predeterminado, de conformidad con un orden predeterminado de escaneo; y codificar la ubicación del último coeficiente de transformación significativo utilizando la ubicación relativa en una dirección de eje horizontal y la ubicación relativa en una dirección de eje vertical en el bloque de transformación.

Description

METODO Y APARATO PARA CODIFICAR/DECODIFICAR POR ENTROPIA UN COEFICIENTE DE TRANSFORMACION CAMPO DE LA INVENCIÓN La presente invención se refiere a codificación y decodificación de entropía de coeficientes de transformación, y más particularmente, a un método y a un aparato para codificar y decodificar por entropía eficientemente información sobre una ubicación de un último coeficiente de transformación significativo en un bloque de transformación.
ANTECEDENTES DE LA INVENCIÓN De conformidad con los estándares de codificación de video internacionales tal como H.264 y MPEG-4, una señal de video está dividida jerárquicamente en secuencias, cuadros, fragmentos, macrobloques , y bloques, y el bloque es una unidad de procesamiento mínima. En un proceso de codificación, los datos residuales de un bloque se obtienen al realizar predicción intra-cuadro o inter-cuadro . También, los otros residuales se comprimen al realizar transformación, cuantificación, escaneo, codificación de longitud de ejecución, y codificación de entropía. Un proceso de decodificación es un proceso inverso del proceso de codificación. Inicialmente , los coeficientes de un bloque de transformación, que se generan en un proceso de codificación de entropía, se extraen de una corriente de bits. Entonces, Ref.238373 los datos residuales de un bloque se reconfiguran al realizar cuantificación inversa y transformación inversa, y se utiliza información de predicción para reconfigurar datos de video del bloque.
BREVE DESCRIPCION DE LA INVENCION Problema Técnico La presente invención proporciona un método y un aparato para codificar y decodificar por entropía eficientemente información sobre una ubicación de último coeficiente de información significativo en un bloque de transformación que tiene un gran tamaño.
Solución Técnica De conformidad con una modalidad de la presente invención, la información sobre una ubicación de un último coeficiente de transformación significativo en un bloque de transformación se codifica al utilizar su ubicación de dirección de eje horizontal y su ubicación de dirección de eje vertical en el bloque de transformación.
Efectos Ventajosos De conformidad con la presente invención, una ubicación de un último coeficiente de transformación significativo incluido en un bloque de transformación que tiene un gran tamaño puede representarse eficientemente, y la información sobre la ubicación del último coeficiente de transformación significativo puede decodificarse independientemente de un proceso para decodificar coeficientes de transformación.
BREVE DESCRIPCIÓN DE LAS FIGURAS La Figura 1 es un diagrama de bloque de un aparato de codificación de imagen de conformidad con una modalidad de la presente invención.
La Figura 2 es un diagrama de bloque de un aparato de decodificación de imagen de conformidad con una modalidad de la presente invención.
La Figura 3 es un diagrama que muestra unidades de codificación jerárquica de conformidad con una modalidad de la presente invención.
La Figura 4 es un diagrama de bloque de un codificador de imagen con base en unidades de codificación, de conformidad con una modalidad de la presente invención.
La Figura 5 es un diagrama de bloque de un decodificador de imagen con base en unidades de codificación, de conformidad con una modalidad de la presente invención.
La Figura 6 es un diagrama que muestra unidades de codificación máxima, unidades de subcodificación, y unidades de predicción, de conformidad con una modalidad de la presente invención.
La Figura 7 es un diagrama que muestra una unidad de codificación y una unidad de transformación, de conformidad con una modalidad de la presente invención.
Las Figuras 8A y 8B son diagramas que muestran formas divididas de unidades de codificación, unidades de predicción, y unidades de transformación, de conformidad con una modalidad de la presente invención.
La Figura 9 es un diagrama de flujo de un método para codificar por entropía coeficientes de transformación, de conformidad con una modalidad de la presente invención.
La Figura 10 es un diagrama de referencia para describir un proceso para codificar por entropía coeficientes de transformación, de conformidad con modalidades de la presente invención.
La Figura 11 es un diagrama de bloque de un aparato de codificación de entropía de conformidad con una modalidad de la presente invención.
La Figura 12 es un diagrama de bloque de un dispositivo de codificación aritmética binaria adaptable por contexto (CABAC, por sus siglas en inglés) de conformidad con una modalidad de la presente invención.
La Figura 13 es un diagrama de referencia para describir un proceso para seleccionar un contexto para codificar información sobre una ubicación de un último coeficiente de transformación significativo, de conformidad con una modalidad de la presente invención.
La Figura 14 muestra un mapa de importancia correspondiente a la Figura 10.
La Figura 15 es un diagrama de referencia para describir un proceso de valores de nivel de codificación de coeficientes de transformación significativos incluidos en un bloque de transformación ilustrado en la Figura 10.
La Figura 16 es un diagrama que muestra un ejemplo de una pluralidad de tablas de > codificación de longitud variable (VLC, por sus siglas en inglés) utilizadas de conformidad con una modalidad de la presente invención.
La Figura 17 es un diagrama de referencia para describir un método para codificar por entropía coeficientes de transformación, de conformidad con otra modalidad de la presente invención.
Las Figuras 18A y 18B son diagramas de referencia para describir un método para codificar por entropía coeficientes de transformación, de conformidad con otra modalidad de la presente invención. ; La Figura 19 es un diagrama de flujo de un método para decodificar por entropía coeficientes de transformación, de conformidad con una modalidad de la presente invención.
La Figura 20 es un diagrama de bloque de un aparato de decodificación de entropía de conformidad con una modalidad de la presente invención.
DESCRIPCIÓN DETALLADA DE LA INVENCIÓN De conformidad con un aspecto de la presente invención, se proporciona un método para codificar por entropía coeficientes de transformación, el método incluye determinar un ubicación de un último coeficiente de transformación significativo que tiene un valor no cero de entre coeficientes de transformación incluidos en un bloque de transformación que tiene cierto tamaño, de conformidad con cierto orden de escaneo; y codificar información sobre la ubicación del último coeficiente de¦ transformación significativo al utilizar su ubicación de dirección de eje horizontal y su ubicación de dirección de eje vertical en el bloque de transformación.
De conformidad con otro aspecto de la presente invención, se proporciona un método para decodificar por entropía coeficientes de transformación, el método incluye extraer información, sobre una ubicación de dirección de eje horizontal y una ubicación de dirección de eje vertical de un último coeficiente de transformación significativo que tiene un valor no cero e incluido en un bloque de transformación, desde una corriente de bits recibida de conformidad con cierto orden de escaneo; y determinar una ubicación del último coeficiente de transformación significativo al decodificar la información sobre la ubicación de dirección de eje horizontal y la ubicación de dirección de eje vertical.
De conformidad con un aspecto de la presente inversión, se proporciona un aparato para coeficientes de transformación de decodificación de entropía, el aparato incluye un codificador de entropía para determinar una ubicación de un último coeficiente de transformación significativo que tiene un valor no cero de entre coeficientes de transformación incluidos en un bloque de transformación que tiene cierto tamaño, de conformidad con cierto orden de escaneo, y para codificar información sobre la ubicación del último coeficiente de transformación significativo al utilizar su ubicación de dirección de eje horizontal y su ubicación de dirección de eje vertical en el bloque de' transformación.
De conformidad con otro aspecto de la presente invención, se proporciona un aparato para decodificar por entropía coeficientes de transformación, el aparato incluye un decodificador de entropía para extraer información sobre una ubicación de dirección de eje horizontal y una ubicación de dirección de eje vertical de un último coeficiente de transformación significativo que tiene . un valor no cero e incluido en un bloque de transformación, desde una corriente de bits recibida de conformidad con cierto orden de escaneo, y para determinar una ubicación del último coeficiente de transformación significativo al decodificar la información sobre la ubicación de dirección de eje horizontal y la ubicación de dirección de eje vertical.
Modo Para la Invención En lo sucesivo, la presente invención se describirá d en detalle el explicar modalidades de la invención con referencia a las figuras anexas.
La Figura 1 es un diagrama de bloque de un aparato de codificación de imagen 100 de conformidad con una modalidad de la presente invención.
Al hacer referencia a la Figura 1, el aparato de codificación de imagen 100 incluye un divisor de unidad de codificación máxima 110, un determinador de profundidad codificada 120, un codificador de datos de imagen 130, y un codificador de información de codificación 140.
El divisor de unidad de codificación máxima 110 puede dividir un cuadro actual o un fragmento actual con base en una unidad de codificación máxima que es una unidad de codificación de tamaño máximo. El cuadro actual o el fragmento actual puede dividirse en al menos una unidad de codificación máxima.
De conformidad con una modalidad de la presente invención, pueden representarse unidades de codificación al utilizar una unidad de codificación máxima y una profundidad. Como se describe anteriormente, una unidad de. codificación máxima representa una unidad de codificación que tiene el mayor tamaño de entre unidades de codificación del cuadro actual, y una profundidad representa como las unidades de codificación se reducen jerárquicamente en tamaño. A medida que aumenta una profundidad, pueden reducirse las unidades de codificación en tamaño de una unidad de codificación máxima a una unidad de codificación mínima, y una profundidad de la unidad de codificación máxima puede definirse como una profundidad mínima mientras la profundidad de la unidad de codificación mínima puede definirse como una profundidad máxima. Ya que se reducen las unidades de codificación en tamaño a medida que aumenta la profundidad desde la unidad de codificación máxima, una unidad de sub-codificación que tiene una profundidad de k puede incluir una pluralidad de unidades de sub-codificación que tienen profundidades mayores que k.
Cuando un cuadro que se ' va a codificar tiene un gran tamaño, si se codifica una imagen en una gran unidad, la imagen puede decodificarse a una velocidad de compresión de imagen alta. Sin embargo, si el tamaño de una unidad de codificación aumenta y se fija, una imagen puede no codificarse eficientemente al reflejar sus características continuamente cambiantes.
Por ejemplo, cuando una imagen plana, por ejemplo, una imagen del mar o el cielo, se codifica, puede mejorarse una velocidad de compresión si una unidad de codificación aumenta en tamaño. Sin embargo, cuando se codifica una imagen complicada, por ejemplo, una imagen de gente u orificios, la velocidad de compresión mejora si la unidad de codificación se reduce en tamaño.
Para esto, de conformidad con una modalidad de la presente invención, se establecen unidades de codificación máxima de diferentes tamaños y diferentes profundidades máximas para diferentes cuadros o fragmentos. Ya que la profundidad máxima denota el número máximo de veces que una unidad U de codificación se puede reducir en tamaño, el tamaño de unidades de codificación mínima incluidas en una unidad de codificación máxima puede establecerse de forma variable de conformidad con una profundidad máxima.
El determinador de profundidad codificada 120 determina una profundidad máxima. La profundidad máxima puede determinarse con base en costos de velocidad-distorsión (R-D) . La profundidad máxima puede determinarse de forma diferente para cada marco o fragmento, o para cada unidad de codificación máxima. Se envía información sobre la profundidad máxima determinada al codificador de información de codificación 140, y se envían datos de imagen de cada unidad de codificación máxima al codificador de datos de imagen 130.
La profundidad máxima se refiere a una unidad de codificación que tiene el tamaño más pequeño en una unidad de codificación máxima, es decir, una unidad de codificación mínima. En otras palabras, la unidad de codificación máxima puede estar dividida en unidades de sub-codificación de diferentes tamaños de conformidad con diferentes profundidades . Se proporcionarán descripciones detalladas de la misma a continuación con referencia a las Figuras 8A y 8B. También, las unidades de sub-codificación de diferentes tamaños incluidas en la unidad de codificación máxima pueden predecirse ?· transformarse ortogonalmente con base en unidades de procesamiento de diferentes tamaños. En otras palabras, el aparato de . codificación de imagen 100 puede realizar una pluralidad de procesos para codificación de imagen con base en unidades de procesamiento de varios tamaños y de varias formas. Cuando se realizan tres procesos tal como predicción, transformación ortogonal, y codificación de entropía para codificar datos de imagen, la unidad de procesamiento del mismo tamaño puede utilizarse en todos los procesos o pueden utilizarse unidades de procesamiento de diferentes tamaños en diferentes procesos.
Por ejemplo, el aparato de codificación de imagen 100 puede seleccionar una unidad de procesamiento diferente de cierta unidad de codificación con el fin de predecir la unidad de codificación.
Si una unidad de codificación tiene un tamaño de 2Nx2N (N es un entero positivo) , una unidad de procesamiento para la predicción puede tener un tamaño de 2Nx2N, 2NxN, Nx2N, NxN, etc. En otras palabras, puede realizarse predicción de movimiento con base en una unidad de procesamiento que tiene un tamaño obtenido al dividir al menos una de una de una altura y un ancho de una unidad de codificación a la mitad. En lo sucesivo, una unidad de procesamiento para predicción se denomina como una vunidad de predicción' .
Un modo de predicción puede ser al menos uno de un intra modo, un ínter modo, y un modo de salto, y puede realizarse cierto modo de predicción únicamente sobre una unidad de predicción de cierto tamaño o de cierta forma. Por ejemplo, un intra modo puede realizarse únicamente sobre una unidad de predicción que tiene un tamaño de 2Nx2N o NxN que tiene una forma cuadrada. También, puede realizarse un modo de salto únicamente sobre una unidad de predicción que tiene un tamaño de 2Nx2N. Si una unidad de codificación incluye una pluralidad de unidades de predicción, la predicción puede realizarse en cada unidad de predicción y puede seleccionarse una unidad de predicción que tiene un error de codificación menor .
También, el aparato de codificación de imagen 100 puede transformar ortogonalmente datos de imagen con base en una unidad de procesamiento que tiene un tamaño diferente del. tamaño de una unidad de codificación. La unidad de codificación puede transformarse ortogonalmente con base en una unidad de datos que tiene un tamaño menor que o igual al tamaño de la unidad de codificación. En lo sucesivo, una unidad de procesamiento para transformación ortogonal se denomina como una 'unidad de transformación' .
El determinador de profundidad codificado 120 puede determinar unidades de sub-codificación incluidas en la unidad de codificación máxima, al utilizar optimización de velocidad-distorsión con base en un multiplicador de Lagrange . En otras palabras, puede determinarse una forma de división de la unidad de codificación máxima dentro de una pluralidad de unidades de sub-codif icación . Aquí, ' la pluralidad de unidades de sub-codificación tiene diferentes tamaños de conformidad con profundidades. Después de eso, el codificador de datos de imagen 130 envía una corriente de bits al codificar la unidad de codificación máxima con base en la forma de división determinada por el determinador de forma codificada 120.
El codificador de información de codificación 140 codifica información sobre un modo de codificación de la unidad de codificación máxima, que se determina por el determinador de profundidad codificada 120. La corriente de bits se envía al codificar información sobre la forma dividida de la unidad de codificación máxima, información sobre la profundidad máxima, e información sobre modos de codificación de unidades de sub-codificación de conformidad con profundidades. La información sobre los modos de codificación de las unidades de sub-codificación puede incluir, por ejemplo, información sobre unidades de predicción de las unidades de sub-codificación, información sobre modos de predicción de las unidades de predicción, e información sobre unidades de transformación de las unidades de sub-codificación.
La información sobre la forma dividida de la unidad 5 de codificación máxima puede ser información que representa si cada unidad de codificación está dividida. Por ejemplo, cuando la unidad de codificación máxima está dividida y codificada, se codifica información que representa si la unidad de codificación máxima está dividida. También, cuando 10 se dividen y codifican unidades de sub-codificación generadas al dividir la unidad de codificación máxima, se codifica. información que representa si cada unidad de sub-codificación está dividida. Información que representa si una unidad de codificación está divida puede ser información de marcador 15 que representa si la unidad de codificación está dividida.
Ya que la unidad de codificación máxima incluye unidades de sub-codificación de diferentes tamaños e información sobre un modo de codificación de cada unidad de sub-codificación tiene que determinarse, puede determinarse 20 información sobre al menos un modo de codificación con respecto a una unidad de codificación máxima.
El aparato de codificación de imagen 100 puede generar unidades de sub-codificación al dividir una altura y un ancho de la unidad de codificación máxima a medida que 25 aumenta una profundidad. Es decir, si una unidad de codificación que tiene una profundidad de k tiene un tamaño de 2Nx2N, una unidad de codificación que tiene una profundidad de k+l tiene un tamaño de NxN.
Por consiguiente, el aparato de codificación de imagen 100 puede determinar una forma dividida óptima de cada unidad de codificación máxima con base en el tamaño de la unidad de codificación máxima y uña profundidad máxima en consideración de características de imagen. Al ajustar de forma variable el tamaño de la unidad de codificación máxima y al codificar una imagen al dividir la unidad de codificación máxima dentro de unidades de sub-codificación que tienen diferentes profundidades en consideración de características de imagen, pueden codificarse eficientemente imágenes que tienen varias resoluciones.
La Figura 2 es un diagrama de bloque de un aparato de decodificación de imagen 200 de conformidad con una modalidad de la presente invención.
Al hacer referencia a la Figura 2, el aparato de decodificación de imagen 200 incluye un obtentor de datos de imagen 210, un extractor de información de codificación 220, y un decodificador de datos de imagen 230.
El obtentor de datos de imagen 210 analiza una corriente de bits recibida por el aparato de decodificación imagen 200, y obtiene y envía datos de imagen de cada unidad de codificación máxima al decodificador de datos de imagen 230. El obtentor de datos de imagen 210 puede extraer información sobre la unidad de codificación máxima de un cuadro o fragmento actual desde un encabezado del cuadro o fragmento de corriente. En otras palabras, la corriente de bits está dividida en unidades de codificación máxima para permitir que el decodificador de datos de imagen 230 decodifique datos de imagen de cada unidad de codificación máxima .
El estator de información de codificación 220 analiza la corriente de bits recibida por el aparato de decodificación imagen 200, extrae desde el encabezado del cuadro actual información sobre una unidad de codificación máxima, una profundidad máxima, una forma dividida de la unidad de codificación máxima, y modos de codificación unidades de sub-codificación. La información sobre la forma dividida y los modos de codificación se envía al decodificador de datos de imagen 230.
La información sobre la forma dividida de la unidad de codificación máxima puede incluir información sobre unidades de sub-codificación incluidas en la ünidad de codificación máxima y que tienen diferentes tamaños de conformidad con profundidades . Como se describe anteriormente con relación a la Figura 1, la información sobre la forma dividida puede ser información codificada y que representa si cada unidad de codificación está dividida (por ejemplo, información de marcador) . La información sobre los modos de codificación puede incluir, por ejemplo, información sobre unidades de predicción, información sobre modos de predicción, información sobre unidades de transformación de unidades de sub- codificación.
El decodificador de datos de imagen 230 restaura el cuadro de corriente al decodificar datos de imagen de cada unidad de codificación máxima con base en la información extraída por el estator de información de codificación 220.
El decodificador de datos de imagen 230 puede decodificar unidades de sub-codificación incluidas en la unidad de codificación máxima, con base en la información sobre la forma dividida de la unidad de codificación máxima. Un proceso de decodificación puede incluir un proceso de ínter predicción que incluye intra predicción y compensación de movimiento, y un proceso de transformación ortogonal inversa .
El decodificador de datos de imagen 230 puede realizar intra predicción o ínter predicción con base en la información sobre las unidades de predicción en la información sobre los modos de predicción de las unidades de sub-codif icación, con el fin de predecir las unidades de sub-codificación. También, el decodificador de datos de imagen 230 puede realizar transformación ortogonal inversa en cada unidad de sub-codificación con base en la información sobre las unidades de transformación de las unidades de sub-codificación.
La Figura 3 es un diagrama que muestra unidades de codificación jerárquica de conformidad con la modalidad de la presente invención.
Al hacer referencia a la Figura 3, las unidades de codificación jerárquica pueden incluir unidades de codificación que tienen ancho por altura de 64x64, 32x32, 16x16, 8x8, y 4x4. Además de las unidades de codificación de forma cuadrada, las unidades de codificación que tienen ancho por altura de 64x32, 32x64, 32x16, 16x32, 16x8, 8x16, 8x4, y 4x8 también pueden existir.
En la Figura 3 para datos de imagen 310 que tiene una resolución de 1920x1080, el tamaño de una unidad de codificación máxima se establece como 64x64 y una profundidad máxima se establece como 2.
Para otros datos de imagen 320 que tiene una resolución de 1020x1080, el tamaño de la unidad de decodificación máxima se establece como 64x64 y la profundidad máxima se establece como 4. Para datos de imagen 330 que tiene una resolución de 352x288, el tamaño de la unidad de codificación máxima se establece como 16x16 y la profundidad máxima se establece como 2.
Si una resolución es alta o la cantidad de datos es grande, con el fin de mejorar una velocidad de compresión y para reflejar de forma precisa características de imagen, un tamaño de codificación máxima puede ser relativamente grande. Por consiguiente, los datos de imagen 310 y 320 que tienen una resolución superior a la resolución de los datos de imagen 330, el tamaño de la unidad de codificación máxima puede seleccionarse como 64x64.
La profundidad máxima representa un número total de capas de las unidades de codificación jerárquica. Ya que la profundidad máxima de los datos de imagen 310 es 2, las unidades de codificación 315 de los datos de imagen 310 pueden incluir una unidad de codificación máxima que tiene un tamaño de eje largo de 64, y las unidades de sub- codificación tienen tamaños de eje largo de 32 y 16 a medida que aumenta una profundidad.
Mientras tanto, ya que la profundidad máxima de los datos de imagen 330 es 2, las unidades de codificación 335 de los datos de imagen 330 pueden incluir unidades de codificación máxima que tienen un tamaño de eje largo de 16, y unidades de sub-codificación que tienen tamaños de eje largo de 8 y 4 a medida que aumenta una profundidad.
Ya que la profundidad máxima de los datos de imagen 320 es 4, las unidades de codificación 325 de los datos de imagen 320 pueden incluir una unidad de codificación máxima que tienen un tamaño de eje largo de 64, y unidades de sub-codificación que tienen tamaños de eje largo de 32, 16, 8, y 4 a medida que aumenta una profundidad. Como tal, ya que una imagen se codifica con base en una unidad de sub-codificación pequeña a medida que una profundidad aumenta, una imagen que incluye una escena detallada puede codificarse apropiadamente .
La Figura 4 es un diagrama de bloque de un codificador de imagen 400 con base en unidades de codificación, de conformidad con una modalidad de la presente invención.
Un intra pronosticador 410 realiza intra predicción sobre unidades de predicción de un intra modo en un cuadro actual 405, un estimador de movimiento 420 y un compensador de movimiento 425 realizan respectivamente inter predicción y compensación de movimiento sobre unidades de predicción de un inter modo al utilizar el cuadro actual 405 y un cuadro de referencia 495.
Se generan valores residuales con base en la salida de unidades de predicción desde el intra pronosticador 410, el estimador de movimiento 420, y el compresor de movimiento 425, y los valores residuales generados pasan a través de un transformador ortogonal 430 y un cuantificador 440 para enviarse como coeficientes de transformación cuantificados .
Los coeficientes de transformación cuantificados pasan a través de un cuantificador inverso 460 y un transformador de' frecuencia inversa 470 para restaurarse como valores residuales, y los valores residuales restaurados posprocesados a través de un desbloqueador 480 y un filtro de bucle 490 para enviarse como el cuadro de referencia 495. Los coeficientes de transformación cuantificados pueden pasar también a través de un codificador de entropía 450 para enviarse como una corriente de bits 455.
Con el fin de codificar una imagen con base en un método de codificación de imagen de conformidad con una modalidad de la presente invención, todos los componentes del codificador de imagen 400, es decir, el intra pronosticador 410, el estimador de movimiento 420, el condensador de movimiento 425, el transformador ortogonal ' 430, el cuantificador 440, el codificador de entropía 450, el cuantificador inverso 460, el transformador de frecuencia inversa 470, el desbloqueador 480, y el filtro de bucle 490, realizan procesos de codificación de imagen con base en una unidad de codificación máxima, unidades de sub-codificación de conformidad con profundidades, unidades de predicción, y unidades de transformación.
La Figura 5 es un diagrama de bloque de un decodificador de imagen 500 con base en unidades de codificación, de conformidad con una modalidad de la presente invención.
Una corriente de bits 505 pasa a través de un analizador 510 para analizarse dentro de datos de imagen codificados que se van a decodificar, y codifica información requerida para decodificar los datos de imagen codificados. Los datos de imagen codificados pasan a través de un decodificador de entropía 520 y un cuantificador inverso 530 para enviarse como datos inversamente cuantificados , y pasa a través de un transformador de frecuencia inversa 540 para restaurarse como valores residuales. Los valores residuales se agregan a un resultado de intra predicción realizada por un intra pronosticador 550 y un resultado de compensación de movimiento realizado por un compensador de movimiento 560, para restaurarse a unidades de codificación. Las unidades de codificación restauradas pasan a través de un desbloqueador 570 y un filtro de bucle 580 para utilizarse para decodificar las siguientes unidades de codificación o para predecir un siguiente cuadro.
Con el fin de decodificar una imagen con base en un método de codificación de imagen de conformidad con la modalidad de la presente invención, todos los componentes del decodificador de imagen 500, es decir, el analizador 510, el decodificador de entropía 520, el cuantificador inverso 530, el transformador de frecuencia inversa 540, el intra pronosticador 550, el compensador de movimiento 560, el desbloqueador 570, y el filtro de bucle 580, realizan procesos de decodificación de imagen con base en una unidad de codificación máxima, unidades de sub-codificación de conformidad con profundidades, unidades de predicción, y unidades de transformación.
En particular, el intra pronosticador 550 y el compensador de movimiento 560 determinan unidades de predicción en las unidades de sub-codificación, y modos de predicción en consideración de la unidad de codificación máxima y las profundidades, y el transformador de frecuencia inversa 540 realiza transformación ortogonal inversa en consideración de los tamaños de las unidades de transformación.
La Figura 6 es un diagrama que muestra unidades de codificación máxima, unidades de sub-codificación, y unidades de predicción, de conformidad con la modalidad de la presente invención.
El aparato de codificación de imagen 100 ilustrado en la Figura 1 y el aparato de decodificación de imagen 200 ilustrado en. la Figura 2 utilizan unidades de codificación jerárquica con el fin de realizar codificación y decodificación en consideración de características de imagen. Una unidad de codificación máxima y una profundidad máxima pueden establecerse de forma adaptable de conformidad con y características de imagen, o pueden establecerse de forma variable de conformidad con solicitudes de un usuario.
La Figura 6 ilustra una estructura jerárquica 600 de unidades de codificación en donde una altura y un ancho de una unidad de codificación máxima 610 son 64 y 64, y una profundidad máxima es 4. Una prof ndidad aumenta de conformidad con un eje vertical de la estructura jerárquica 600 de unidades de codificación, y anchos y alturas de unidades de sub-codificación 620, 630, 640, y 650 se reducen a medida que aumenta la profundidad. También, a lo largo de un eje horizontal de la estructura jerárquica 600 de unidades de codificación, las unidades de predicción o la unidad de la unidad de codificación máxima 610 y las unidades de sub-codificación 620, 630, 640, y 650 se ilustran.
La unidad de codificación máxima 610 tiene una profundidad de cero y tiene un tamaño, es decir, ancho por altura, de 64x64. La profundidad aumenta a lo largo del eje vertical, y la unidad de sub-codificación 620 que tiene un tamaño de 32x32 y una profundidad de uno, la unidad de sub-codificación 630 tiene un tamaño de 16x16 y una profundidad de 2 , la unidad de sub-codificación 640 tiene un tamaño de 8x8 y una profundidad de 3 , y la unidad de sub-codificación 650 tiene un tamaño de 4x4 y existe una profundidad de 4. La unidad de sub-codificación 650 tiene un tamaño de 4x4 y una profundidad de 4 es una unidad de codificación mínima.
Al hacer referencia a la Figura 6, se ilustran ejemplos de unidades de predicción de conformidad con profundidades a lo largo de un eje horizontal. Es decir, la unidad de codificación máxima 610 que tiene una profundidad de cero puede incluir una unidad de predicción 610 que tiene un tamaño de 64x64, una unidad de predicción 612 que tiene un tamaño de 64x32, una unidad de predicción 614 que tiene un tamaño de 32x64, una unidad de predicción 616 que tiene un tamaño de 32x32, cuyos tamaños son iguales a o menores que el tamaño de la unidad de codificación 610, es decir, 64x64.
La unidad de codificación 620 que tiene una profundidad de 1 y un tamaño de 32x32 puede incluir una unidad de predicción 620 que tiene un tamaño de 32x32, una unidad de predicción 622 que tiene un tamaño de 32x16, una unidad de predicción 624 que tiene un tamaño de 16x32, una unidad de predicción 626 que tiene un tamaño de 16x16, esos tamaños son iguales a o menores que el tamaño de la unidad de codificación 620, es decir, 32x32.
La unidad de codificación 630 que tiene una profundidad de 2 y un tamaño de 16x16 puede incluir una unidad de predicción 630 que tienen un tamaño de 16x16, una unidad de predicción 632 que tiene un tamaño de 16x8, una unidad de predicción 634 que tiene un tamaño de 8x16, una unidad de predicción 636 que tiene un tamaño de 8x8, esos tamaños son iguales a o menores que el tamaño de la unidad de codificación 630, es decir, 16x16.
La unidad de codificación 640 que tiene una profundidad de 3 y un tamaño de 8x8 puede incluir una unidad de predicción 640 que tiene un tamaño de 8x8, una unidad de predicción 642 que tiene un tamaño de 8x4, una unidad de predicción 644 que tiene un tamaño de 4x8, una unidad de predicción 646 que tiene un tamaño de 4x4, esos tamaño son iguales a o menores que el tamaño de la unidad de codificación 640, es decir, 8x8.
Finalmente, la unidad de codificación 650 que tiene una profundidad de 4 y un tamaño de 4x4 tiene una profundidad máxima e incluye una unidad de predicción 650 que tiene un tamaño de 4x4. Sin embargo, la unidad de codificación 650 que tiene la profundidad máxima no necesita inevitablemente incluir una unidad de predicción que tiene un tamaño igual al tamaño de la unidad de codificación, y puede estar, como las otras unidades de codificación 610, 620, 630 y 640, dividida para predicción dentro de unidades de predicción que tienen un tamaño menor que el tamaño de la unidad de codificación.
La Figura 7 es un diagrama que muestra una unidad de codificación y una unidad de transformación, de conformidad con una modalidad de la presente invención.
El aparato de codificación de imagen 100 ilustrado en la Figura 1 y el aparato de decodificación de imagen 200 ilustrado en la Figura 2 codifican una unidad de codificación máxima o unidades de sub- codificación divididas de y qüe tienen tamaños menores que el tamaño de la unidad de codificación máxima. El tamaño de una unidad de transformación para realizar transformación ortogonal en un proceso de codificación puede seleccionarse para lograr la velocidad de compresión más alta sin importar una unidad de codificación y una unidad de predicción. Por ejemplo, si una unidad de codificación actual 710 tiene un tamaño de 64x64 ( la transformación ortogonal puede realizarse al utilizar una unidad de transformación 720 que tiene un tamaño de 32x32. También, una unidad de transformación que tiene un tamaño mayor que el tamaño de una unidad de codificación puede establecerse .
Las Figuras 8A y 8B son diagramas que muestran formas divididas de unidades de codificación, unidades de predicción, y unidades de transformación, de conformidad con una modalidad de la presente invención.
La Figura 8A muestra unidades de codificación y unidades de predicción de conformidad con una modalidad de la presente invención.
Un lado izquierdo de la Figura 8A muestra una forma dividida seleccionada por el aparato de codificación de imagen 100 ilustrado en la Figura 1 con el fin de codificar una unidad de codificación máxima 810. El aparato de codificación de imagen 100 divide y codifica la unidad de codificación máxima 810 en varias formas, compara las formas divididas codificadas con base en costos R-D, y selecciona una forma dividida óptima. Si la forma dividida óptima corresponde a la unidad de codificación máxima 810, la unidad de codificación máxima 810 puede codificarse directamente sin dividirla como se ilustra en la Figura 8A.
Al hacer referencia al lado izquierdo de la Figura 8A, la unidad de codificación máxima 810 que tiene una profundidad de cero está dividida y codificada en unidades de sub-codificación que tienen profundidades iguales a o mayores que l. La unidad de codificación máxima 810 está dividida en cuatro unidades de sub-codificación que tiene una profundidad de 1, y entonces todas o algunas de las unidades de sub-codificación que tienen una profundidad de uno están divididas en unidades de sub-codificación que tienen una profundidad de 2.
De entre las unidades de sub-codificación que tienen una profundidad de 1, la unidad de sub-codificación derecha superior y las unidades sub-codificación izquierda inferior están divididas en unidades de sub-codificación que tienen prof ndidades iguales a o mayores que 2. Algunas de las unidades de sub-codificación que tienen profundidades iguales a o mayores que 2 pueden estar divididas en unidades de sub-codificación que tienen profundidades iguales a o mayores que 3.
Un lado derecho de la Figura 8A muestra una forma dividida de una unidad de predicción 860 con respecto a la unidad de codificación máxima 810.
Al hacer referencia al lado derecho de la Figura 8A, la unidad de predicción 860 con respecto a la unidad de codificación máxima 810 puede dividirse de forma diferente de la unidad de codificación máxima 810. En otr,as palabras, una unidad de predicción con respecto a cada unidad de sub-codificación puede ser menor que la unidad de sub-codificación.
Por ejemplo, de entre unidades de sub-codificación que tienen una profundidad de 1, una unidad de predicción con respecto a la unidad de sub-codificación derecha inferior 854 puede ser menor que la unidad de sub-codificación 854. De entre unidades de sub-codificación 814, 816, 818, 828, 850, y 852 que tienen una profundidad de 2, las unidades de predicción con respecto a algunos unidades de sub-codificación 815, 816, 850, y 852 pueden ser menores que las unidades de sub-codificación 815, 816, 850, y 852. También, las unidades de predicción con respecto a la unidad de sub-codificación 822, 832, y 848 que tienen una profundidad de 3 pueden ser menores que la unidad , de sub-codif icación 822, 832, u 834. Una unidad de predicción puede tener una forma obtenida al dividir cada unidad de sub-codificación en 2 en una dirección de su altura o ancho, o una forma obtenida al dividir cada unidad de sub-codificación en 4 en una dirección de su altura y ancho .
La Figura 8B muestra unidades de predicción y unidades de transformación de conformidad con una modalidad de la presente invención.
Un lado izquierdo de la Figura 8B muestra una forma dividida de la unidad de predicción 860 con respecto a la unidad de transformación máxima 810 ilustrada en la Figura 8A del lado izquierdo, y un lado derecho de la Figura 8B muestra una forma dividida de una unidad de transformación 870 con respecto a la unidad de transformación máxima 810.
Al hace referencia al lado derecho de la Figura 8B, la unidad de transformación 870 puede dividirse diferente de la unidad de predicción 860.
Por ejemplo, aunque una unidad de predicción con respecto a la unidad de codificación 854 que tiene una profundidad de 1 se selecciona como una forma obtenida al dividir' una altura de la unidad de codificación 854 a la mitad, una unidad de transformación con respecto a la unidad de codificación 854 puede seleccionarse con un tamaño igual al tamaño de la unidad de codificación 854. De forma similar, aunque unidades de predicción con respecto a las unidades de codificación 814 y 850 que tienen una profundidad de 2 se seleccionan como formas obtenidas al dividir alturas de las unidades de codificación 814 y 850 a la mitad, pueden seleccionarse unidades de transformación con respecto a las unidades de codificación 814 y 850 como tamaños iguales a los tamaños de las unidades de codificación 814 y 850.
Puede seleccionarse una unidad de transformación como un tamaño menor que el tamaño de una unidad de predicción. Por ejemplo, si una unidad de predicción con respecto a la unidad de codificación 852 que tiene una profundidad de 2 se selecciona como una forma obtenida al dividir un ancho de la unidad de codificación 852 a la mitad, pues seleccionarse una unidad de transformación con una forma que tiene un tamaño menor que el tamaño de la unidad de predicción y obtenida al dividir una altura y un ancho de la unidad de codificación ' 852 a la mitad. La unidad de transformación más pequeña que tiene un tamaño de 2x2 también por establecerse. Una unidad de transformación también puede establecerse sin importar un tamaño de una unidad de codificación, por ejemplo, un tamaño mayor que el tamaño de la unidad de codificación.
Los procesos de codificación y decodificación de entropía realizados por el codificador de entropía 450 del aparato de codificación de imagen 400 ilustrados en la Figura 4., y el decodificador de entropía 520 del aparato de codificación de imagen 500 ilustrado en la Figura 5 se describirán ahora en detalle.
Como se describe anteriormente con relación a las Figuras 4 y 5, el aparato de codificación de imagen 400 y el aparato de codificación de imagen 500 codifican una unidad de codificación máxima o unidades de sub-codificación divididas de y que tienen tamaños menores que el tamaño de la unidad de codificación máxima. El tamaño de una unidad de transformación para realizar transformación ortogonal en un proceso de codificación puede seleccionarse para lograr la velocidad de compresión más alta sin importar una unidad de codificación y una unidad de predicción. Por ejemplo, si una unidad de codificación actual tiene un tamaño de 64x64, la transformación ortogonal puede realizarse al utilizar una unidad de transformación que tiene un tamaño de 32x32. También, una unidad de transformación que te un tamaño mayor que el tamaño de una unidad de codificación puede establecerse. En un proceso de codificación convencional, por ejemplo, H.264, los datos residuales transformados y cuantificados con base en una unidad de transformación que tiene un tamaño relativamente pequeño, por ejemplo, 4x4, se codifican por entropía. Sin embargo, de conformidad con una modalidad de la presente invención, ya que una unidad de transformación que se va a codificar por entropía (en lo sucesivo denominada como un 'bloque de transformación') puede tener un tamaño relativamente grande de 16x16, 32x32, 64x64, o 128x128 también así como 4x4 u 8x8 y de esa forma una longitud de una ejecución, que representa el número de coeficientes continuos que tienen un valor cero entre coeficientes de transformación significativos que tienen valores no cero, pueden aumentar, un valor de ejecución grande necesita codificarse aproximadamente. También, de conformidad con la tecnología convencional, con el fin de codificar información de coeficientes incluida en un bloque de transformación, last_significant_coeff_flag que es un elemento de sintaxis que representa si cada coeficiente de transformación significativo es un último coeficiente de transformación significativos se codifica por entropía junto con un mapa de importancia que representa ubicaciones de coeficientes de transformación significativos que tienen valores no cero. Sin embargo, si un bloque de transformación se codifica por entropía junto con el mapa de importancia y last_significant_coeff_flag, se debe determinar si cada coeficiente de transformación significativo es un último coeficiente de transformación significativo en un proceso de decodificación. De esa forma, de conformidad con la tecnología convencional, datos que representan coeficientes de transformación significativos completos pueden no identificarse fácil y directamente de una corriente de bits recibida. Por lo tanto, de conformidad con modalidades de la presente invención, se proporciona un método para codificar y decodificar eficientemente por entropía información sobre una ubicación de un último coeficiente de transformación significativo en un bloque que transformación que tiene un tamaño grande .
La Figura 9 es un diagrama de flujo de un método para codificar por entropía coeficientes de transformación, de conformidad con la modalidad de la presente invención.
Al hacer referencia a la Figura 9, en operación 910, el codificador de entropía 450 determina una ubicación de un último, coeficiente de transformación significativo de entre coeficientes de transformación significativos que tienen valores no cero e incluidos en un bloque de transformación que tiene cierto tamaño, de conformidad con cierto orden de escaneo. En más detalle, si se ingresa un bloque de transformación que incluye coeficientes de transformación obtenidos al realizar procesos de transformación y cuantificación, el codificador de entropía 450 determina coeficientes de transformación significativos incluidos en un bloque de transformación de conformidad con cierto orden de escaneo, por ejemplo, un orden de escaneo zigzag, y determina una ubicación de un último coeficiente de transformación significativo que se escaneo al último.
En operación 920, el codificador de entropía 450 codifica información sobre la ubicación del último coeficiente de transformación significativo al utilizar su ubicación de dirección de eje horizontal y su ubicación de dirección de eje vertical en el bloque de transformación. Si el último coeficiente de transformación significativo est localizado en una xa ubicación (x es un entero igual a o mayor que 0) en una dirección de eje horizontal, y una ya ubicación (y es un entero igual a o mayor que 0) en una dirección de eje vertical, desde una ubicación izquierda superior del bloque de transformación, el codificador de entropía 450 codifica los valores x e y que representan la -ubicación del último coeficiente de transformación significativo. De conformidad con una tecnología convencional, se codifica last_significant_coeff_flag que representa si cada coeficiente de transformación significativo es un último coeficiente de transformación significativo. Sin embargo, de conformidad con la modalidad de la presente invención, únicamente se codifica información de coordenadas que representa una ubicación de un último coeficiente de transformación significativo en un bloque de transformación. La información sobre la ubicación del último coeficiente de transformación significativo puede codificarse al utilizar un método CABAC o un método VLC. Se describirá a continuación un método para codificar la información sobre la ubicación del último coeficiente de transformación significativo al utilizar CABAC o VLC.
Después que se codifica la información sobre la ubicación del último coeficiente de- transformación significativo, el codificador de entropía 450 codifica información de nivel de cada coeficiente de transformación significativo localizado en el bloque de transformación. Como la información de nivel, el codificador de entropía 450 codifica un valor de signo y un valor absoluto de cada coeficiente de transformación significativo.
La Figura 10 un diagrama de referencia para describir un proceso para codificar por entropía coeficientes de transformación, de conformidad con modalidades de la presente invención.
Al hacer referencia a la Figura 10, el codificador de entropía 450 escanea coeficiente de transformación en un bloque de transformación 1000 de conformidad con un orden de escaneo zigzag. Se asume que todos los espacios vacíos en la Figura 10 representan coeficientes de transformación que tienen un valor 40'. En la Figura 10, un último coeficiente de transformación significativo es un coeficiente de transformación 1010 que tiene un valor '-?'. Como se ilustra en la Figura 10, el último coeficiente de transformación significativo 1010 que tiene un valor '-1' está localizado en una 5a ubicación en una dirección de eje horizontal y una 5a ubicación en una dirección de eje vertical, desde un coeficiente de transformación izquierdo superior. Por consiguiente, el codificador de entropía 450 decodifica valores x=5 e y=5 como información sobre una ubicación de la última información de coeficiente de transformación significativo 1010.
La Figura 11 es un diagrama de bloque de un aparato de codificación de entropía 1100 de conformidad con la modalidad de la presente invención.
Al hacer referencia a la Figura 11, el aparato de codificación de entropía 1100 incluye un interruptor 1110, un codificador CABAC 1120, y un codificador VLC 1130.
Como se describe anteriormente con relación a la Figura 9, si se determina una ubicación de un último coeficiente de transformación significativo, se codifica información sobre la ubicación del último coeficiente de transformación significativo al utilizar CABAC o VLC. El interruptor 1110 controla información sobre la ubicación del último coeficiente de transformación significativo, que está codificado en unidades de un fragmento, una imagen, y un grupo de imagen, para enviarse al CABAC 1120 o al VLC 1130. Si se codifica la información al utilizar CABAC o VLC también puede determinarse al comparar costos R-D obtenidos al utilizar CABAC y VLC.
Un método para codificar la información sobre la ubicación del último coeficiente de transformación significativo al utilizar CABAC se describirá ahora.
La Figura 12 es un diagrama de bloque de un dispositivo CABAC 1200 de conformidad con una modalidad de la presente invención.
Al hacer referencia a la Figura 12, el dispositivo CABAC 1200 principalmente incluye un binarizador 1210, un modelador de contexto 1220, y un codificador aritmético binario 1230. También, el codificador aritmético binario 1230 incluye un procesador de codificación regular 1232 y un procesador de codificación de desviación 1234.
El binarizador 1210 transforma una ubicación de dirección axial horizontal x y una ubicación de dirección axial vertical y en un bloque de transformación, que representan una ubicación de un último coeficiente de transformación significativo, en valores binarios y envía secuencias binarias. Un binario representa cada bit de la secuencia binaria. Un método para binarizar información sobre la ubicación del último coeficiente de transformación significativo incluye varios métodos de binarización tal como binarización unaria, binarización unaria truncada, binarización de Golomb unaria concatenada/de exponencial de orden ka , y binarización de longitud fija. Por ejemplo, en la Figura 10, si la ubicación del último coeficiente de transformación significativo se representa como X=5 e Y=5, los valores X e Y pueden binarizarse en X=000001 e Y=000001 al utilizar binarización unaria truncada.
La información sobre la ubicación del último coeficiente de transformación significativo, que se indica a los valores binarios por el binarizador 1210, se ingresa al modelador de contexto 1220. El modelador de contexto 1220 determina un modelo de probabilidad requerido para codificar los binarios actualmente ingresados, es decir, un contexto, con base en los valores binarios ingresados o un elemento de sintaxis previamente codificado. En particular, de conformidad con una modalidad de la presente invención, uno de los contextos previamente determinados puede seleccionarse de conformidad con la ubicación del último coeficiente de transformación significativo.
El procesador de codificación regular 1232 genera una corriente de bits al codificar aritméticamente los valores binarios ingresados con base en el modelo de probabilidad determinado por el modelador de contexto 1220.
El procesador de codificación de desviación 1234 es un procesador para enviar un valor de entrada sin comprimirlo, y codifica datos tal como datos de modulación de código de pulso (PCM, por sus siglas en inglés) .
La Figura 13 es un diagrama de referencia para describir un proceso para seleccionar un contexto para codificar información sobre una ubicación de un último coeficiente de transformación significativo, de conformidad con una modalidad de la presente invención.
El modelador de contexto 1220 selecciona uno de una pluralidad de contextos previamente preparados de conformidad con la ubicación del último coeficiente de transformación significativo. La pluralidad de contextos clasifica 0' y ' 1' de una señal binaria en símbolos más probables (MPS, por sus siglas en inglés) y símbolos menos probables (-LPS, por sus siglas en inglés) de conformidad con la ubicación del último coeficiente de transformación significativo, y establece valores de probabilidad del MPS y el LPS. Qué símbolo de x 0' y ' 1' se establece como un MPS o un LPS, y cómo establecer valores de probabilidad del MPS de y el LPS puede diseñarse de conformidad con la necesidad. La Figura 13 muestra contextos seleccionados de conformidad con la ubicación del último coeficiente de transformación significativo excepto para una ubicación izquierda superior correspondiente a un DC cuando los coeficientes de transformación en un bloque de transformación se escanean de conformidad con un orden de escaneo zigzag. Al hacer referencia a la Figura 13, el modelador de contexto 1220 incluye tres contextos que tienen índices 0, 1, y 2 con respecto a un bloque de transformación 4x4, y selecciona uno de los tres contextos que tienen índices 0, 1, y 2 de conformidad con la ubicación del último coeficiente de transformación . significativo dentro de ubicaciones en el bloque de transformación 4x4 excepto para una ubicación izquierda superior. Es decir, se selecciona el contexto que tiene un índice 0 si el último coeficiente de transformación significativo está localizado en (1,0) en el bloque de transformación 4x4, el contexto que tiene un índice 1 se selecciona si el último coeficiente de transformación significativo está localizado en (0,1), y el contexto que tiene un índice 2 se selecciona si el último coeficiente de transformación significativo está localizado en (1,1). De forma similar, el modelador de contexto 1220 incluye siete contextos que tienen índices 0 a 6 con respecto a un bloque de transformación 8x8, y selecciona uno de los siete contextos que tienen índices 0 a 6 de conformidad con la ubicación del último coeficiente de transformación significativo de entre ubicaciones en el bloque de transformación 8x8 excepto para una ubicación izquierda superior. Similarmente, el modelador de contexto 1220 incluye doce contextos que tienen índices 0 a 11 con respecto a un bloque de transformación 16x16, y selecciona uno de los doce contextos que tienen índices 0 a 11 de conformidad con la ubicación del último coeficiente de transformación significativo dentro de ubicaciones en el bloque de transformación 16x16 excepto para una ubicación izquierda superior.
El procesador de codificación regular 1232 genera una corriente de bits al codificar aritméticamente los valores binarios ingresados que representa la ubicación del último coeficiente de transformación significativo, con base en el contexto determinado por el modelador de contexto 1220. Por ejemplo, se asume que una ubicación de dirección de eje horizontal del último coeficiente de transformación significativo, es decir, X, tiene un valor 3, y que el binarizador 1210 genera una' secuencia binaria '010' al binarizar el valor 3. También se asume que, con base en el contexto seleccionado por el modelador de contexto 1220 de conformidad con la ubicación del último coeficiente de transformación significativo, un MPS es v0' que tiene un valor de probabilidad 0.8 y un LPS es ' 1' que tiene un valor de probabilidad 0.2. El procesador de codificación regular 1232 actualiza un periodo [0.1] dentro de un período [0,0.8] al dividirlo de conformidad con el valor de probabilidad de '0' que es un binario inicial para formar la secuencia de binarios l010', y actualiza el período [0,0.8] dentro de un nuevo período [0.64,0.8] de conformidad con el valor de probabilidad de '1' que es un binario siguiente. También, el procesador de codificación regular 1232 actualiza el período [0.64,0.8] dentro de un nuevo período [0.64,0.768] de conformidad con el valor de probabilidad de '0' que es un último binario. El procesador de codificación regular 1232 envía '11' obtenido al excluir un dígito inicial desde '0.11' que es un número binario de un número real 0.75 incluido en el período [0.64,0.768], como una palabra código correspondiente al valor 3 que representa la ubicación de dirección de eje horizontal del último coeficiente de transformación significativo. De forma similar, el procesador de codificación regular 1232 binariza un valor de coordenada Y que representa una ubicación de dirección de eje vertical del último coeficiente de transformación significativo, y genera una corriente de bits al codificar el valor de' coordenada Y binarizado de conformidad con el contexto seleccionado.
Además de la información descrita anteriormente sobre el ubicación del último coeficiente de transformación significativo, el CABAC 1120 ilustrado en la Figura 11 codifica coded_block_flag que representa si existe un coeficiente de transformación significativo que tiene un valor no cero en un bloque de transformación, y ¦ significant_coeff_flag que representa una ubicación de cada coeficiente de transformación significativo en el bloque de transformación. Un proceso de codificación de coded_block_flag y significant_coeff_flag puede ser el mismo que el proceso de codificación H.264 convencional. Por ejemplo, al hacer referencia a la Figura 14 que muestra un mapa de importancia 1400 correspondiente a la Figura 10, el mapa de importancia 1400 puede representarse al establecer significant_coeff_flag [i] como 1 si un coeficiente de transformación que tiene un i-th orden de escaneo es un coeficiente de transformación significativo, y establecer significant_coeff_flag [i] como 0 si el coeficiente de transformación que tiene un i-th orden de escaneo es 0. El mapa de importancia 1400 puede codificarse al utilizar quince modelos de probabilidad como en H.264.
Después que se codifica la información sobre la ubicación del último coeficiente de transformación significativo, el codificador de entropía 450 codifica información de nivel de cada coeficiente de transformación significativo localizado en el bloque de transformación.
La Figura 15 es un diagrama de referencia para describir un proceso para codificar valores de nivel de coeficientes de transformación significativos incluidos en el bloque de transformación 1000 ilustrado en la Figura 10.
Al hace referencia a las Figuras 10 y 15, el codificador de entropía 450 escanea los coeficientes de transformación ilustrados en la Figura 10 desde el coeficiente de transformación izquierdo superior al último coeficiente de transformación significativo de conformidad con un orden de escaneo zigzag y obtiene coeficientes de transformación unidimensionalmente alineados como se ilustra en la Figura 15.
El codificador de entropía 450 codifica los coeficientes de transformación unidimensionalmente alineados al utilizar una ejecución que representa el número de coeficientes continuos que tienen un valor 0 entre coeficientes de transformación significativos, y un nivel que representa un valor de cada coeficiente de transformación significativo, como en H.264 convencional. En más detalle, el codificador de entropía 450 determina la ejecución y el nivel en un orden opuesto al orden de escaneo, es decir, en una dirección desde un lado derecho hacia un lado izquierdo de la Figura 15, y codifica la ejecución y el nivel al utilizar cierta tabla VLC.
La Figura 16 es un diagrama que muestra un ejemplo de una pluralidad de tablas VLC, VLCO a VLC8 utilizadas de conformidad con una modalidad de la presente invención. El codificador de entropía 450 puede seleccionar una de las tablas VLC, VLCO a VLC8 de conformidad con la ubicación del último coeficiente de transformación significativo y puede codificar la ejecución y el nivel al utilizar la tabla VLC seleccionada. Por ejemplo, como se ilustra en la Figura 15, VLC se realiza sobre ejecuciones 1530, 1540, 1550, y 1560 que representan los números de coeficientes de transformación continuos que tiene un valor 0 entre coeficientes de transformación significativos desde un último coeficiente de transformación significativo 1510 que tiene un valor '-?', al utilizar la tabla VLC Ya que un bloque de transformación de conformidad con una modalidad de la presente invención puede tener un tamaño grande igual a o mayor que 16x16, puede aumentar un valor de ejecución. Por ejemplo, si una tabla VLC cubre valores de ejecución únicamente desde 0 a 63 y un valor de ejecución es mayor que 63, el valor puede no codificarse al utilizar la tabla VLC. Por consiguiente, de conformidad con una modalidad de la presente invención, en consideración de un valor de ejecución máximo disponible por una tabla VLC, si un bloque de transformación tiene un valor de ejecución mayor que el valor de ejecución máximo, el codificador de entropía 450 codifica valores de ejecución iguales a o menores que el valor de ejecución máximo y entonces codifica los otros •valores de ejecución. Por ejemplo, si el valor de ejecución máximo es 63 y un valor de ejecución que se va a codificar es 70, el valor de ejecución 70 está dividido en valores de ejecución 63 y 7 y los valores de ejecución 63 y 7 se codifican separadamente como información de ejecución.
De conformidad con otra modalidad de la presente invención, la ubicación (x, y) del último coeficiente de transformación significativo también puede codificarse al utilizar VLC diferente al CABAC descrito anteriormente. Es decir, el codificador de entropía 450 puede realizar VLC sobre los valores x e y con referencia a una tabla VLC previamente preparada de conformidad con los valores x e y.
La Figura 17 es un diagrama de referencia para describir un método para codificar por entropía coeficientes de transformación, de conformidad con otra modalidad de la presente invención.
De conformidad con la modalidad actual, el codificador de entropía 450 divide un bloque de transformación en sub bloques que tienen cierto tamaño, e información de códigos sobre una ubicación de un último coeficiente de transformación significativo en un sub bloque que tiene el último coeficiente de transformación significativo, junto con un índice del sub bloque. En la Figura 17, se asume que (Sa, b) representa un coeficiente de transformación en un sub bloque a y que tiene un b° índice de escaneo. Al hacer referencia a la Figura 17, si se asume que el último coeficiente de transformación significativo es (SI, 12) en un sub bloque 1 1771, el codificador de entropí 450 codifica (2.2) que representa la ubicación del último coeficiente de transformación significativo (SI, 12) en el sub bloque 1 1771 como la información sobre la ubicación del último coeficiente de transformación significativo en el sub bloque, junto con cierto índice que representa el sub bloque 1 1771.
Al hace referencia de nuevo a la Figura 10, de conformidad con otra modalidad de la presente invención, los coeficientes de transformación se codifican al utilizar la última información de coeficiente de transformación significativo 1010 en el bloque de transformación 1000 (en lo sucesivo denominado como un 'primer coeficiente de transformación significativo' ) y un coeficiente de transformación significativo 1020 previo al primer último coeficiente de transformación significativo 1010 (en lo sucesivo denominado como un 'segundo último coeficiente de transformación significativo'). En más detalle, el codificador de entropía 450 codifica (3, 4) que representa la ubicación del segundo último coeficiente de transformación significativo 1020 como se escribe anteriormente. Entonces, el codificador de entropía 450 codifica un valor de ejecución entre el primer y el segundo últimos coeficientes de transformación significativos 1010 y 1020. Como se escribe anteriormente, si la ubicación del segundo último coeficiente de transformación significativo 1020 se conoce, la ubicación del primer último coeficiente de transformación significativo 1010 puede obtenerse al agregar el valor de ejecución entre el primer y el segundo últimos coeficientes de transformación significativo 1010 y 1020 para la ubicación del segundo último coeficiente de transformación significativo 1020.
Las Figuras 18A y 18B son diagramas de referencia para describir un método para codificar por entropía coeficientes de transformación, de conformidad con otra modalidad de la presente invención.
El codificador de entropía 450 puede seleccionar una dirección de escaneo correspondiente a uno de un orden de escaneo zigzag y un orden de escaneo zigzag inverso de conformidad con ese orden se escanea primero un último coeficiente de transformación significativo, es decir, de conformidad con si el último coeficiente de transformación significativo está cerca de una ubicación izquierda superior o una ubicación derecha inferior de un bloque de transformación, y puede codificar información sobre una ubicación del último coeficiente de transformación significativo junto con un índice que representa la dirección de escaneo seleccionada. Por ejemplo, como se ilustra en la Figura 18A, si el número de referencia 1812 denota una ubicación central, un último coeficiente de transformación significativo 1802 está localizado más cerca de la ubicación izquierda superior. En este caso, el codificador de entropía 450 puede codificar información sobre una ubicación del último coeficiente de transformación significativo 1811 junto con un índice (un índice de escaneo hacia adelante) que representa una dirección de escaneo desde la ubicación izquierda superior. También, como se ilustra en la Figura 18B, si el número de referencia 1822 denota una ubicación central y un último coeficiente de transformación significativo 1821 está localizado más cerca de la ubicación derecha inferior, el codificador de entropía 450 puede codificar información sobre una ubicación del último coeficiente de transformación significativo 1821 junto con un índice (un índice de escaneo hacia atrás) que representa una dirección escaneo desde la ubicación derecha inferior.
De conformidad con otra modalidad de la presente invención, con el fin de codificar un valor de ejecución, puede establecerse cierta ejecución global y puede representarse el valor de ejecución al utilizar un cociente y un residuo obtenido cuando se divide el valor de ejecución por la ejecución global (refinación de ejecución) . Por ejemplo, se asume que el valor de ejecuciones 78 y la ejecución global tiene un valor 16. En este caso, cuando 78 se divide por 16, un cociente es 4 y un residuo es 14. Por consiguiente, el valor de ejecución 78 puede representarse al utilizar 16 que es el valor de la ejecución global, 4 que es el valor del cociente, y 14 que es el valor del residuo. El codificador de entropía 450 puede codificar información sobre la ejecución global, el cociente, y el residuo al utilizar VLC o CABAC. Si un codificador y un decodificador previamente estableció la misma ejecución global, puede no codificarse adicionalmente información sobre la ejecución global.
También, de conformidad con otra modalidad de la presente invención, el codificador de entropía 450 puede codificar información sobre una ubicación de un último coeficiente de transformación significativo al aplicar diferentes tablas VLC de conformidad con el tamaño de un bloque de transformación incluyendo el último coeficiente de transformación significativo.
La Figura 19 es un diagrama de flujo de un método para decodificar por entropía coeficientes de transformación, de conformidad con una modalidad de la presente invención.
Al hace referencia a la Figura 19, en operación 1910, el decodificador de entropía 520 extrae información sobre una ubicación de dirección de eje horizontal y una ubicación de dirección de eje vertical de un último coeficiente de transformación significativo que tiene un valor no cero e incluida en un bloque de transformación, desde una corriente de bits recibida de conformidad con cierto orden de escaneo. Como se escribe anteriormente con relación a la Figura 9, si el último coeficiente de transformación significativo está localizado en una x-th ubicación (x es un entero igual a o mayor que 0) en una dirección de eje horizontal, y una y-th ubicación (y es un entero igual a o mayor que 0) en una dirección de eje vertical, desde una ubicación izquierda superior del bloque de transformación, la información sobre una ubicación del último coeficiente de transformación significativo incluye los valores x e y.
En operación 1920, el decodificador de entropía 520 determina una ubicación del último coeficiente de transformación significativo al decodificar la información sobre la ubicación de dirección de eje horizontal y la ubicación de dirección de eje vertical. El decodificador de entropía 520 decodifica la información sobre la ubicación del último coeficiente de transformación significativo al utilizar decodificación aritmética binaria adaptable a contexto (CABAD, por sus siglas en inglés) o decodificación de longitud variable (VLD, por sus siglas en inglés) como un proceso inverso al proceso de codificación realizado por el codificador de entropía 450, y determina la ubicación del último coeficiente de transformación significativo. En más detalle, el decodificador de entropía 520 puede realizar VLD sobre la ubicación de dirección de eje horizontal y ubicación de dirección de eje vertical del último coeficiente de transformación significativo con referencia a cierta tabla de referencia VLC. También, el decodificador de entropía 520 puede seleccionar uno de una pluralidad de contextos de conformidad con la ubicación del último coeficiente de transformación significativo, y puede realizar CABAD sobre la información alrededor de la ubicación del último coeficiente de transformación significativo de conformidad con el contexto seleccionado En operación 1930, el decodificador de entropía 520 decodifica información de ejecución y nivel incluida en la corriente de bits, al utilizar la ubicación del último coeficiente de transformación significativo. Si una longitud de una ejecución es mayor que cierto valor de umbral, el decodificador de entropía 520 decodifica información de ejecución de una longitud al valor de umbral, y entonces decodifica información de ejecución de una longitud mayor que el valor de umbral. Como se escribe anteriormente con relación a la Figura 16, si el valor de umbral se establece para codificar valores de ejecuciones a 63, un valor de ejecución 70 está dividido en valores de ejecución 63 y 7 y entonces los valores de ejecución 63 y 7 se codifican de forma separada. De esa forma, el decodificador de entropía 520 puede decodificar el valor de ejecución 70 al decodificar de forma separada y entonces combinar los valores de ejecución 63. y 7.
La Figura 20 es un diagrama de bloque de un aparato de decodificación de entropía 2000 de conformidad con una modalidad de la presente invención Al hacer referencia a la Figura 20, el aparato de decodificación entropía 2000 incluye un interruptor 2010, una CABAD 2020, y una VLD 2030.
El interruptor 2010 envía información sobre coeficientes de transformación codificados a una de la CABAD 2020 y la VLD 2030 al utilizar información de modo de codificación de los coeficientes de transformación, .que se establecen en unidades de un fragmento, una imagen, y un grupo de imagen.
La VLD 2030 puede realizar VLD sobre una ubicación de dirección de eje horizontal y una ubicación de dirección de eje vertical de un último coeficiente de transformación significativo con referencia a cierta tabla de referencia VLC. También, la CABAD 2020 puede seleccionar uno de la pluralidad de contextos de conformidad con la ubicación del último coeficiente de transformación significativo, y puede realizar CABAD sobre información alrededor de la ubicación del último coeficiente de transformación significativo de conformidad con el contexto seleccionado.
La presente invención también puede implementarse como código legible por computadora sobre un medio de grabación legible por computadora. El medio de grabación legible por computadora es cualquier dispositivo de almacenamiento de datos que puede almacenar datos que pueden leerse después de eso por un sistema de computadora. Ejemplos del medio de grabación legible por computadora incluyen memoria de sólo lectura (ROM, por sus siglas en inglés), memoria de acceso aleatorio (RAM, por sus siglas en inglés) , CD-ROM, cintas magnéticas, discos flexibles, dispositivos de almacenamiento de datos ópticos, etc. El medio de grabación legible por computadora también puede distribuirse en sistemas de computadora acoplados a red para que el código legible por computadora se almacene y ejecute en una forma distribuida .
Aunque la presente invención ha sido particularmente mostrada y descrita con referencia a modalidades ilustrativas de la misma, se entenderá por un experto la técnica que pueden hacerse ahí varios cambios en forma y detalles sin apartarse del espíritu y alcance de la invención como se define por las siguientes reivindicaciones. Por lo tanto, el alcance de la invención se define no por la descripción detallada de la invención sino por las siguientes reivindicaciones, y todas las diferencias dentro del alcance se interpretarán como estando 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 codificar por entropía coeficientes de transformación, caracterizado porque comprende : determinar una ubicación de un último coeficiente de transformación significativo que tiene un valor no cero de entre coeficiente de transformación incluidos en un bloque de transformación que' tiene cierto tamaño, de conformidad con cierto orden de escaneo; e información de codificación sobre la ubicación del último coeficiente de transformación significativo al utilizar su ubicación de dirección de eje horizontal y su ubicación de dirección de eje vertical en el bloque de transformación.
2. - El método de conformidad con la reivindicación 1, caracterizado porque la codificación de la información sobre la ubicación del último coeficiente de transformación significativo comprende, si el último coeficiente de transformación significativo está localizado en una x-th ubicación (x es un entero igual a o mayor que 0) en una dirección de eje horizontal, y una y-th ubicación (y es un entero igual a o mayor que 0) en una dirección de eje vertical, desde una ubicación izquierda superior del bloque de transformación, codificando los valores x e y que representan la ubicación del último coeficiente de transformación significativo.
3. - El método de conformidad con la reivindicación 1, caracterizado porque la codificación de la información sobre la ubicación del último coeficiente de transformación significativo comprende realizar VLC sobre información alrededor de la ubicación de dirección de eje horizontal y la ubicación de dirección de eje vertical del último coeficiente de transformación significativo.
4. - El método de conformidad con la reivindicación 3, caracterizado porque la codificación de la información sobre la ubicación del último coeficiente de transformación significativo comprende realizar VLC sobre la información alrededor de la ubicación de dirección de eje horizontal y la ubicación de dirección de eje vertical del último coeficiente de transformación significativo con referencia a cierta tabla de referencias VLC.
5. - El método de conformidad con la reivindicación 3, caracterizado porque además comprende codificar información de ejecución que representa el número de coeficientes continuos que tienen un valor 0 entre coeficiente de transformación significativos e información de nivel de los coeficientes de transformación significativos, de conformidad con un orden de escaneo inverso, en donde la codificación de la información de ejecución comprende, si una longitud de una ejecución es mayor que cierto valor de umbral, codificar información de ejecución de una longitud al valor de umbral y entonces codificar información de ejecución de una longitud mayor que el valor de umbral.
6. - El método de conformidad con la reivindicación 1, caracterizado porque la codificación de la información sobre la ubicación del último coeficiente de transformación significativo además comprende: binarizar información sobre la ubicación de dirección de eje horizontal y la ubicación de dirección de eje vertical del último coeficiente de transformación significativo; seleccionar un contexto utilizado para codificar la' información binarizada; y realizar CABAC sobre la información binarizada de conformidad con el contexto seleccionado.
7. - El método de conformidad con la reivindicación 6, caracterizado porque la selección del contexto comprende seleccionar uno de uno de los contextos previamente determinados de conformidad con la ubicación del último coeficiente de transformación significativo.
8. - Un método para decodificar por entropía coeficientes de transformación, caracterizado porque "comprende: extraer información sobre una ubicación de dirección de eje horizontal y una ubicación de dirección de eje vertical de un último coeficiente de transformación significativo que tiene un valor no cero e incluido en un bloque de transformación, desde una corriente de bits recibida de conformidad con cierto orden de escaneo ; y determinar una ubicación del último coeficiente de transformación significativo al decodificar la información sobre la ubicación de dirección de eje horizontal y la ubicación de dirección de eje vertical.
9. - El método de conformidad con la reivindicación 8, caracterizado porque la determinación de la ubicación del último coeficiente de transformación significativo comprende, si el último coeficiente de transformación significativo está localizado en una x-th ubicación (x es un entero igual a o mayor que 0) en una dirección de eje horizontal, y una y-th ubicación (y es un entero igual o mayor que 0) en una dirección de eje vertical, desde una ubicación izquierda superior del bloque de transformación, decodificar los valores x e y que representan la ubicación del último coeficiente de transformación significativo.
10. - El método de conformidad con la reivindicación 8, caracterizado porque la determinación de la ubicación del último coeficiente de transformación significativo comprende realizar VLD sobre la información alrededor de la ubicación de dirección de eje horizontal y la ubicación de dirección de eje vertical del último coeficiente de transformación significativo.
11. - El método de conformidad con la reivindicación 10, caracterizado porque la determinación de la ubicación del último coeficiente de transformación significativo comprende realizar VLD sobre la información alrededor de la ubicación de dirección de eje horizontal y la ubicación de dirección de eje vertical del último coeficiente de transformación significativo con referencia a cierta tabla de referencias VLC.
12. - El método de conformidad con la reivindicación 10, caracterizado porque además comprende decodificar información de ejecución que representa el número de coeficientes continuos que tienen un valor 0 entre coeficientes de transformación significativos e información de nivel de los coeficientes de transformación significativos, de conformidad con un orden de escaneo inverso, en donde la decodificación de la información de ejecución comprende, si una longitud de una ejecución es mayor que cierto valor de umbral, decodificar información de ejecución de una longitud al valor de umbral y entonces decodificar información de ejecución de una longitud mayor que el valor de umbral .
13. - El método de conformidad reivindicación 8, caracterizado porque la determinación de la ubicación del último coeficiente de transformación significativo además comprende: seleccionar un contexto utilizado para decodificar información binarizada sobre la ubicación de dirección de eje horizontal y la ubicación de dirección de eje vertical del último coeficiente de transformación significativo; y realizar CABAD sobre la información binarizada de conformidad con el contexto seleccionado.
14. - El método de conformidad con la reivindicación 13, caracterizado porque la selección del contexto comprende seleccionar uno de los contextos previamente determinados de conformidad con la ubicación del último coeficiente de transformación significativo.
15. - El método de conformidad con la reivindicación 13, caracterizado porque además comprende decodificar un mapa de importancia que representa ubicaciones de coeficientes de transformación significativos en el bloque de transformación, y valores de nivel de los coeficientes de transformación significativos .
MX2013000344A 2010-07-09 2011-07-08 Metodo y aparato para codificar/decodificar por entropia un coeficiente de transformacion. MX2013000344A (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US36284410P 2010-07-09 2010-07-09
PCT/KR2011/005034 WO2012005551A2 (ko) 2010-07-09 2011-07-08 변환 계수의 엔트로피 부호화/복호화 방법 및 장치

Publications (1)

Publication Number Publication Date
MX2013000344A true MX2013000344A (es) 2013-03-20

Family

ID=45441682

Family Applications (1)

Application Number Title Priority Date Filing Date
MX2013000344A MX2013000344A (es) 2010-07-09 2011-07-08 Metodo y aparato para codificar/decodificar por entropia un coeficiente de transformacion.

Country Status (27)

Country Link
US (4) US9414063B2 (es)
EP (6) EP3293976B1 (es)
JP (4) JP5873084B2 (es)
KR (8) KR101733794B1 (es)
CN (5) CN103098469B (es)
AU (5) AU2011274680B2 (es)
BR (4) BR122020013778B1 (es)
CA (2) CA2804939C (es)
CY (5) CY1117981T1 (es)
DK (5) DK3104617T3 (es)
ES (5) ES2648061T3 (es)
HR (5) HRP20161151T1 (es)
HU (5) HUE030382T2 (es)
LT (5) LT3104617T (es)
MX (1) MX2013000344A (es)
MY (5) MY184131A (es)
NO (1) NO3104617T3 (es)
PH (4) PH12015500944A1 (es)
PL (5) PL3101900T3 (es)
PT (5) PT3104616T (es)
RS (5) RS55152B1 (es)
RU (4) RU2530341C1 (es)
SG (2) SG10201703211YA (es)
SI (5) SI2592832T1 (es)
SM (1) SMT201600310B (es)
WO (1) WO2012005551A2 (es)
ZA (4) ZA201300699B (es)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011259205A (ja) 2010-06-09 2011-12-22 Sony Corp 画像復号化装置と画像符号化装置およびその方法とプログラム
MY184131A (en) * 2010-07-09 2021-03-19 Samsung Electronics Co Ltd Method and apparatus for entropy encoding/decoding a transform coefficient
US10091529B2 (en) * 2010-07-09 2018-10-02 Samsung Electronics Co., Ltd. Method and apparatus for entropy encoding/decoding a transform coefficient
ES2688086T3 (es) * 2010-11-26 2018-10-30 Nec Corporation Dispositivo de descodificación de video, método de descodificación de video y programa
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
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
US20120163456A1 (en) 2010-12-22 2012-06-28 Qualcomm Incorporated Using a most probable scanning order to efficiently code scanning order information for a video block in video coding
US10992958B2 (en) 2010-12-29 2021-04-27 Qualcomm Incorporated Video coding using mapped transforms and scanning modes
US9338449B2 (en) 2011-03-08 2016-05-10 Qualcomm Incorporated Harmonized scan order for coding transform coefficients in video coding
US9106913B2 (en) 2011-03-08 2015-08-11 Qualcomm Incorporated Coding of transform coefficients for video coding
US9167253B2 (en) * 2011-06-28 2015-10-20 Qualcomm Incorporated Derivation of the position in scan order of the last significant transform coefficient in video coding
ES2797423T3 (es) 2011-06-28 2020-12-02 Samsung Electronics Co Ltd Procedimiento de codificación y decodificación de vídeo usando codificación aritmética con una señalización bidimensional del último coeficiente significativo
US9756360B2 (en) * 2011-07-19 2017-09-05 Qualcomm Incorporated Coefficient scanning in video coding
US9154792B2 (en) * 2011-11-08 2015-10-06 Qualcomm Incorporated Progressive coding of position of last significant coefficient
AU2012200319B2 (en) 2012-01-19 2015-11-26 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding the significance map for residual coefficients of a transform unit
SG11201404240PA (en) 2012-01-20 2014-08-28 Fraunhofer Ges Forschung Transform coefficient coding
EP2810440A1 (en) * 2012-02-04 2014-12-10 General Instrument Corporation Devices and methods for context reduction in last significant coefficient position coding
KR20130116754A (ko) * 2012-04-16 2013-10-24 주식회사 팬택 엔트로피 부복호화 방법 및 이러한 방법을 사용하는 장치
DK3361734T3 (da) * 2012-07-02 2020-01-02 Samsung Electronics Co Ltd Entropikodning af en video og entropiafkodning af en video
EP2946553B1 (en) * 2013-01-16 2019-01-02 BlackBerry Limited Transform coefficient coding for context-adaptive binary entropy coding of video
CN104104958B (zh) * 2013-04-08 2017-08-25 联发科技(新加坡)私人有限公司 图像解码方法及其图像解码装置
US9215464B2 (en) * 2013-09-19 2015-12-15 Blackberry Limited Coding position data for the last non-zero transform coefficient in a coefficient group
KR102250088B1 (ko) * 2013-10-24 2021-05-10 삼성전자주식회사 비디오 스트림을 복호화하는 방법 및 장치
US10805644B2 (en) 2015-09-08 2020-10-13 Samsung Electronics Co., Ltd. Device and method for entropy encoding and decoding
WO2017041271A1 (en) * 2015-09-10 2017-03-16 Mediatek Singapore Pte. Ltd. Efficient context modeling for coding a block of data
WO2017043763A1 (ko) * 2015-09-10 2017-03-16 삼성전자 주식회사 부호화 장치, 복호화 장치, 그 부호화 및 복호화 방법
EP3270594A1 (en) * 2016-07-15 2018-01-17 Thomson Licensing Method and apparatus for advanced cabac context adaptation for last coefficient coding
WO2018030294A1 (ja) * 2016-08-10 2018-02-15 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法及び復号方法
US10244261B2 (en) * 2017-01-26 2019-03-26 Google Llc Transform coefficient coding using level maps
CN115297324A (zh) 2017-04-13 2022-11-04 Lg 电子株式会社 熵编码和解码视频信号的方法和设备
CN108881909A (zh) * 2017-05-09 2018-11-23 富士通株式会社 扫描顺序生成方法和扫描顺序生成设备
WO2019078693A1 (ko) * 2017-10-20 2019-04-25 에스케이텔레콤 주식회사 영상 부호화 또는 복호화하기 위한 장치 및 방법
CN109874012B (zh) * 2017-12-04 2020-09-11 北京金山云网络技术有限公司 一种视频编码方法、编码器、电子设备及介质
KR102653848B1 (ko) * 2017-12-13 2024-04-02 삼성전자주식회사 비디오 복호화 방법 및 그 장치 및 비디오 부호화 방법 및 그 장치
TWI737143B (zh) 2019-01-25 2021-08-21 聯發科技股份有限公司 帶有變換塊級別約束的變換係數編碼的方法和設備
HRP20231091T1 (hr) * 2019-03-12 2023-12-22 Lg Electronics Inc. Kodiranje slike temeljeno na transformaciji
KR20200141399A (ko) * 2019-06-10 2020-12-18 주식회사 엑스리스 영상 신호 부호화/복호화 방법 및 이를 위한 장치
JP2022537160A (ja) 2019-06-19 2022-08-24 エルジー エレクトロニクス インコーポレイティド 変換に基づく映像コーディング方法及びその装置
CN115842916A (zh) * 2019-08-27 2023-03-24 杭州海康威视数字技术股份有限公司 解码方法、编码方法及装置
CN114556932B (zh) * 2019-09-24 2023-05-23 北京达佳互联信息技术有限公司 用于视频编解码的无损编解码模式
CN113489980B (zh) * 2021-08-13 2022-10-25 北京大学深圳研究生院 一种点云属性变换系数的熵编码和熵解码的方法及设备

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11331612A (ja) 1998-05-19 1999-11-30 Canon Inc 画像処理装置及び方法及び記憶媒体
JP2003153228A (ja) * 2001-11-15 2003-05-23 Sony Corp 画像符号化装置及び画像復号化装置
DE50305419D1 (de) 2002-05-02 2006-11-30 Fraunhofer Ges Forschung Kodierung und Dekodierung von Transformationskoeffizienten in Bild- oder Videokodierern
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
JP2007043651A (ja) * 2005-07-05 2007-02-15 Ntt Docomo Inc 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号装置、動画像復号方法及び動画像復号プログラム
US20080130989A1 (en) 2005-07-22 2008-06-05 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US8599925B2 (en) 2005-08-12 2013-12-03 Microsoft Corporation Efficient coding and decoding of transform blocks
KR100772870B1 (ko) * 2005-12-12 2007-11-02 삼성전자주식회사 Fgs 계층의 블록에 포함되는 계수의 특성에 따라 비디오신호를 부호화하고 복호화하는 방법 및 장치
JP4379444B2 (ja) * 2006-07-26 2009-12-09 ソニー株式会社 復号化方法、復号化方法のプログラム、復号化方法のプログラムを記録した記録媒体、復号化装置
CN101321060B (zh) * 2007-06-07 2011-06-08 管海明 一种用于编码和译码数字消息的方法和系统
JP5261376B2 (ja) * 2007-09-21 2013-08-14 パナソニック株式会社 画像符号化装置および画像復号化装置
KR20090097013A (ko) * 2008-03-10 2009-09-15 삼성전자주식회사 영상 부호화장치 및 영상 복호화장치
KR101375668B1 (ko) * 2008-03-17 2014-03-18 삼성전자주식회사 변환 계수의 부호화, 복호화 방법 및 장치
KR20090129926A (ko) * 2008-06-13 2009-12-17 삼성전자주식회사 영상 부호화 방법 및 그 장치, 영상 복호화 방법 및 그 장치
EP2154894A1 (en) * 2008-08-15 2010-02-17 Thomson Licensing Video coding with coding of the locations of significant coefficients in a block of coefficients
US8406307B2 (en) * 2008-08-22 2013-03-26 Microsoft Corporation Entropy coding/decoding of hierarchically organized data
US7804428B2 (en) 2008-11-10 2010-09-28 Apple Inc. System and method for compressing a stream of integer-valued data
KR101457894B1 (ko) * 2009-10-28 2014-11-05 삼성전자주식회사 영상 부호화 방법 및 장치, 복호화 방법 및 장치
MY184131A (en) * 2010-07-09 2021-03-19 Samsung Electronics Co Ltd Method and apparatus for entropy encoding/decoding a transform coefficient
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
KR101571618B1 (ko) 2011-04-15 2015-11-24 블랙베리 리미티드 마지막 유효 계수의 위치를 코딩 및 디코딩하는 방법 및 장치

Also Published As

Publication number Publication date
JP2013537737A (ja) 2013-10-03
HUE035097T2 (en) 2018-05-02
HRP20161151T1 (hr) 2016-11-18
EP3293976A1 (en) 2018-03-14
CY1119266T1 (el) 2018-02-14
CN103098469A (zh) 2013-05-08
KR102592909B1 (ko) 2023-10-23
CN105791845A (zh) 2016-07-20
SI3101901T1 (sl) 2017-10-30
RS56577B1 (sr) 2018-02-28
DK3104616T3 (en) 2017-09-18
PH12015500945B1 (en) 2015-06-29
CA2921710C (en) 2019-07-30
KR20120005984A (ko) 2012-01-17
EP3104616A1 (en) 2016-12-14
SMT201600310B (it) 2016-11-10
KR102118694B1 (ko) 2020-06-03
MY184131A (en) 2021-03-19
LT3104617T (lt) 2017-12-11
EP3104616B1 (en) 2017-08-30
CA2804939A1 (en) 2012-01-12
KR20200064047A (ko) 2020-06-05
AU2018282456B2 (en) 2019-11-07
AU2017261624B2 (en) 2018-09-27
ES2648061T3 (es) 2017-12-28
LT3101900T (lt) 2017-09-25
US9414063B2 (en) 2016-08-09
RU2530341C1 (ru) 2014-10-10
CN105791846A (zh) 2016-07-20
ZA201300699B (en) 2015-11-25
KR20210000297A (ko) 2021-01-04
AU2015218476B2 (en) 2016-05-19
SI3101900T1 (sl) 2017-10-30
JP6356865B2 (ja) 2018-07-11
HUE036472T2 (hu) 2018-07-30
RS55152B1 (sr) 2017-01-31
ES2653152T3 (es) 2018-02-06
AU2011274680B2 (en) 2015-06-11
JP6140850B2 (ja) 2017-05-31
DK3101900T3 (en) 2017-09-18
LT2592832T (lt) 2016-10-10
EP2592832A4 (en) 2015-08-12
SI2592832T1 (sl) 2016-10-28
CN105791845B (zh) 2019-01-04
BR122021004665B1 (pt) 2023-01-24
RU2614544C2 (ru) 2017-03-28
BR112013000558B1 (pt) 2023-01-24
RS56253B1 (sr) 2017-11-30
KR101984826B1 (ko) 2019-09-03
KR102196431B1 (ko) 2020-12-29
PH12015500945A1 (en) 2015-06-29
JP2018174551A (ja) 2018-11-08
RU2686626C1 (ru) 2019-04-29
PL3104616T3 (pl) 2017-10-31
NO3104617T3 (es) 2018-04-14
PH12015500944B1 (en) 2015-06-29
US10021421B2 (en) 2018-07-10
RU2014133412A (ru) 2016-03-10
CN105847811A (zh) 2016-08-10
PT2592832T (pt) 2016-09-20
AU2018282456A1 (en) 2019-01-24
WO2012005551A3 (ko) 2012-05-03
US20160330483A1 (en) 2016-11-10
PT3101901T (pt) 2017-09-08
PH12015500943A1 (en) 2015-06-29
LT3101901T (lt) 2017-09-25
KR20170063459A (ko) 2017-06-08
DK3101901T3 (en) 2017-09-18
LT3104616T (lt) 2017-09-25
KR20220083648A (ko) 2022-06-20
AU2016213718A1 (en) 2016-08-25
EP3104617A1 (en) 2016-12-14
MY193092A (en) 2022-09-26
RS56250B1 (sr) 2017-11-30
EP3104617B1 (en) 2017-11-15
KR102517346B1 (ko) 2023-04-04
HRP20171318T1 (hr) 2017-10-20
PH12015500942B1 (en) 2015-06-29
BR112013000558A2 (pt) 2016-07-05
SI3104617T1 (sl) 2017-12-29
MY184224A (en) 2021-03-27
PT3104616T (pt) 2017-09-08
AU2016213718B2 (en) 2017-08-31
DK2592832T3 (da) 2016-09-26
PL3101900T3 (pl) 2017-11-30
KR20210156250A (ko) 2021-12-24
US9743112B2 (en) 2017-08-22
MY184097A (en) 2021-03-17
EP3101900A1 (en) 2016-12-07
KR20190062349A (ko) 2019-06-05
PH12015500944A1 (en) 2015-06-29
CA2921710A1 (en) 2012-01-12
EP2592832A2 (en) 2013-05-15
US20160330482A1 (en) 2016-11-10
DK3104617T3 (da) 2017-11-27
CY1119264T1 (el) 2018-02-14
PL3101901T3 (pl) 2017-10-31
ES2653160T3 (es) 2018-02-06
AU2011274680A1 (en) 2013-02-07
AU2017261624A1 (en) 2017-12-07
ZA201502810B (en) 2017-01-25
PT3104617T (pt) 2017-11-23
KR101733794B1 (ko) 2017-05-10
CN105828077A (zh) 2016-08-03
CY1117981T1 (el) 2017-05-17
HRP20171316T1 (hr) 2017-10-20
PL3104617T3 (pl) 2018-01-31
CN105791846B (zh) 2019-01-04
SI3104616T1 (sl) 2017-10-30
SG10201703211YA (en) 2017-06-29
SG195591A1 (en) 2013-12-30
CA2804939C (en) 2016-05-10
CN105847811B (zh) 2019-06-07
US20130114731A1 (en) 2013-05-09
PH12015500943B1 (en) 2015-06-29
EP3101901B1 (en) 2017-08-30
ZA201502806B (en) 2016-10-26
BR122020013774B1 (pt) 2023-01-24
JP2016105623A (ja) 2016-06-09
RS56254B1 (sr) 2017-11-30
RU2656811C1 (ru) 2018-06-06
MY175536A (en) 2020-07-01
EP3293976B1 (en) 2021-09-01
ES2590705T3 (es) 2016-11-23
CY1119732T1 (el) 2018-06-27
PL2592832T3 (pl) 2016-12-30
JP5873084B2 (ja) 2016-03-01
HUE030382T2 (en) 2017-05-29
HUE035095T2 (en) 2018-05-02
HUE035084T2 (en) 2018-05-02
BR122020013778B1 (pt) 2023-01-24
US20160330447A1 (en) 2016-11-10
JP2017175636A (ja) 2017-09-28
ES2648315T3 (es) 2017-12-29
US10021420B2 (en) 2018-07-10
CN105828077B (zh) 2019-03-15
ZA201502807B (en) 2016-10-26
JP6574025B2 (ja) 2019-09-11
PT3101900T (pt) 2017-09-08
EP2592832B1 (en) 2016-09-07
WO2012005551A2 (ko) 2012-01-12
HRP20171316T8 (hr) 2017-12-01
CN103098469B (zh) 2016-06-08
HRP20171771T1 (hr) 2017-12-29
EP3101901A1 (en) 2016-12-07
EP3101900B1 (en) 2017-08-30
HRP20171317T1 (hr) 2017-11-17
AU2015218476A1 (en) 2015-09-17
KR20230048271A (ko) 2023-04-11
PH12015500942A1 (en) 2015-06-29
CY1119267T1 (el) 2018-02-14

Similar Documents

Publication Publication Date Title
KR102196431B1 (ko) 변환 계수의 엔트로피 부호화/복호화 방법 및 장치
US20180020239A1 (en) Method and apparatus for entropy encoding/decoding a transform coefficient

Legal Events

Date Code Title Description
FG Grant or registration