ES2688347T3 - Procedimiento y aparato de codificación de bloque residual, y procedimiento y aparato de decodificación de bloque residual - Google Patents

Procedimiento y aparato de codificación de bloque residual, y procedimiento y aparato de decodificación de bloque residual Download PDF

Info

Publication number
ES2688347T3
ES2688347T3 ES15158614.6T ES15158614T ES2688347T3 ES 2688347 T3 ES2688347 T3 ES 2688347T3 ES 15158614 T ES15158614 T ES 15158614T ES 2688347 T3 ES2688347 T3 ES 2688347T3
Authority
ES
Spain
Prior art keywords
unit
frequency band
transformation
effective
units
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES15158614.6T
Other languages
English (en)
Inventor
Min-Su Cheon
Jung-Hye Min
Woo-Jin Han
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
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
Application granted granted Critical
Publication of ES2688347T3 publication Critical patent/ES2688347T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/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/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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • 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/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • 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/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • H04N19/635Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by filter definition or implementation details
    • 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/96Tree coding, e.g. quad-tree coding

Abstract

Un aparato para decodificar una imagen, comprendiendo el aparato: un extractor configurado para extraer, de un flujo de bits, información de división de una unidad de codificación actual indicando si la unidad de codificación actual se divide en unidades de codificación de menor profundidad, en el que la unidad de codificación actual se divide jerárquicamente desde una unidad de codificación máxima, cuando la información de división de la unidad de codificación actual indica que la unidad de codificación actual ya no se divide en unidades de codificación de la menor profundidad, extraer, del flujo de bits, información sobre un modo de predicción de la unidad de codificación actual indicando un intra-modo o un inter-modo e información sobre un tipo de partición indicando un tamaño de una unidad de predicción obtenida de la unidad de codificación actual y obtener, del flujo de bits, un aviso de bloque codificado que indica si un bloque residual de transformación obtenido de la unidad de codificación actual incluye al menos un coeficiente de transformación efectiva que no es cero; cuando el aviso de bloque codificado indica que el bloque residual de transformación incluye al menos un coeficiente de transformación efectiva que no es cero, obtener avisos de coeficiente efectivos para una pluralidad de unidades de banda de frecuencia, en el que los avisos de coeficiente efectivos para la pluralidad de unidades de bandas de frecuencia se obtienen a partir de unidades de banda de frecuencia excepto una primera unidad de banda de frecuencia correspondiente a la banda de frecuencia más baja entre la pluralidad de unidades de bandas de frecuencia, incluyéndose la pluralidad de unidades de banda de frecuencia en el bloque residual de transformación, cuando un aviso de coeficiente efectivo de una segunda unidad de banda de frecuencia indica que la segunda unidad de banda de frecuencia incluye al menos un coeficiente de transformación efectivo que no es cero, obtener coeficientes de transformación de la segunda unidad de banda de frecuencia en base a un mapa de significancia que indica ubicaciones de coeficientes de transformación efectivos que no son cero existentes en la segunda unidad de banda de frecuencia e información de nivel de los coeficientes de transformación efectivos que no son cero existentes en la segunda unidad de banda de frecuencia obtenida a partir del flujo de bits, y cuando el aviso de coeficiente efectivo de la segunda unidad de banda de frecuencia indica que la segunda unidad de banda de frecuencia no incluye al menos un coeficiente de transformación efectivo que no es cero, determinar los coeficientes de transformación de la segunda unidad de banda de frecuencia como cero, cuando el aviso de bloque codificado indica que el bloque residual de transformación incluye al menos un coeficiente de transformación efectivo que no es cero, obtener coeficientes de transformación de la primera unidad de banda de frecuencia en base a un mapa de significancia que indica ubicaciones de coeficientes de transformación efectivos que no son cero existentes en la primera unidad de banda de frecuencia e información de nivel de los coeficientes de transformación efectivos que no son cero existentes en la primera unidad de banda de frecuencia obtenida a partir del flujo de bits; y un decodificador configurado para realizar una transformación inversa en el bloque residual de transformación, configurándose dicho decodificador para realizar una intra-predicción o una inter-predicción en la unidad de predicción en base a la información sobre el modo de predicción y la información sobre el tipo de partición; en el que la segunda unidad de banda de frecuencia es una de la pluralidad de unidades de banda de frecuencia obtenidas del bloque residual de transformación y diferente de la primera unidad de banda de frecuencia, en el que una forma de la unidad de codificación máxima es un cuadrado que tiene una anchura y una longitud en potencias de 2, en el que una forma de la unidad de codificación actual es un cuadrado, y en el que una forma del bloque residual de transformación es un cuadrado, Y en el que la pluralidad de unidades de bandas de frecuencia obtenidas del bloque residual de transformación tienen el mismo tamaño.

Description

5
10
15
20
25
30
35
40
45
50
DESCRIPCIÓN
Procedimiento y aparato de codificación de bloque residual, y procedimiento y aparato de decodificación de bloque residual
Campo técnico
Aparatos y procedimientos consistentes con las realizaciones de ejemplo se refieren a codificación y decodificación, y de manera más particular, a la codificación y decodificación de un bloque residual.
Antecedentes de la técnica
Puesto que el hardware para la reproducción y almacenamiento de contenido de video de alta resolución o alta calidad está siendo desarrollado y suministrado, se está incrementando la necesidad de un códec de video para codificar o decodificar, de manera efectiva, el contenido de video de alta resolución o alta calidad. En el códec de video de la técnica relacionada, un video es codificado de acuerdo con un modo limitado de codificación en función de un macrobloque que tiene un tamaño predeterminado. Asimismo, el códec de video de la técnica relacionada codifica el bloque residual utilizando una unidad de transformación que tiene un tamaño pequeño, tal como de 4x4 u 8x8.
Divulgación
Problema técnico
El códec de video de la técnica relacionada codifica un bloque residual utilizando solo una unidad de transformación que tiene un tamaño pequeño, tal como de 4x4 u 8x8.
En este respecto, se indica que el documento de la técnica anterior D. MARPE ET AL: “Context-based adaptative binary arithmetic coding in the H.264/AVC video compression standard”, IEEE TRANSACTIONS ON CIRCUItS AND SYSTEMS FOR VIDEO TECHNOLOGY, vol. 13, n.° 7, 1 de julio de 2003, páginas 620-636, ISSN: 1051-8215, DOI: 10.1109/TCSVT.2003.815173 considera el problema de codificación eficiente de coeficientes de transformada usando señales y mapas de significancia.
Además, los documentos de la técnica anterior TOPIWALA P N ET AL: “Local zerotree coding”, IMAGE PROCESSING, 1999. ICIP 99. PROCEEDINGS. 1999 INTERNATIONAL CONFERENCE EN KOBE, JAPÓN, 24-28 OCT. 1999, IEEE, PISCATAWAY, NJ, EE.UU. vol. 2, 24 de octubre de 1999, páginas 279-282, DOI: 10.1109/ICIP.1999.822900 ISBN: 978-0-7803-5467-8 y EP 1 408 695 A2 (NTT DOCOMO INC [JP]), 14 de abril de 2004, consideran el problema de codificación eficiente de los coeficientes de transformada dividiendo los bloques de transformada en pequeños grupos.
Además, se indica que el documento de la técnica anterior KIM J ET AL: “Enlarging MB size for high fidelity video coding beyond HD”, 36. VCEG MEETING; - ; SAN DIEGO, EE.UU.; (VIDEO CODING EXPERTS GROUP OF ITU-T SG. 16), n.° VCEG-AJ21, 5 de octubre de 2008, (), ISSN: 0000-0086 considera el problema de mejora de la señalización de estructura de codificación para tamaños de bloque grandes modificando la sintaxis de H.264.
Solución técnica
Realizaciones de ejemplo proporcionan un aparato para la codificación y la decodificación, de manera eficiente, de la información de coeficiente efectivo de transformación en un bloque residual de transformación que tiene un tamaño grande.
Efectos ventajosos
De acuerdo con una o más realizaciones de ejemplo, un aviso de coeficiente efectivo que indica la existencia de un coeficiente efectivo de transformación es generado de acuerdo con las unidades de banda de frecuencia, de modo que el proceso de exploración de una banda de frecuencia salta el bloque residual de transformación en el cual no existe un coeficiente efectivo de transformación, y es reducido el número de bits generados para codificar el coeficiente efectivo de transformación.
La invención se establece en el aparato para decodificar de la reivindicación 1.
Todas las apariciones de la palabra “realización(es)”, excepto las relacionadas con las características de la reivindicación 1 se refieren a ejemplos útiles para entender la invención, que se presentaron originalmente, pero que no representan realizaciones de la invención actualmente reivindicada; estos ejemplos todavía se muestran por motivos ilustrativos solamente.
5
10
15
20
25
30
35
40
45
Descripción de los dibujos
La figura 1 es un diagrama de bloques de un aparato de codificación de video de acuerdo con una realización de ejemplo;
La figura 2 es un diagrama de bloques de un aparato de decodificación de video de acuerdo con una realización de ejemplo;
La figura 3 es un diagrama que describe un concepto de las unidades de codificación de acuerdo con una realización de ejemplo;
La figura 4 es un diagrama de bloques de un codificador de imagen en función de las unidades de codificación, de acuerdo con una realización de ejemplo;
La figura 5 es un diagrama de bloques de un decodificador de imagen en función de las unidades de codificación, de acuerdo con una realización de ejemplo;
La figura 6 es un diagrama que ilustra las unidades de codificación más profunda de acuerdo con las profundidades y las particiones de acuerdo con una realización de ejemplo;
La figura 7 es un diagrama que describe la relación entre una unidad de codificación y las unidades de transformación, de acuerdo con una realización de ejemplo;
La figura 8 es un diagrama que describe la información de codificación de las unidades de codificación que corresponde con una profundidad codificada, de acuerdo con una realización de ejemplo;
La figura 9 es un diagrama de unidades de codificación más profunda de acuerdo con las profundidades, de acuerdo con una realización de ejemplo;
Las figuras 10-12 son diagramas que describen la relación entre las unidades de codificación, las unidades de predicción, y las unidades de transformación, de acuerdo con una o más realizaciones de ejemplo;
La figura 13 es un diagrama que describe la relación entre una unidad de codificación, una unidad de predicción o una partición, y una unidad de transformación, de acuerdo con la información de modo de codificación de la Tabla 1 de ejemplo más adelante, de acuerdo con una realización de ejemplo;
Las figuras 14A-14C son diagramas de referencia que describen un proceso de codificación de un bloque residual de transformación en un campo de la técnica relacionada;
La figura 15 es un diagrama de bloques de un aparato para la codificación de un bloque residual, de acuerdo con una realización de ejemplo;
Las figuras 16A-16J son diagramas que describen la división de un bloque residual de transformación en unidades predeterminadas de banda de frecuencia, de acuerdo con una o más realizaciones de ejemplo;
Las figuras 17A y 17B son diagramas de referencia que describen un proceso de codificación de un coeficiente efectivo de transformación, de acuerdo con una o más realizaciones de ejemplo;
Las figuras 18A y 18B son diagramas de referencia que describen en detalle un proceso de codificación de un bloque residual, de acuerdo con una realización de ejemplo;
Las figuras 19A y 19B son diagramas de referencia que describen la información de codificación de un bloque residual de transformación, que es generado por un codificador de coeficiente efectivo, de acuerdo con una o más realizaciones de ejemplo;
La figura 20 es un diagrama de flujo que ilustra un procedimiento de codificación de un bloque residual, de acuerdo con una realización de ejemplo;
La figura 21 es un diagrama de bloque de un aparato para la decodificación de un bloque residual, de acuerdo con una realización de ejemplo; y
La figura 22 es un diagrama de flujo que ilustra un procedimiento de decodificación de un bloque residual, de acuerdo con una realización de ejemplo.
Mejor modo
De acuerdo con un aspecto de una realización de ejemplo, se proporciona un aparato de codificación de una imagen como se define en las reivindicaciones.
5
10
15
20
25
30
35
40
45
50
55
Modo para la invención
De aquí en adelante, las realizaciones de ejemplo serán descritas de manera más completa con referencia a las figuras que la acompañan. Se entiende que las expresiones tales como "al menos una de", cuando preceden una lista de elementos, modifican la lista total de elementos y no modifican los elementos individuales de la lista.
En las realizaciones de ejemplo, una unidad de codificación es una unidad de codificación de datos en la cual son codificados los datos de imagen en el lado del codificador y una unidad de datos codificados en la cual los datos codificados de imagen son decodificados en el lado del decodificador. Asimismo, la profundidad codificada se refiere a la profundidad en la cual es codificada una unidad de codificación.
La figura 1 es un diagrama de bloques de un aparato 100 de codificación de video, de acuerdo con una realización de ejemplo. Con referencia a la figura 1, el aparato 100 de codificación de video incluye un divisor 110 de unidad de codificación máxima, un determinador 120 de unidad de codificación y una unidad 130 de salida.
El divisor 110 de unidad de codificación máxima podría dividir la imagen actual de una imagen basada en una unidad de codificación máxima para la imagen actual. Si la imagen actual es más grande que la unidad de codificación máxima, los datos de imagen de la imagen actual podrían ser divididos al menos en una unidad de codificación máxima. La unidad de codificación máxima de acuerdo con una realización de ejemplo podría ser una unidad de datos que tiene un tamaño de 32 x 32, 64 x 64, 128 x 128, 256 x 256, etc., en el que la forma de la unidad de datos es un cuadrado que tiene un ancho y una altura en cuadros de 2. Los datos de imagen podrían salir hacia el determinador 120 de unidad de codificación de acuerdo por lo menos con una unidad de codificación máxima.
Una unidad de codificación de acuerdo con una realización de ejemplo podría ser caracterizada por un tamaño máximo y una profundidad. La profundidad indica el número de veces que la unidad de codificación es espacialmente dividida a partir de la unidad de codificación máxima, y a medida que se profundiza la profundidad o se incrementa, las unidades de codificación más profunda de acuerdo con las profundidades podrían ser divididas a partir de la unidad de codificación máxima en una unidad de codificación mínima. La profundidad de la unidad de codificación máxima es la profundidad más alta y la profundidad de la unidad de codificación mínima es la profundidad más baja. Debido a que el tamaño de la unidad de codificación que corresponde con cada profundidad disminuye a medida que se profundiza la profundidad de la unidad de codificación máxima, la unidad de codificación que corresponde con la profundidad más alta podría incluir una pluralidad de las unidades de codificación que corresponde con las profundidades más bajas.
Como se describió con anterioridad, los datos de imagen de la imagen actual son divididos en las unidades de codificación máxima de acuerdo con el tamaño máximo de la unidad de codificación, y cada una de las unidades de codificación máxima podría incluir las unidades de codificación más profunda que son divididas de acuerdo con las profundidades. Debido a que la unidad de codificación máxima de acuerdo con una realización de ejemplo es dividida de acuerdo con las profundidades, los datos de imagen de un dominio espacial incluidos en la unidad de codificación máxima podrían ser jerárquicamente clasificados de acuerdo con las profundidades.
La profundidad máxima y el tamaño máximo de una unidad de codificación, que limitan el número total de veces que la altura y el ancho de la unidad de codificación máxima pueden ser jerárquicamente divididos, podrían predeterminarse.
El determinador 120 de unidad de codificación codifica al menos una región dividida obtenida mediante la división de una región de la unidad de codificación máxima de acuerdo con las profundidades, y determina la profundidad para dar salida a los datos codificados de imagen de acuerdo al menos con una región dividida. Es decir, el determinador 120 de unidad de codificación determina la profundidad codificada mediante la codificación de los datos de imagen en las unidades de codificación más profunda de acuerdo con las profundidades, en función de la unidad de codificación máxima de la imagen actual, y seleccionando la profundidad que tiene el menor error de codificación. De esta manera, los datos codificados de imagen de la unidad de codificación que corresponde con la profundidad codificada determinada son salidos hacia la unidad 130 de salida. Asimismo, las unidades de codificación que corresponden con la profundidad codificada podrían ser consideradas como las unidades codificadas de codificación.
La profundidad codificada determinada y los datos codificados de imagen de acuerdo con la profundidad codificada determinada son salidos hacia la unidad 130 de salida.
Los datos de imagen en la unidad de codificación máxima son codificados en función de las unidades de codificación más profunda que corresponden al menos con una profundidad igual o por debajo de la profundidad máxima, y los resultados de la codificación de los datos de imagen son comparados en función de cada una de las unidades de codificación más profunda. La profundidad que tiene el error menor de codificación podría ser seleccionada después de comparar los errores de codificación de las unidades de codificación más profunda. Al menos una profundidad codificada podría ser seleccionada para cada unidad de codificación máxima.
El tamaño de la unidad de codificación máxima es dividido a medida que una unidad de codificación es jerárquicamente dividida de acuerdo con las profundidades, y a medida que se incrementa el número de las
5
10
15
20
25
30
35
40
45
50
55
unidades de codificación. Asimismo, incluso si las unidades de codificación corresponden con la misma profundidad en una unidad de codificación máxima, se determina si se divide cada una de las unidades de codificación que corresponde con la misma profundidad en una profundidad más baja a través de la medición de un error de codificación de los datos de imagen de cada unidad de codificación, en forma separada. En consecuencia, aun cuando los datos de imagen son incluidos en una unidad de codificación máxima, los datos de imagen son divididos en regiones de acuerdo con las profundidades y los errores de codificación podrían diferir de acuerdo con las regiones en la unidad de codificación máxima, y de esta manera, las profundidades codificadas podrían diferir de acuerdo con las regiones en los datos de imagen. Por lo tanto, una o más de las profundidades codificadas podrían ser determinadas en una unidad de codificación máxima, y los datos de imagen de la unidad de codificación máxima podrían ser divididos de acuerdo con las unidades de codificación por lo menos de una profundidad codificada.
En consecuencia, el determinador 120 de unidad de codificación podría determinar las unidades de codificación que tienen una estructura de árbol incluida en la unidad de codificación máxima. Las unidades de codificación que tienen una estructura de árbol de acuerdo con una realización de ejemplo incluyen unidades de codificación que corresponden con una profundidad determinada para que sea la profundidad codificada, de entre las unidades de codificación más profunda incluidas en la unidad de codificación máxima. Una unidad de codificación de una profundidad codificada podría ser jerárquicamente determinada de acuerdo con las profundidades en la misma región de la unidad de codificación máxima, y podría ser independientemente determinada en diferentes regiones. De manera similar, la profundidad codificada en la región actual podría ser independientemente determinada de la profundidad codificada en otra región.
Una profundidad máxima de acuerdo con una realización de ejemplo es un índice relacionado con el número de veces de división de una unidad de codificación máxima en una unidad de codificación mínima. Una primera profundidad máxima de acuerdo con una realización de ejemplo podría indicar el número total de veces de división de la unidad de codificación máxima en la unidad de codificación mínima. Una segunda profundidad máxima de acuerdo con una realización de ejemplo podría indicar el número total de niveles de profundidad de la unidad de codificación máxima en la unidad de codificación mínima. Por ejemplo, cuando la profundidad de la unidad de codificación máxima es 0, la profundidad de una unidad de codificación en la cual la unidad de codificación máxima es dividida una vez podría ser establecida en 1, y la profundidad de la unidad de codificación en la cual la unidad de codificación máxima es dividida dos veces podría ser establecida en 2. Aquí, si la unidad de codificación mínima es una unidad de codificación en la cual la unidad de codificación máxima es dividida cuatro veces, existen 5 niveles de profundidad de las profundidades 0, 1, 2, 3 y 4. De esta manera, la primera profundidad máxima podría ser establecida en 4 y la segunda profundidad máxima podría ser establecida en 5.
La codificación de predicción y transformación podrían ser realizadas de acuerdo con la unidad de codificación máxima. La codificación de predicción y la transformación también son realizadas en función de las unidades de codificación más profunda de acuerdo con una profundidad igual o las profundidades menores que la profundidad máxima, en función de la unidad de codificación máxima. La transformación podría ser realizada de acuerdo con un procedimiento de transformación ortogonal o transformación de entero.
Debido a que se incrementa el número de unidades de codificación más profunda cada vez que es dividida la unidad de codificación máxima de acuerdo con las profundidades, la codificación, tal como la codificación de predicción y la transformación es realizada en todas las unidades de codificación más profunda generadas a medida que se profundiza la profundidad. Por conveniencia de la descripción, la codificación de predicción y la transformación serán descritas de aquí en adelante en función de una unidad de codificación de la profundidad actual, en una unidad de codificación máxima.
El aparato 100 de codificación de video podría seleccionar, en forma variable, al menos uno de un tamaño y la forma de una unidad de datos para la codificación de los datos de imagen. Con el propósito de codificar los datos de imagen, las operaciones, tales como la codificación de predicción, la transformación y la codificación de entropía, podrían ser realizadas, y en este momento, podría ser utilizada la misma unidad de datos para todas las operaciones o podrían ser utilizadas diferentes unidades de datos para cada operación.
Por ejemplo, el aparato 100 de codificación de video podría seleccionar una unidad de codificación para la codificación de los datos de imagen y una unidad de datos diferente de la unidad de codificación para así realizar la codificación de predicción en los datos de imagen en la unidad de codificación.
Con el propósito de realizar la codificación de predicción en la unidad de codificación máxima, la codificación de predicción podría ser realizada en función de una unidad de codificación que corresponde con una profundidad codificada, es decir, en función de una unidad de codificación que ya no es más dividida en unidades de codificación que corresponden con una profundidad más baja. De aquí en adelante, la unidad de codificación que ya no es más dividida y se convierte en una unidad de base para la codificación de predicción que será referida como una unidad de predicción. Una partición obtenida mediante la división de la unidad de predicción podría incluir una unidad de predicción o una unidad de datos obtenida mediante la división al menos de uno de la altura y el ancho de la unidad de predicción.
5
10
15
20
25
30
35
40
45
50
55
Por ejemplo, cuando una unidad de codificación de 2N x 2N (en donde N es un entero positivo) ya no es más dividida y se convierte en una unidad de predicción de 2N x 2N, el tamaño de una partición podría ser 2N x 2N, 2N x N, N x 2N o N x N. Los ejemplos de un tipo de partición incluyen particiones simétricas que son obtenidas al dividir en forma simétrica al menos uno de la altura y el ancho de la unidad de predicción, las particiones obtenidas al dividir en forma asimétrica la altura o el ancho de la unidad de predicción (tal como 1:n o n:1), las particiones que son obtenidas al dividir en forma geométrica la unidad de predicción, y las particiones que tienen formas arbitrarias.
Un modo de predicción de la unidad de predicción podría ser al menos uno de un intra-modo, un inter-modo y un modo de salto. Por ejemplo, el intra-modo o el inter-modo podrían ser realizados en la partición de 2N x 2N, 2N x N, N x 2N o N x N. En este caso, el modo de salto solo podría ser realizado en la partición de 2N x 2N. La codificación es realizada, de manera independiente, en una unidad de predicción de una unidad de codificación, con lo cual, se selecciona un modo de predicción que tiene el error menor de codificación.
El aparato 100 de codificación de video también podría realizar la transformación en los datos de imagen en una unidad de codificación en función de la unidad de codificación para la codificación de los datos de imagen y en una unidad de datos que es diferente de la unidad de codificación.
Con el propósito de realizar la transformación en la unidad de codificación, la transformación podría ser realizada en función de una unidad de datos que tiene el tamaño más pequeño o igual a la unidad de codificación. Por ejemplo, la unidad de datos para la transformación podría incluir una unidad de datos para un intra-modo y una unidad de datos para un inter-modo.
Una unidad de datos utilizada como la base de la transformación será referida de aquí en adelante como una unidad de transformación. La profundidad de transformación que indica el número de veces de división para conseguir la unidad de transformación mediante la división de la altura y el ancho de la unidad de codificación también podría ser colocada en la unidad de transformación. Por ejemplo, en una unidad de codificación actual de 2N x 2N, la profundidad de transformación podría ser de 0 cuando el tamaño de la unidad de transformación también es 2N x 2N, podría ser de 1 cuando cada uno de la altura y el ancho de la unidad de codificación actual es dividido en dos partes iguales, totalmente divididas en 4A1 unidades de transformación, y el tamaño de la unidad de transformación de esta manera, es N x N, y podría ser de 2 cuando cada uno de la altura y el ancho de la unidad de codificación actual es dividido en cuatro partes iguales, totalmente divididas en 4A2 unidades de transformación, y el tamaño de la unidad de transformación es de esta manera, de N/2 x N/2. Por ejemplo, la unidad de transformación podría ser colocada de acuerdo con estructura jerárquica de árbol, en la cual una unidad de transformación de una profundidad más alta de transformación es dividida en cuatro unidades de transformación de una profundidad más baja de transformación de acuerdo con las características jerárquicas de una profundidad de transformación.
De manera similar a la unidad de codificación, la unidad de transformación en la unidad de codificación podría ser dividida, en forma recursiva en regiones de tamaño más pequeño, de modo que la unidad de transformación podría ser independientemente determinada en unidades de regiones. De esta manera, los datos residuales en la unidad de codificación podrían ser divididos de acuerdo con la transformación que tiene la estructura de árbol de acuerdo con las profundidades de transformación.
La información de codificación de acuerdo con las unidades de codificación que corresponde con una profundidad codificada utiliza la información acerca de la profundidad codificada y la información relacionada con la codificación de predicción y transformación. En consecuencia, el determinador de unidad de codificación 120 determina la profundidad codificada que tiene el error menor de codificación y determina el tipo de partición en la unidad de predicción, el modo de predicción de acuerdo con las unidades de predicción y el tamaño de una unidad de transformación para la transformación.
Las unidades de codificación de acuerdo con una estructura de árbol en una unidad de codificación máxima y un procedimiento de determinación de una partición, de acuerdo con las realizaciones de ejemplo, serán descritos en detalle más adelante con referencia a las figuras 3 a 12.
El determinador 120 de unidad de codificación podría medir el error de codificación de unidades de codificación más profunda de acuerdo con las profundidades utilizando la Optimización de Relación-Distorsión en función de los multiplicadores de LaGrange.
La unidad 130 de salida da salida a los datos de imagen de la unidad de codificación máxima, que son codificados en función al menos de una profundidad codificada determinada por el determinador 120 de unidad de codificación, y la información acerca del modo de codificación de acuerdo con la profundidad codificada, en flujos de bits.
Los datos codificados de imagen podrían ser obtenidos al codificar los datos residuales de una imagen.
La información acerca del modo de codificación de acuerdo con la profundidad codificada podría incluir al menos uno de la información acerca de la profundidad codificada, el tipo de partición en la unidad de predicción, el modo de predicción y el tamaño de la unidad de transformación.
5
10
15
20
25
30
35
40
45
50
55
La información acerca de la profundidad codificada podría ser definida utilizando la información de división de acuerdo con las profundidades, que indica si la codificación es realizada en las unidades de codificación de una profundidad más baja el lugar de la profundidad actual. Si la profundidad actual de la unidad de codificación actual es la profundidad codificada, los datos de imagen en la unidad de codificación actual son codificados y salidos. En este caso, la información de división podría ser definida para no dividir la unidad de codificación actual en una profundidad más baja. Alternativamente, si la profundidad actual de la unidad de codificación actual no es la profundidad codificada, la codificación es realizada en la unidad de codificación de la profundidad más baja. En este caso, la información de división podría ser definida para dividir la unidad de codificación actual a fin de obtener las unidades de codificación de la profundidad más baja.
Si la profundidad actual no es la profundidad codificada, la codificación es realizada en la unidad de codificación que es dividida en la unidad de codificación de la profundidad más baja. En este caso, debido a que al menos existe una unidad de codificación de la profundidad más baja en una unidad de codificación de la profundidad actual, la codificación es realizada, en forma repetida, en cada unidad de codificación de la profundidad más baja, y de esta manera, la codificación podría ser realizada, en forma recursiva, para las unidades de codificación que tienen la misma profundidad.
Debido a que las unidades de codificación que tienen una estructura de árbol son determinadas para una unidad de codificación máxima, y la información acerca al menos de un modo de codificación es determinada para una unidad de codificación de una profundidad codificada, la información acerca al menos de un modo de codificación podría ser determinada para una unidad de codificación máxima. Asimismo, la profundidad codificada de los datos de imagen de la unidad de codificación máxima podría ser diferente de acuerdo con las ubicaciones debido a que los datos de imagen son jerárquicamente divididos de acuerdo con las profundidades, y de esta manera, la información acerca de la profundidad codificada y el modo de codificación podría ser establecida para los datos de imagen.
En consecuencia, la unidad 130 de salida podría asignar la información de codificación acerca de una profundidad codificada correspondiente y un modo de codificación al menos a una de la unidad de codificación, la unidad de predicción, y una unidad mínima incluida en la unidad de codificación máxima.
La unidad mínima de acuerdo con una realización de ejemplo es una unidad rectangular de datos obtenida mediante la división de la unidad de codificación mínima de la profundidad más baja entre 4. Alternativamente, la unidad mínima podría ser una unidad rectangular máxima de datos que podría ser incluida en todas las unidades de codificación, las unidades de predicción, las unidades de partición, y las unidades de transformación incluidas en la unidad de codificación máxima.
Por ejemplo, la información de codificación salida a través de la unidad 130 de salida podría ser clasificada en la información de codificación de acuerdo con las unidades de codificación y la información de codificación de acuerdo con las unidades de predicción. La información de codificación de acuerdo con las unidades de codificación podría incluir la información acerca del modo de predicción y el tamaño de las particiones. La información de codificación de acuerdo con las unidades de predicción podría incluir la información acerca de la dirección estimada de un intermodo, un índice de imagen de referencia del inter-modo, un vector de movimiento, un componente croma de un intra-modo, y un procedimiento de interpolación del intra-modo. Asimismo, la información acerca del tamaño máximo de la unidad de codificación definida de acuerdo con imágenes, rebanadas, o GOP, y la información acerca de la profundidad máxima podrían ser insertadas al menos en uno de un Conjunto de Parámetro de Secuencia (SPS) o un encabezado de un flujo de bits.
En el aparato 100 de codificación de video, la unidad de codificación más profunda podría ser una unidad de codificación obtenida dividiendo entre dos al menos uno de la altura y el ancho de una unidad de codificación de una profundidad más alta, que es una capa por encima. Por ejemplo, cuando el tamaño de la unidad de codificación de la profundidad actual es 2N x 2N, el tamaño de la unidad de codificación de la profundidad más baja podría ser N x N. Asimismo, la unidad de codificación de la profundidad actual que tiene el tamaño de 2N x 2N podría incluir un máximo de 4 unidades de codificación de la profundidad más baja.
En consecuencia, el aparato 100 de codificación de video podría formar las unidades de codificación que tienen la estructura de árbol al determinar las unidades de codificación que tienen una forma óptima y un tamaño óptimo para cada unidad de codificación máxima, en función del tamaño de la unidad de codificación máxima y la profundidad máxima determinados considerando las características de la imagen actual. Asimismo, debido a que la codificación podría ser realizada en cada unidad de codificación máxima utilizando cualquiera uno de varios modos de predicción y transformaciones, el modo óptimo de codificación podría ser determinado considerando las características de la unidad de codificación de varios tamaños de imagen.
De esta manera, si es codificada una imagen que tiene alta resolución o una gran cantidad de datos en un macrobloque de la técnica relacionada, se incrementa el número de macrobloques por imagen de manera excesiva. En consecuencia, se incrementa el número de piezas de la información comprimida que es generada para cada macrobloque, y de esta manera, es difícil transmitir la información comprimida y disminuye la eficiencia de la compresión de datos. Sin embargo, utilizando el aparato 100 de codificación de video de acuerdo con una realización de ejemplo, podría ser incrementada la eficiencia de la comprensión de imagen debido a que una unidad
5
10
15
20
25
30
35
40
45
50
55
de codificación es ajustada mientras se consideran las características de una imagen y se incrementa el tamaño máximo de una unidad de codificación mientras se considera el tamaño de la imagen.
La figura 2 es un diagrama de bloques de un aparato 200 de decodificación de video de acuerdo con una realización de ejemplo.
Con referencia a la figura 2, el aparato 200 de decodificación de video incluye un receptor 210, un extractor 220 de información de codificación y datos de imagen y un decodificador 230 de datos de imagen. Las definiciones de varios términos, tales como una unidad de codificación, una profundidad, una unidad de predicción, y una unidad de transformación, y la información acerca de varios modos de codificación para varias operaciones del aparato 200 de decodificación de video son similares a las descritas con anterioridad con referencia a la figura 1.
El receptor 210 recibe y analiza un flujo de bits de un video codificado. El extractor 220 de información de codificación y datos de imagen extrae los datos codificados de imagen para cada unidad de codificación del flujo analizado de bits, en el que las unidades de codificación tienen una estructura de árbol de acuerdo con cada unidad de codificación máxima, y da salida a los datos extraídos de imagen hacia el decodificador 230 de datos de imagen. El extractor 220 de información de codificación y datos de imagen podría extraer la información acerca del tamaño máximo de una unidad de codificación de una imagen actual el encabezado acerca de la imagen actual o un SPS.
Asimismo, el extractor 220 de información de codificación y datos de imagen extrae la información acerca de la profundidad codificada y el modo de codificación para las unidades de codificación que tienen una estructura de árbol de acuerdo con cada unidad de codificación máxima, del flujo analizado de bits. La información extraída acerca de la profundidad codificada y el modo de codificación es salida hacia el decodificador 230 de datos de imagen. Es decir, los datos de imagen en un flujo de bits son divididos en la unidad de codificación máxima de modo que el decodificador 230 de datos de imagen decodifica los datos de imagen para cada unidad de codificación máxima.
La información acerca de la profundidad codificada y el modo de codificación de acuerdo con la unidad de codificación máxima podría ser establecida para la información al menos acerca de la unidad de codificación que corresponde con la profundidad codificada, y la información acerca de un modo de codificación podría incluir la información al menos acerca de un tipo de partición de una correspondiente unidad de codificación que corresponde con la profundidad codificada, el modo de predicción y el tamaño de una unidad de transformación. Asimismo, la información de división de acuerdo con las profundidades podría ser extraída como la información acerca de la profundidad codificada.
La información acerca de la profundidad codificada y el modo de codificación de acuerdo con cada unidad de codificación máxima extraídos por el extractor 220 de información de codificación y datos de imagen es la información acerca de la profundidad codificada y el modo de codificación determinados para generar un error de codificación mínima cuando un codificador, tal como un aparato 100 de codificación de video de acuerdo con una realización de ejemplo, realiza, en forma repetida, la codificación para cada unidad de codificación más profunda en función de las profundidades de acuerdo con cada unidad de codificación máxima. En consecuencia, el aparato 200 de decodificación de video podría restaurar la imagen decodificando los datos de imagen de acuerdo con la profundidad codificada y el modo de codificación que genera el error de codificación mínima.
Debido a que la codificación de la información acerca de la profundidad codificada y el modo de codificación podría ser asignada a una unidad predeterminada de datos de entre una correspondiente unidad de codificación, una unidad de predicción, y una unidad mínima, el extractor 220 de información de codificación y datos de imagen podría extraer la información acerca de la profundidad codificada y el modo de codificación de acuerdo con las unidades predeterminadas de datos. Las unidades predeterminadas de datos en las cuales la misma información acerca de la profundidad codificada y el modo de codificación es asignada, podrían ser las unidades de datos incluidas en la misma unidad de codificación máxima.
El decodificador 230 de datos de imagen restaura la imagen actual de codificando los datos de imagen en cada unidad de codificación máxima en función de la información acerca de la profundidad codificada y el modo de codificación de acuerdo con las unidades de codificación máxima. Por ejemplo, el decodificador 230 de datos de imagen podría decodificar los datos codificados de imagen en función de la información extraída acerca del tipo de partición, el modo de predicción, y la unidad de transformación para cada unidad de codificación de entre las unidades de codificación que tienen la estructura de árbol incluida en cada unidad de codificación máxima. El proceso de decodificación podría incluir una predicción que a su vez incluye intra-predicción y la compensación de movimiento y una transformación inversa. La transformación inversa podría ser realizada de acuerdo con un procedimiento de transformación inversa ortogonal o transformación inversa de entero.
El decodificador 230 de datos de imagen podría realizar al menos una de la intra-predicción y la compensación de movimiento de acuerdo con una partición y un modo de predicción de cada unidad de codificación, en función de la información acerca del tipo de partición y el modo de predicción de la unidad de predicción de la unidad de codificación de acuerdo con las profundidades codificadas.
Asimismo, el decodificador 230 de datos de imagen podría realizar la transformación inversa de acuerdo con cada unidad de transformación en la unidad de codificación, en función de la información acerca del tamaño de la unidad
5
10
15
20
25
30
35
40
45
50
55
de transformación de la unidad de codificación de acuerdo con las profundidades codificadas, para así realizar la transformación inversa de acuerdo con las unidades de codificación máxima.
El decodificador 230 de datos de imagen podría determinar al menos una profundidad codificada de una unidad de codificación máxima actual utilizando la información de división de acuerdo con las profundidades. Si la información de división indica que los datos de imagen ya no son más divididos en la profundidad actual, la profundidad actual es una profundidad codificada. En consecuencia, el decodificador 230 de datos de imagen podría decodificar los datos decodificados por lo menos de una unidad de codificación que corresponde con cada profundidad codificada en la unidad de codificación máxima actual utilizando al menos uno de la información acerca del tipo de partición de la unidad de predicción, el modo de predicción, y el tamaño de la unidad de transformación para cada unidad de codificación que corresponde con la profundidad codificada, y da salida a los datos de imagen de la unidad de codificación máxima actual.
Por ejemplo, las unidades de datos que incluyen la información de codificación que tienen la misma información de división podrían ser reunidas observando la información de codificación establecida que es asignada para la unidad predeterminada de datos de entre la unidad de codificación, la unidad de predicción, y la unidad mínima, y las unidades reunidas de datos podrían ser consideradas que son una unidad de datos que será decodificada por el decodificador 230 de datos de imagen en el mismo modo de codificación.
El aparato 200 de decodificación de video podría obtener la información al menos acerca de una unidad de codificación que genera el error de codificación mínima cuando la codificación es realizada, en forma recursiva, para cada unidad de codificación máxima, y podría utilizar la información para decodificar la imagen actual. Es decir, podrían ser decodificadas las unidades de codificación que tienen la estructura de árbol determinadas para ser las unidades de codificación óptima en cada unidad de codificación máxima. Asimismo, el tamaño máximo de la unidad de codificación podría ser determinado considerando al menos uno de la resolución y la cantidad de datos de imagen.
En consecuencia, incluso si los datos de imagen tienen alta resolución y una gran cantidad de datos, los datos de imagen podrían ser decodificados y restaurados, de manera eficiente, utilizando un tamaño de una unidad de codificación y un modo de codificación, los cuales son determinados, de manera adaptiva de acuerdo con las características de los datos de imagen, y la información acerca de un modo óptimo de codificación recibido de un codificador.
Un procedimiento de determinación de las unidades de codificación que tienen una estructura de árbol, una unidad de predicción, y una unidad de transformación, de acuerdo con una o más realizaciones de ejemplo, será descrito con referencia a las figuras 3 a 13.
La figura 3 es un diagrama que describe un concepto de las unidades de codificación de acuerdo con una realización de ejemplo.
Un tamaño de una unidad de codificación podría ser expresado en ancho x altura. Por ejemplo, el tamaño de la unidad de codificación podría ser de 64 x 64, 32 x 32, 16x 16 u 8 x 8. Una unidad de codificación de 64 x 64 podría ser dividida en particiones de 64 x 64, 64 x 32, 32 x 64 o 32 x 32, y una unidad de codificación de 32 x 32 podría ser dividida en particiones de 32 x 32, 32 x 16, 16 x 32 o 16 x 16, una unidad de codificación de 16 x 16 podría ser dividida en particiones de 16x16, 16x8, 8x16 u 8x8, y una unidad de codificación de 8x8 podría ser dividida en las particiones de 8x8, 8x4, 4x8 o 4x4.
Con referencia a la figura 3, se proporcionan, a modo de ejemplo, los primeros datos 310 de video con una resolución de 1920 x 1080 y una unidad de codificación con un tamaño máximo de 64 y una profundidad máxima de 2. Además, se proporcionan, a modo de ejemplo, los segundos datos 320 de video con una resolución de 1920 x 1080 y una unidad de codificación con un tamaño máximo de 64 y una profundidad máxima de 3. Asimismo, se proporcionan, a modo de ejemplo, los terceros datos 330 de video con una resolución de 352 x 288, y una unidad de codificación con un tamaño máximo de 16 y una profundidad máxima de 1. La profundidad máxima mostrada en la figura 3 indica un número total de divisiones de una unidad de codificación máxima en una unidad de decodificación mínima.
Si una resolución es alta o es grande la cantidad de datos, podría ser grande el tamaño máximo de una unidad de codificación de modo que se incrementa la eficiencia de la codificación y refleja, de manera exacta, las características de una imagen. En consecuencia, el tamaño máximo de la unidad de codificación de los primeros y segundos datos 310 y 320 de video que tienen la resolución más alta que los terceros datos 330 de video podría ser de 64.
Debido a que la profundidad máxima de los primeros datos 310 de video es 2, las unidades 315 de codificación de los primeros datos 310 de video podrían incluir una unidad de codificación máxima que tiene un tamaño de eje largo de 64, y las unidades de codificación que tienen tamaños de eje largo de 32 y 16 debido a que las profundidades son profundizadas en dos capas dividiendo la unidad de codificación máxima dos veces. Mientras tanto, debido a que la profundidad máxima de los terceros datos 330 de video es 1, las unidades 335 de codificación de los terceros datos 330 de video podrían incluir una unidad de codificación máxima que tiene un tamaño de eje largo de 16, y las
5
10
15
20
25
30
35
40
45
50
55
unidades de codificación que tienen un tamaño de eje largo de 8 debido a que las profundidades son profundizadas en una capa dividiendo la unidad de codificación máxima una vez.
Debido a que la profundidad máxima de los segundos datos 320 de video es 3, las unidades 325 de codificación de los segundos datos 320 de video podrían incluir una unidad de codificación máxima que tiene un tamaño de eje largo de 64, y las unidades de codificación que tienen tamaños de eje largo de 32, 16 y 8 debido a que las profundidades son profundizadas en 3 capas dividiendo la unidad de codificación máxima tres veces. A medida que se profundiza la profundidad, la información detallada podría ser expresada, de manera precisa.
La figura 4 es un diagrama de bloques de un codificador 400 de imagen basado en las unidades de codificación, de acuerdo con una realización de ejemplo.
El codificador 400 de imagen podría realizar las operaciones del determinador 120 de unidad de codificación de un aparato 100 de codificación de video de acuerdo con una realización de ejemplo para codificar los datos de imagen. Es decir, con referencia a la figura 4, un intra-predictor 410 realiza la intra-predicción en las unidades de codificación, de entre un cuadro 405 actual, en un intra-modo, y un estimador 420 de movimiento y un compensador 425 de movimiento realizan la inter-estimación y la compensación de movimiento en las unidades de codificación, de entre el cuadro 405 actual, en un inter-modo utilizando el cuadro 405 actual y un cuadro 495 de referencia.
Los datos salidos a partir del intra-predictor 410, del estimador 420 de movimiento y del compensador de movimiento 425 son salidos como un coeficiente cuantificado de transformación a través de un transformador 430 y un cuantificador 440. El coeficiente cuantificado de transformación es restaurado como los datos en un dominio espacial a través de un cuantificador 460 inverso y un transformador 470 inverso, y los datos restaurados en el dominio espacial son salidos como el cuadro de referencia 495 después de ser posteriormente procesados a través de una unidad 480 de desbloqueo y una unidad 490 de filtrado de circuito. El coeficiente cuantificado de transformación podría salir como un flujo 455 de bits a través de un codificador 450 de entropía.
Con el propósito que el codificador 400 de imagen sea aplicado en el aparato de codificación de video 100, los elementos del codificador 400 de imagen, es decir, el intra-predictor 410, el estimador 420 de movimiento, el compensador 425 de movimiento, el transformador 430, el cuantificador 440, el codificador 450 de entropía, el cuantificador 460 inverso, el transformador 470 inverso, la unidad 480 de desbloqueo y la unidad 490 de filtrado de circuito, realizan las operaciones basadas en cada unidad de codificación de entre las unidades de codificación que tienen una estructura de árbol mientras se considera la profundidad máxima de cada unidad de codificación máxima.
De manera específica, el intra-predictor 410, el estimador 420 de movimiento, y el compensador 425 de movimiento determinan las particiones y el modo de predicción de cada unidad de codificación de entre las unidades de codificación que tiene una estructura de árbol mientras se considera un tamaño máximo y una profundidad máxima de una unidad de codificación máxima actual, y el transformador 430 determina el tamaño de la unidad de transformación en cada unidad de codificación de entre las unidades de codificación que tienen una estructura de árbol.
La Figura 5 es un diagrama de bloques de un decodificador 500 de imagen basado en las unidades de codificación, de acuerdo con una realización de ejemplo.
Con referencia a la Figura 5, un analizador 510 analiza los datos codificados de imagen que serán decodificados y la información acerca de la codificación utilizada para decodificar un flujo 505 de bits. Los datos codificados de imagen son salidos como los datos cuantificados inversos a través de un decodificador 520 de entropía y un cuantificador 530 inverso, y los datos cuantificados inversos son restaurados en los datos de imagen en un dominio espacial a través de un transformador 540 inverso.
Un intra-predictor 550 realiza la intra-predicción en las unidades de codificación en un intra-modo con respecto a los datos de imagen en el dominio espacial, y un compensador 560 de movimiento realiza la compensación de movimiento en las unidades de codificación en un inter-modo utilizando un cuadro 585 de referencia.
Los datos de imagen en el dominio espacial, que pasaron a través del intra-predictor 550 y el compensador 560 de movimiento, podría salir como un cuadro 595 restaurado después de ser posteriormente procesados a través de una unidad 570 de desbloqueo y una unidad 580 de filtrado de circuito. Asimismo, los datos de imagen que son posteriormente procesados a través de la unidad 570 de desbloqueo y la unidad 580 de filtrado de circuito podrían salir como el cuadro de referencia 585.
Con el propósito de decodificar los datos de imagen en un decodificador 230 de datos de imagen de un aparato 200 de decodificación de video de acuerdo con una realización de ejemplo, el decodificador 500 de imagen podría realizar las operaciones que son efectuadas después del analizador 510.
Con el propósito que el decodificador 500 de imagen sea aplicado en el aparato 200 de decodificación de video, los elementos del decodificador 500 de imagen, es decir, el analizador 510, el decodificador 520 de entropía, el cuantificador 530 inverso, el transformador 540 inverso, el intra-predictor 550, el compensador 560 de movimiento, la unidad 570 de desbloqueo y la unidad 580 de filtrado de circuito, realizan las operaciones basadas en las unidades
5
10
15
20
25
30
35
40
45
50
55
de codificación que tienen una estructura de árbol para cada unidad de codificación máxima.
De manera específica, el intra-predictor 550 y el compensador 560 de movimiento realizan las operaciones basadas en las particiones y un modo de predicción para cada una de las unidades de codificación que tiene una estructura de árbol, y el transformador 540 inverso realiza las operaciones basadas en un tamaño de una unidad de transformación para cada unidad de codificación.
La Figura 6 es un diagrama que ilustra las unidades de codificación más profunda de acuerdo con las profundidades, y las particiones, de acuerdo con una realización de ejemplo.
Un aparato 100 de codificación de video y un aparato 200 de decodificación de video de acuerdo con las realizaciones de ejemplo utilizan las unidades de codificación jerárquica para considerar las características de una imagen. La altura máxima, el ancho máximo y la profundidad máxima de las unidades de codificación podrían determinarse, de manera adaptiva, de acuerdo con las características de la imagen, o podrían ser diferentemente establecidos por el usuario. Los tamaños de unidades de codificación más profunda de acuerdo con las profundidades podrían ser determinados de acuerdo con el tamaño máximo predeterminado de la unidad de codificación.
Con referencia a la Figura 6, en una estructura 600 jerárquica de las unidades de codificación de acuerdo con una realización de ejemplo, la altura máxima y el ancho máximo de las unidades de codificación son cada uno 64, y la profundidad máxima es 4. Debido a que una profundidad se profundiza a lo largo del eje vertical de la estructura 600 jerárquica, la altura y el ancho de una unidad de codificación más profunda son divididos cada uno. Asimismo, una unidad de predicción y las particiones, que son las bases para la codificación de predicción de cada unidad de codificación más profunda, son mostradas a lo largo del eje horizontal de la estructura 600 jerárquica.
Es decir, una primera unidad 610 de codificación es una unidad de codificación máxima en la estructura 600 jerárquica, en la que una profundidad es 0 y el tamaño, es decir, la altura por el ancho es de 64 x 64. La profundidad se profundiza a lo largo del eje vertical, y una segunda unidad 620 de codificación que tiene un tamaño de 32 x 32 y una profundidad de 1, una tercera unidad 630 de codificación que tiene un tamaño de 16x16 y una profundidad de 2, una cuarta unidad 640 de codificación que tiene un tamaño de 8x8 y una profundidad de 3, y una quinta unidad 650 de codificación que tiene un tamaño de 4x4 y una profundidad de 4 existen. La quinta unidad 650 de codificación que tiene el tamaño de 4x4 y la profundidad de 4 es una unidad de codificación mínima.
La unidad de predicción y las particiones de una unidad de codificación son colocadas a lo largo del eje horizontal de acuerdo con cada profundidad. Es decir, si la primera unidad 610 de codificación que tiene el tamaño de 64 x 64 y la profundidad de 0 es una unidad de predicción, la unidad de predicción podría ser dividida en las particiones incluidas en la primera unidad 610 de codificación, es decir, una partición 610 que tiene un tamaño de 64 x 64, las particiones 612 que tienen un tamaño de 64 x 32, las particiones 614 que tienen un tamaño de 32 x 64 o las particiones 616 que tienen un tamaño de 32 x 32.
De manera similar, una unidad de predicción de la segunda unidad 620 de codificación que tiene el tamaño de 32 x 32 y la profundidad de 1 podría ser dividida en las particiones incluidas en la segunda unidad 620 de codificación, es decir, una partición 620 que tiene un tamaño de 32 x 32, las particiones 622 que tienen un tamaño de 32 x 16, las particiones 624 que tienen un tamaño de 16 x 32 y las particiones 626 que tienen un tamaño de 16 x 16.
De manera similar, una unidad de predicción de la tercera unidad 630 de codificación que tiene el tamaño de 16 x 16 y la profundidad de 2 podría ser dividida en las particiones incluidas en la tercera unidad 630 de codificación, es decir, una partición que tiene un tamaño de 16 x 16 incluida en la tercera unidad 630 de codificación, las particiones 632 que tienen un tamaño de 16 x 8, las particiones 634 que tienen un tamaño de 8 x 16, y las particiones 636 que tienen un tamaño de 8x8.
De manera similar, una unidad de predicción de la cuarta unidad 640 de codificación que tiene el tamaño de 8x8 y la profundidad de 3 podría ser dividida en las particiones incluidas en la cuarta unidad 640 de codificación, es decir, una partición que tiene un tamaño de 8x8 incluida en la cuarta unidad 640 de codificación, las particiones 642 que tienen un tamaño de 8x4, las particiones 644 que tienen un tamaño de 4x8 y las particiones 646 que tienen un tamaño de 4x4.
La quinta unidad 650 de codificación que tiene el tamaño de 4x4 y la profundidad de 4 son la unidad de codificación mínima y la unidad de codificación de la profundidad más baja. La unidad de predicción de la quinta unidad 650 de codificación solo es asignada a una partición que tiene un tamaño de 4x4.
Con el propósito de determinar al menos una profundidad codificada de las unidades de codificación de la unidad 610 de codificación máxima, un determinador 120 de unidad de codificación del aparato 100 de codificación de video realiza la codificación para las unidades de codificación que corresponde con cada profundidad incluida en la unidad 610 de codificación máxima.
El número de unidades de codificación más profunda de acuerdo con las profundidades que incluye los datos en el mismo intervalo y el mismo tamaño se incrementa a medida que se profundiza la profundidad. Por ejemplo, cuatro
5
10
15
20
25
30
35
40
45
50
55
unidades de codificación que corresponden con una profundidad de 2 son utilizadas para cubrir los datos que son incluidos en una unidad de codificación que corresponde con una profundidad de 1. En consecuencia, con el propósito de comparar los resultados de la codificación de los mismos datos de acuerdo con las profundidades, la unidad de codificación que corresponden con la profundidad de 1 y cuatro unidades de codificación que corresponden con la profundidad de 2 es codificada cada una.
Con el propósito de realizar la codificación para una profundidad actual de entre las profundidades, un error final de codificación podría ser seleccionado para la profundidad actual realizando la codificación para cada unidad de predicción en las unidades de codificación que corresponde con la profundidad actual, a lo largo del eje horizontal de la estructura 600 jerárquica. Alternativamente, el error de codificación mínima podría ser buscado comparando los errores últimos de codificación de acuerdo con las profundidades, al realizar la codificación para cada profundidad a medida que se profundiza la profundidad a lo largo del eje vertical de la estructura 600 jerárquica. Una profundidad y una partición que tienen el error de codificación mínima en la primera unidad 610 de codificación podrían ser seleccionadas como la profundidad codificada y el tipo de partición de la primera unidad 610 de codificación.
La Figura 7 es un diagrama que describe la relación entre una unidad 710 de codificación y las unidades 720 de transformación, de acuerdo con una realización de ejemplo.
Un aparato 100 o 200 de codificación o decodificación de video de acuerdo con las realizaciones de ejemplo codifica o decodifica una imagen de acuerdo con las unidades de codificación que tienen tamaños más pequeños o iguales a una unidad de codificación máxima para cada unidad de codificación máxima. Los tamaños de las unidades de transformación para la transformación durante la codificación podrían ser seleccionados en función de las unidades de datos que no son más grandes que una correspondiente unidad de codificación.
Por ejemplo, en el aparato 100 o 200 de codificación o decodificación de video, si el tamaño de la unidad 710 de codificación es 64 x 64, la transformación podría ser realizada utilizando las unidades 720 de transformación que tienen un tamaño de 32 x 32.
Asimismo, los datos de la unidad 710 de codificación que tienen el tamaño de 64 x 64 podrían ser codificados al realizar la transformación en cada una de las unidades de transformación que tiene el tamaño de 32 x 32, 16 x 16, 8 x 8 y 4x4, que son más pequeños que 64 x 64, de manera que una unidad de transformación que tiene el último error de decodificación podría ser seleccionada.
La Figura 8 es un diagrama que describe la información de codificación de las unidades de codificación que corresponden con la profundidad codificada, de acuerdo con una realización de ejemplo.
Con referencia a la Figura 8, una unidad 130 de salida de un aparato 100 de codificación de video de acuerdo con una realización de ejemplo podría codificar y transmitir la información 800 acerca del tipo de partición, la información 810 acerca del modo de predicción, y la información 820 acerca del tamaño de una unidad de transformación para cada unidad de codificación que corresponde con una profundidad codificada, como la información acerca del modo de codificación.
La información 800 acerca del tipo de partición es la información acerca de la forma de una partición obtenida mediante la división de una unidad de predicción de una unidad de codificación actual, en el que la partición es una unidad de datos para la codificación de predicción de la unidad de codificación actual. Por ejemplo, una unidad de codificación actual CU_0 que tiene un tamaño de 2N x 2N podría ser dividida en cualquiera una de una partición 802 que tiene un tamaño de 2N x 2N, una partición 804 que tiene un tamaño de 2N x N, una partición 806 que tiene un tamaño de N x 2N y una partición 808 que tiene un tamaño de N x N. Aquí, la información 800 acerca del tipo de partición es establecida para indicar una de la partición 804 que tiene un tamaño de 2N x N, la partición 806 que tiene un tamaño de N x 2N y la partición 808 que tiene un tamaño de N x N.
La información 810 acerca del modo de predicción indica el modo de predicción de cada partición. Por ejemplo, la información 810 acerca del modo de predicción podría indicar el modo de la codificación de predicción realizado en una partición indicada por la información 800 acerca del tipo de partición, es decir, un intra-modo 812, un inter-modo 814, o un modo de salto 816.
La información 820 acerca del tamaño de una unidad de transformación indica una unidad de transformación que estará basada en el momento cuando sea realizada la transformación de una unidad de codificación actual. Por ejemplo, la unidad de transformación podría ser una primera unidad 822 de intra-transformación, una segunda unidad 824 de intra-transformación, una primera unidad 826 de inter-transformación o una segunda unidad 828 de intra-transformación.
Un extractor 220 de información de codificación y datos de imagen de un aparato 200 de decodificación de video de acuerdo con una realización de ejemplo podría extraer y utilizar la información 800, 810, y 820 para la decodificación, de acuerdo con cada unidad de codificación más profunda.
La Figura 9 es un diagrama de unidades de codificación más profunda de acuerdo con las profundidades, de acuerdo con una realización de ejemplo.
5
10
15
20
25
30
35
40
45
50
55
La información de división podría ser utilizada para indicar el cambio de una profundidad. La información de división indica si una unidad de codificación de una profundidad actual es dividida en unidades de codificación de una profundidad más baja.
Con referencia a la Figura 9, una unidad 910 de predicción para la codificación de predicción de una unidad 900 de codificación que tiene una profundidad de 0 y un tamaño de 2N_0 x 2N_0 podría incluir las particiones de un tipo de partición 912 que tiene un tamaño de 2N_0 x 2NO_0, un tipo de partición 914 que tiene un tamaño de 2N_0 x N_0, un tipo de partición 916 que tiene un tamaño de N_0 x 2N_0, y un tipo de partición 918 que tiene un tamaño de N_0 x N_0. Aunque la Figura 9 solo ilustra los tipos de partición 912-918 que son obtenidos al dividir, en forma simétrica, la unidad 910 de predicción, se entiende que un tipo de partición no está limitado a los mismos. Por ejemplo, de acuerdo con otra realización ejemplo, las particiones de la unidad 910 de predicción podrían incluir particiones asimétricas, las particiones que tienen una forma predeterminada, y las particiones que tienen una forma geométrica.
La codificación de predicción es realizada, en forma repetida, en una partición que tiene un tamaño de 2N_0 x 2N_0, en dos particiones que tienen un tamaño de 2N_0 x N_0, en dos particiones que tienen un tamaño de N_0 x 2N_0 y en cuatro particiones que tienen un tamaño de N_0 x N_0, de acuerdo con cada tipo de partición. La codificación de predicción en un intra-modo y un inter-modo podría ser realizada en las particiones que tienen los tamaños de 2N_0 x 2N_0, N_0 x 2N_0, 2N_0 x N_0 y N_0 x N_0. La codificación de predicción en un modo de salto solo es realizada en la partición que tiene el tamaño de 2N_0 x 2N_0.
Los errores de codificación que incluyen la codificación de predicción en los tipos de partición 912-918 son comparados, y el error menor de codificación es determinado entre los tipos de partición. Si un error de codificación es el más pequeño en uno de los tipos de partición 912-916, la unidad 910 de predicción no podría ser dividida en una profundidad más baja.
Por ejemplo, si el error de codificación es el más pequeño en el tipo de partición 918, la profundidad es cambiada de 0 a 1 para dividir el tipo de partición 918 en la operación 920, y la codificación es realizada, en forma repetida, en las unidades 930 de codificación que tienen una profundidad de 2 y un tamaño de N_0 x N_0 para buscar un error de codificación mínima.
Una unidad 940 de predicción para la codificación de predicción de la unidad 930 de codificación que tiene una profundidad de 1 y un tamaño de 2N_1 x 2N_1 (=N_0 x N_0) podría incluir las particiones de un tipo de partición 942 que tiene un tamaño de 2N_1 x 2N_1, un tipo de partición 944 que tiene un tamaño de 2N_1 x N_1, un tipo de partición 946 que tiene un tamaño de N_1 x 2N_1 y un tipo de partición 948 que tiene un tamaño de N_1 x N_1.
Como un ejemplo, si un error de codificación es el más pequeño en el tipo de partición 948, la profundidad es cambiada de 1 a 2 para dividir el tipo de partición 948 en la operación 950, y la codificación es realizada, en forma repetida, en las unidades de codificación 960, que tienen una profundidad de 2 y un tamaño de N_2 x N_2 para buscar un error de codificación mínima.
Cuando la profundidad máxima es d, las operaciones divididas de acuerdo con cada profundidad podrían ser realizadas hasta cuando la profundidad se convierta en d-1, y la información de división podría ser codificada hasta cuando la profundidad es uno de 0 a d-2. Por ejemplo, cuando la codificación es realizada hasta cuando la profundidad es d-1 una vez que una unidad de codificación que corresponde con una profundidad de d-2 es dividida en la operación 970, una unidad 990 de predicción para la codificación de predicción de una unidad de codificación 980 que tiene una profundidad de d-1 y un tamaño de 2N_(d-1) x 2N_(d-1) podría incluir las particiones de un tipo de partición 992 que tiene un tamaño de 2N_(d-1) x 2N_(d-1), un tipo de partición 994 que tiene un tamaño de 2N_(d-1) x N_(d-1), un tipo de partición 996 que tiene un tamaño de N_(d-1) x 2N_(d-1) y un tipo de partición 998 que tiene un tamaño de N_(d-1) x N_(d-1).
La codificación de predicción podría ser realizada, en forma repetida, en una partición que tiene un tamaño de 2N_(d-1) x 2N_(d-1), en dos particiones que tienen un tamaño de 2N (d-1) x N (d-1), en dos particiones que tienen un tamaño de N_(d-1) x 2N_(d-1), en cuatro particiones que tienen un tamaño de N_(d-1) x N_(d-1) de entre los tipos de partición 992-998 para buscar un tipo de partición que tiene un error de codificación mínima.
Aun cuando el tipo de partición 998 tiene el error de codificación mínima, debido a que la profundidad máxima es d, la unidad de codificación CU_(d-1) que tiene una profundidad de d-1 ya no es más dividida en una profundidad más baja. En este caso, una profundidad codificada para las unidades de codificación de una unidad 900 de codificación máxima actual es determinada para que sea d-1 y un tipo de partición de la unidad 900 de codificación máxima actual podría ser determinado para que sea N_(d-1) x N_(d-1). Asimismo, debido a que la profundidad máxima es d y la unidad 980 de codificación mínima que tiene la profundidad más baja de d-1 ya no es más dividida en una profundidad más baja, la información de división para la unidad 980 de codificación mínima no se establece.
La unidad 999 de datos podría ser la unidad mínima para la unidad de codificación máxima actual. La unidad mínima de acuerdo con una realización de ejemplo podría ser una unidad rectangular de datos obtenida mediante la división de una unidad 980 de codificación mínima entre 4. Al realizar la codificación en forma repetida, el aparato 100 de codificación de video de acuerdo con una realización de ejemplo podría seleccionar una profundidad que tiene el
5
10
15
20
25
30
35
40
45
50
error menor de codificación comparando los errores de codificación de acuerdo con las profundidades de la unidad 900 de codificación para determinar la profundidad codificada, y establecer el tipo correspondiente de partición y el modo de predicción como un modo de codificación de la profundidad codificada.
Como tal, los errores de codificación mínima de acuerdo con las profundidades son comparados en todas las profundidades de 1 a d, y una profundidad que tiene el error último de codificación podría ser determinada como una profundidad codificada. La profundidad codificada, el tipo de partición de la unidad de predicción, y el modo de predicción podrían ser codificados y transmitidos como la información acerca del modo de codificación. Asimismo, debido a que una unidad de codificación es dividida de una profundidad de 0 a una profundidad codificada, la información de división de la profundidad codificada es establecida en 0 y la información de división de las profundidades que excluye la profundidad codificada es establecida en 1.
Un extractor 220 de información de codificación y datos de imagen de un aparato 200 de decodificación de video de acuerdo con una realización de ejemplo podría extraer y utilizar la información acerca de la profundidad codificada y la unidad de predicción de la unidad 900 de codificación para decodificar la partición 912. El aparato 200 de decodificación de video podría determinar la profundidad, en la cual la información de división es 0 como la profundidad codificada utilizando la información de división de acuerdo con las profundidades, y podría utilizar la información acerca de un modo de codificación de la profundidad correspondiente para la de codificación.
Las Figuras 10-12 son diagramas que describen la relación entre las unidades 1010 de codificación, las unidades 1060 de predicción y las unidades 1070 de transformación, de acuerdo con una o más realizaciones de ejemplo.
Con referencia a la Figura 10, las unidades 1010 de codificación son unidades de codificación que tienen una estructura de árbol, que corresponden con las profundidades codificadas que son determinadas por un aparato 100 de codificación de video de acuerdo con una realización de ejemplo, en una unidad de codificación máxima. Con referencia a las Figuras 11 y 12, las unidades 1060 de predicción son particiones de las unidades de predicción de cada una de las unidades 1010 de codificación y las unidades 1070 de transformación son unidades de transformación de cada una de las unidades 1010 de codificación.
Cuando una profundidad de una unidad de codificación máxima es 0 en las unidades 1010 de codificación, las profundidades de las unidades 1012 y 1054 de codificación son 1, las profundidades de las unidades 1014, 1016, 1018, 1028, 1050 y 1052 de codificación son 2, las profundidades de las unidades 1020, 1022, 1024, 1026, 1030, 1032 y 1048 de codificación son 3 y las profundidades de las unidades 1040, 1042, 1044 y 1046 de codificación son 4.
En las unidades 1060 de predicción, algunas unidades 1014, 1016, 1022, 1032, 1048, 1050, 1052 y 1054 de codificación son obtenidas dividiendo las unidades de codificación de las unidades 1010 de codificación. En particular, los tipos de partición en las unidades 1014, 1022, 1050 y 1054 de codificación tienen un tamaño de 2N x N, los tipos de partición en las unidades 1016, 1048 y 1052 de codificación tienen un tamaño de N x 2N, y el tipo de partición de la unidad 1032 de codificación tiene un tamaño de N x N. Las unidades de predicción y las particiones de las unidades 1010 de codificación son más pequeñas o iguales a cada unidad de codificación.
La transformación o la transformación inversa son realizadas en los datos de imagen de la unidad 1052 de codificación en las unidades 1070 de transformación en una unidad de datos que es más pequeña que la unidad 1052 de codificación. Asimismo, las unidades 1014, 1016, 1022, 1032, 1048, 1050 y 1052 de codificación de las unidades 1070 de transformación son diferentes de aquellas de las unidades 1060 de predicción en términos de tamaños y formas. Es decir, los aparatos 100 y 200 de codificación y decodificación de video de acuerdo con las realizaciones de ejemplo podrían realizar la intra-predicción, la estimación de movimiento, la compensación de movimiento, la transformación y la transformación de movimiento, de manera individual, en una unidad de datos en la misma unidad de codificación.
En consecuencia, la codificación es realizada, de manera recursiva, en cada una de las unidades de codificación que tiene una estructura jerárquica en cada región de una unidad de codificación máxima para determinar una unidad de codificación óptima, y de esta manera, podría ser obtenida la codificación de las unidades que tienen una estructura recursiva de árbol. La información de codificación podría incluir la información de división acerca de la unidad de codificación, la información acerca del tipo de partición, la información acerca del modo de predicción, y la información acerca de un tamaño de una unidad de transformación. La Tabla 1 de ejemplo muestra la información de codificación que podría ser establecida por el aparato 100 y 200 de codificación y decodificación de video.
5
10
15
20
25
30
35
40
Tabla 1
Información de división 0 (Codificación en la unidad de codificación que un tamaño de 2N x 2N and una profundidad actual de d)
Información de división 1
Modo de predicción
Tipo de partición Tamaño de la unidad de transformación Codificar repetidamente unidades de codificación que tienen una profundidad inferior de d+1
Salto intrainter (Solamente 2N x 2N)
Tipo de partición simétrica Tipo de partición asimétrica Información de división 0 de la unidad de transformación Información de división 1 de la unidad de transformación
2Nx2N2Nx NNx2NNxN
2NxnU2Nxn DnLx2NnRx 2N 2Nx2N NxN(Tipo simétrico)N/2xN/2 (Tipo asimétrico)
Una unidad 130 de salida del aparato 100 de codificación de video podría dar salida a la codificación la información acerca de las unidades de codificación que tiene una estructura de árbol, y un extractor 220 de información de codificación y datos de imagen del aparato 200 de decodificación de video podría extraer la codificación de la información acerca de las unidades de codificación que tiene una estructura de árbol de un flujo recibido de bits.
La información de división indica si una unidad de codificación actual es dividida en unidades de codificación de una profundidad más baja. Si la información de división de una profundidad actual d es 0, la profundidad en la cual una unidad de codificación actual ya no es más dividida en una profundidad más baja es la profundidad codificada. La información acerca del tipo de partición, el modo de predicción, y el tamaño de la unidad de transformación podría ser definida para la profundidad codificada. Si la unidad de codificación actual además es dividida de acuerdo con la información de división, la codificación es independientemente realizada en las unidades divididas de codificación de una profundidad más baja.
Un modo de predicción podría ser uno de un intra-modo, un inter-modo y un modo de salto. El intra-modo y el intermodo podrían ser definidos en todos los tipos de partición, y el modo de salto solo podría ser definido en un tipo de partición que tiene un tamaño de 2N x 2N.
La información acerca del tipo de partición podría indicar los tipos de partición simétrica que tienen tamaños de 2N x 2N, 2N x N, N x 2N y N x N, los cuales son obtenidos al dividir en forma simétrica la altura o el ancho de una unidad de predicción, y los tipos de partición asimétrica que tienen tamaños de 2N x nU, 2N x nD, nL x 2N y nRx 2N, los cuales son obtenidos al dividir en forma asimétrica la altura o el ancho de la unidad de predicción. Los tipos de partición asimétrica que tienen los tamaños de 2N x nU y 2N x nD podrían ser respectivamente obtenidos al dividir la altura de la unidad de predicción en relaciones de 1:3 y 3:1, y los tipos de partición asimétrica que tienen los tamaños de nL x 2N y nRx 2N podrían ser respectivamente obtenidos al dividir el ancho de la unidad de predicción en relaciones de 1:3 y 3:1.
El tamaño de la unidad de transformación podría ser establecido para que sea de dos tipos en el intra-modo y de dos tipos en el inter-modo. Por ejemplo, si la información de división de la unidad de transformación es 0, el tamaño de la unidad de transformación podría ser de 2N x 2N, que es el tamaño de la unidad de codificación actual. Si la información de división de la unidad de transformación es 1, las unidades de transformación podrían ser obtenidas dividiendo la unidad de codificación actual. Asimismo, si el tipo de partición de la unidad de codificación actual que tiene el tamaño de 2N x 2N es un tipo de partición simétrica, el tamaño de una unidad de transformación podría ser de N x N, y si el tipo de partición de la unidad de codificación actual es un tipo de partición asimétrica, el tamaño de la unidad de transformación podría ser de N/2 x N/2.
La información de codificación acerca de las unidades de codificación que tienen una estructura de árbol podría incluir al menos una de una unidad de codificación que corresponde con una profundidad codificada, una unidad de codificación que corresponde con una unidad de predicción, y una unidad de codificación que corresponde con una unidad mínima. La unidad de codificación que corresponde con la profundidad codificada podría incluir al menos una de una unidad de predicción y una unidad mínima a su vez incluye la misma información de codificación.
En consecuencia, se determina si las unidades adyacentes de datos son incluidas en la misma unidad de codificación que corresponde con la profundidad codificada comparando la información de codificación de las unidades adyacentes de datos. Asimismo, una correspondiente unidad de codificación que corresponde con una profundidad codificada es determinada utilizando la información de codificación de una unidad de datos, y de esta manera, podría ser determinada la distribución de las profundidades codificadas en una unidad de codificación máxima.
En consecuencia, si una unidad de codificación actual es prevista en función de la información de codificación de las
5
10
15
20
25
30
35
40
45
50
55
unidades adyacentes de datos, la información de codificación de las unidades de datos en las unidades de codificación más profunda adyacentes a la unidad de codificación actual podría ser directamente referida y utilizada.
Sin embargo, se entiende otra realización ejemplo no es limitada a la misma. Por ejemplo, de acuerdo con otra realización ejemplo, si la unidad de codificación actual es prevista en función de la información de codificación de las unidades adyacentes de datos, las unidades de datos adyacentes a la unidad de codificación actual son buscadas utilizando la información codificada de las unidades de datos, y las unidades adyacentes buscadas de codificación podría ser referidas para la predicción de la unidad de codificación actual.
La Figura 13 es un diagrama que describe la relación entre una unidad de codificación, una unidad de predicción o una partición y una unidad de transformación, de acuerdo con la información de modo de codificación de la Tabla 1 de ejemplo, de acuerdo con una realización de ejemplo.
Con referencia a la Figura 13, la unidad 1300 de codificación máxima incluye las unidades 1302, 1304, 1306, 1312, 1314, 1316 y 1318 de codificación de profundidades codificadas. Aquí, debido a que la unidad 1318 de codificación es una unidad de codificación de una profundidad codificada, la información de división podría ser establecida en 0. La información acerca de un tipo de partición de la unidad 1318 de codificación que tiene un tamaño de 2N x 2N podría ser establecida para que sea una de un tipo de partición 1322 que tiene un tamaño de 2N x 2N, un tipo de partición 1324 que tiene un tamaño de 2NxN, un tipo de partición 1326 que tiene un tamaño de N x 2N, un tipo de partición 1328 que tiene un tamaño de N x N, un tipo de partición 1332 que tiene un tamaño de 2N x nU, un tipo de partición 1334 que tiene un tamaño de 2N x nD, un tipo de partición 1336 que tiene un tamaño de nL x 2N y un tipo de partición 1338 que tiene un tamaño de nR x 2N.
Cuando el tipo de partición es establecido para que sea simétrico, es decir, el tipo de partición 1322, 1324, 1326, o 1328, una unidad 1342 de transformación que tiene el tamaño de 2N x 2N es establecida si la información de división (aviso de tamaño TU) de una unidad de transformación es 0 y la unidad 1344 de transformación que tiene el tamaño de N x N es establecida si un aviso de tamaño TU es 1.
Cuando el tipo de partición es establecido para que sea asimétrico, es decir, el tipo de partición 1332, 1334, 1336, o 1338, la unidad 1352 de transformación que tiene el tamaño de 2N x 2N es establecida si un aviso de tamaño TU es
0, y la unidad 1354 de transformación que tiene el tamaño de N/2 x N/2 es establecida si un aviso de tamaño TU como 1.
Con referencia a la Figura 13, el aviso de tamaño TU es un aviso que tiene un valor de 0 o 1, aunque se entiende que el aviso de tamaño TU no es limitado a 1 bit, y una unidad de transformación podría ser jerárquicamente dividida teniendo una estructura de árbol mientras el aviso de tamaño TU se incrementa a partir de 0.
En este caso, el tamaño de una unidad de transformación que ha sido en realidad utilizado podría ser expresado utilizando el aviso de tamaño TU de la unidad de transformación, de acuerdo con una realización de ejemplo, junto con el tamaño máximo y el tamaño mínimo de la unidad de transformación. De acuerdo con una realización de ejemplo, el aparato 100 de codificación de video es capaz de codificar la información de tamaño de unidad de transformación máxima, la información de tamaño de unidad de transformación mínima y el aviso de tamaño TU máximo. El resultado de la codificación de la información de tamaño de unidad de transformación máxima, la información de tamaño de unidad de transformación mínima, y el aviso de tamaño TU máximo podría ser insertado en un SPS. De acuerdo con una realización de ejemplo, el aparato 200 de decodificación de video podría decodificar el video utilizando la información de tamaño de unidad de transformación máxima, la información de tamaño de unidad de transformación mínima y el aviso de tamaño TU máximo.
Por ejemplo, si el tamaño de una unidad de codificación actual es 64 x 64 y el tamaño de unidad de transformación máxima es 32 x 32, el tamaño de una unidad de transformación podría ser de 32 x 32 cuando el aviso de tamaño TU es 0, podría ser de 16 x 16 cuando el aviso de tamaño TU es 1 y podría ser de 8x8 cuando el aviso de tamaño TU es 2.
Como otro ejemplo, si el tamaño de la unidad de codificación actual es 32 x 32 y el tamaño de unidad de transformación mínima es 32 x 32, el tamaño de la unidad de transformación podría ser de 32 x 32 cuando el aviso de tamaño TU es 0. Aquí, el aviso de tamaño TU no puede ser establecido en un valor diferente de 0, debido a que el tamaño de la unidad de transformación no puede ser menor que 32 x 32.
Como otro ejemplo, si el tamaño de la unidad de codificación actual es 64 x 64 y un aviso de tamaño TU máximo es
1, el aviso de tamaño TU podría ser de 0 o 1. Aquí, el aviso de tamaño TU no puede ser establecido en un valor diferente de 0 o 1.
De esta manera, si se define que el aviso de tamaño TU máximo es MaxTransformSizelndex, el tamaño de unidad de transformación mínima es MinTransformSize, y el tamaño de unidad de transformación es RootTuSize cuando el aviso de tamaño TU es 0, el tamaño de unidad de transformación mínima actual CurrMinTuSize que puede determinarse en una unidad de codificación actual podría ser definido por la Ecuación (1):
CurrMinTuSize max (MinTransformSize, RootTuSize/(2AMaxTransformSizeIndex)) ...(1).
5
10
15
20
25
30
35
40
45
50
55
Comparado con el tamaño de unidad de transformación mínima actual CurrMinTuSize que puede determinarse en la unidad de codificación actual, el tamaño de unidad de transformación RootTuSize cuando el aviso de tamaño TU es 0 podría indicar un tamaño de unidad de transformación máxima que puede ser seleccionado en el sistema. En la Ecuación (1), RootTuSize/(2AMaxTransformSizeIndex) indica el tamaño de unidad de transformación cuando el tamaño de unidad de transformación RootTuSize, cuando el aviso de tamaño TU es 0, es dividido un número de veces que corresponde con el aviso de tamaño TU máximo. Además, MinTransformSize indica el tamaño de transformación mínima. De esta manera, el valor más pequeño de entre RootTuSize/(2AMaxTransformSizeIndex) y MinTransformSize podría ser el tamaño de unidad de transformación mínima actual CurrMinTuSize que puede determinarse en la unidad de codificación actual.
De acuerdo con una realización de ejemplo, el tamaño de unidad de transformación máxima RootTuSize podría variar de acuerdo con el tipo del modo de predicción.
Por ejemplo, si el modo de predicción actual es un inter-modo, entonces, RootTuSize podría ser determinado utilizando la siguiente Ecuación (2). En la Ecuación (2), MaxTransformSize indica el tamaño de unidad de transformación máxima, y PUSize indica el tamaño de unidad de predicción actual.
RootTuSize = min(MaxTransformSize, PUSize) ...(2).
Es decir, si el modo de predicción actual es el inter-modo, el tamaño de unidad de transformación RootTuSize cuando el aviso de tamaño TU es 0 podría ser un valor más pequeño de entre el tamaño de unidad de transformación máxima y el tamaño de unidad de predicción actual.
Si el modo de predicción de una unidad de partición actual es un intra-modo, RootTuSize podría ser determinado utilizando la siguiente Ecuación (3). En la Ecuación (3), el tamaño de partición indica el tamaño de la unidad de partición actual.
RootTuSize = min(MaxTransformSize, PartitionSize)...(3).
Es decir, si el modo de predicción actual es el intra-modo, el tamaño de unidad de transformación RootTuSize cuando el aviso de tamaño TU es 0 podría ser un valor más pequeño de entre el tamaño de unidad de transformación máxima y el tamaño de la unidad de partición actual.
Sin embargo, el tamaño de unidad de transformación máxima actual RootTuSize que varía de acuerdo con el tipo del modo de predicción en la unidad de partición es simplemente de ejemplo, y no es limitado a la misma en otra realización de ejemplo.
De aquí en adelante, la codificación y decodificación del bloque residual realizadas mediante el codificador 450 de entropía del aparato 400 de codificación de video que se ilustra en la Figura 4 y el decodificador 520 de entropía del aparato 500 de decodificación de video que se ilustra en la Figura 5 serán descritas en detalle. En la siguiente descripción, una unidad de codificación indica un bloque codificado actual en un proceso de codificación de una imagen, y una unidad de decodificación indica un bloque decodificado actual en un proceso de decodificación de una imagen. La unidad de codificación y la unidad de decodificación son diferentes porque la unidad de codificación es utilizada en el proceso de codificación y la unidad de decodificación es utilizada en el proceso de decodificación. Por motivos de consistencia, excepto para un caso particular, la unidad de codificación y la unidad de decodificación son referidas como una unidad de codificación en ambos de los procesos de codificación y decodificación. Asimismo, una persona de experiencia ordinaria en la técnica podría entender mediante la presente descripción que un procedimiento y aparato de intra-predicción de acuerdo con una realización de ejemplo también podría ser aplicado para realizar la interacción predicción en un códec de video general.
Las Figuras 14A-14C son diagramas de referencia que describen un proceso de codificación de un bloque residual de transformación en un campo de la técnica relacionada.
Con referencia a la Figura 14A, cuando es generado un bloque 1410 residual de transformación transformando el bloque residual, un mapa de significancia, que indica la ubicación de un coeficiente efectivo de transformación diferente de cero en el bloque 1410 residual de transformación mientras explora los coeficientes de transformación en el bloque 1410 residual de transformación de acuerdo con un orden de exploración en zigzag. Después de la exploración de los coeficientes de transformación en el bloque 1410 residual de transformación, la información de nivel de un coeficiente efectivo de transformación es codificada. Por ejemplo, un proceso de codificación de un bloque 1420 residual de transformación que tiene un tamaño de 4x4, como se ilustra en la Figura 14B, será descrito a continuación. La Figura 14B, supone que los coeficientes de transformación en las ubicaciones indicadas
por X son los coeficientes efectivos de transformación diferentes de cero. Aquí, un mapa de significancia indica un
coeficiente efectivo de transformación como 1 y un coeficiente de transformación de 0 como 0 de entre los
coeficientes de transformación en un bloque 1430 residual, como se muestra en la Figura 14C. El mapa de
significancia es explorado de acuerdo con un orden predeterminado de exploración, mientras la codificación aritmética binaria adaptiva de contexto es realizada en el mismo. Por ejemplo, cuando el mapa de significancia de la Figura 14C es codificado de acuerdo con el orden de exploración de trama, y la exploración realizada de izquierda a derecha y de la parte superior a la inferior, la codificación aritmética binaria adaptiva de contexto es realizada en el
5
10
15
20
25
30
35
40
45
50
55
mapa de significancia que corresponde con la secuencia binaria de "111111110101000". La información de nivel del coeficiente efectivo, es decir, el signo y el valor absoluto del coeficiente efectivo, es codificada después que el mapa de significancia es codificado.
Este proceso en el campo de la técnica relacionada podría ser utilizado para la codificación de un bloque residual de transformación que tiene un tamaño pequeño, tal como 4x4 u 8x8, aunque no podría ser adecuado para la codificación de un bloque residual de transformación que tiene un tamaño grande, tal como 16 x 16, 32 x 32 o 64 x 64. En particular, si todos los coeficientes de transformación en un bloque residual de transformación son explorados y codificados de acuerdo con el proceso de las Figuras 14A-14C con respecto a un bloque residual de transformación que tiene un tamaño grande, la longitud de la secuencia binaria que corresponde con el mapa de significancia podría incrementarse y podría deteriorarse la eficiencia de la codificación.
En consecuencia, un procedimiento y aparato de codificación de un bloque residual de acuerdo con las realizaciones de ejemplo son capaces decodificar, de manera eficiente, un bloque residual de transformación dividiendo el bloque residual de transformación en unidades predeterminadas de banda de frecuencia y codificando el aviso de coeficiente efectivo de acuerdo con las unidades de banda de frecuencia, que indica si existe un coeficiente efectivo de transformación diferente de cero para cada unidad de banda de frecuencia, mientras se codifica la información de coeficiente efectivo de transformación, es decir, un mapa de significancia y la información de nivel de un coeficiente efectivo, en una banda de frecuencia en el cual un aviso de coeficiente efectivo de acuerdo con las unidades de banda de frecuencia tiene un valor de 1.
La Figura 15 es un diagrama de bloque de un aparato 1500 para la codificación de un bloque residual, de acuerdo con una realización de ejemplo. Mientras no se restringe a la misma, el aparato 1500 podría corresponder con el codificador 450 de entropía de la Figura 4, o podría ser incluido en el codificador 450 de entropía.
Con referencia a la Figura 15, el aparato 1500 incluye un divisor 1510 de banda de frecuencia, un generador 1520 de aviso de coeficiente efectivo y un codificador 1530 de coeficiente efectivo.
El divisor 1510 de banda de frecuencia divide el bloque residual de transformación en unidades predeterminadas de banda de frecuencia. Con referencia de regreso a la Figura 14A, en el bloque 1410 residual de transformación de ejemplo, el coeficiente de transformación izquierdo superior tiene un componente de baja frecuencia, y el coeficiente de transformación derecho inferior tiene un componente de alta frecuencia. La mayoría de los coeficientes efectivos de transformación del bloque 1410 residual de transformación podría existir en bandas de baja frecuencia, y los coeficientes de transformación que tienen componentes de alta frecuencia principalmente podrían tener un valor de 0. En este caso, un coeficiente efectivo de transformación diferente de cero de entre los coeficientes de transformación del componente de alta frecuencia es dispersado. De manera específica, la distribución de los coeficientes efectivos de transformación de los componentes de alta frecuencia podría ser dispersado cuando es generado el bloque residual de transformación al realizar la transformación con la unidad de transformación que tiene un tamaño de 16 x 16, 32 x 32, 64 x 64, o por encima, que es más grande que la unidad de transformación de la técnica relacionada que tiene que tiene un tamaño de 4x4 u 8x8, como en el codificador 400 de imagen. En consecuencia, el divisor 1510 de banda de frecuencia podría dividir el bloque residual de transformación en las unidades de banda de frecuencia mientras se consideran las características de distribución de acuerdo con las bandas de frecuencia de los coeficientes de transformación en el bloque residual de transformación.
Las Figuras 16A-16J son diagramas que describen la división de un bloque residual de transformación en unidades predeterminadas de banda de frecuencia, de acuerdo con una o más realizaciones de ejemplo.
Con referencia a la Figura 16A, el divisor 1510 de banda de frecuencia genera las unidades 1611-1614 de banda de frecuencia dividiendo el bloque 1610 residual de transformación en intervalos predeterminados de frecuencia de una banda de baja frecuencia a una frecuencia horizontal H1 y una frecuencia vertical V1. En la Figura 16A, los lados horizontales y los lados verticales de las unidades 1611-1614 de banda de frecuencia tienen la misma longitud, aunque se entiende que las longitudes de los lados horizontales y verticales podrían diferir entre sí. Si la longitud de una banda de frecuencia restante de la frecuencia horizontal H1 a una frecuencia horizontal máxima es menor que el intervalo de frecuencia que corresponde con la longitud del lado horizontal de cada una de las unidades 1611-1614 de banda de frecuencia, o si la longitud de una banda de frecuencia restante de la frecuencia vertical V1 a la frecuencia vertical máxima es menor que el intervalo de frecuencia que corresponde con la longitud del lado vertical de cada una de las unidades 1611-1614 de banda de frecuencia, el divisor 1510 de banda de frecuencia ya no divide más el bloque 1610 residual de transformación, y genera una unidad 1615 de banda de frecuencia que corresponde con el componente de alta frecuencia. Los coeficientes efectivos de transformación podrían ser distribuidos, de manera intensa, en las unidades 1611-1614 de banda de frecuencia que corresponden con los componentes de baja frecuencia, y la distribución de los coeficientes efectivos de transformación de los componentes de alta frecuencia podría ser dispersada. En consecuencia, aun cuando la totalidad de los componentes restantes de alta frecuencia, además de las unidades 1611-1614 de banda de frecuencia generadas al dividir el bloque 1610 residual de transformación en intervalos predeterminados de frecuencia, es generada en una unidad 1615 de banda de frecuencia, la sobrecarga mientras se codifica los coeficientes de transformación en la unidad 1615 de banda de frecuencia no podría incrementarse de manera sorprendente.
5
10
15
20
25
30
35
40
45
50
55
En otra realización de ejemplo, como se muestra en la Figura 16B, el divisor 1510 de banda de frecuencia podría generar las unidades 1621-1624 de banda de frecuencia dividiendo el bloque 1620 residual de transformación de una banda de baja frecuencia a una frecuencia horizontal H2 y una frecuencia vertical V2, y podría generar las unidades 1625-1627 de banda de frecuencia dividiendo los componentes restantes de alta frecuencia del bloque 1620 residual de transformación en función de la frecuencia horizontal H2 y la frecuencia vertical V2, de manera similar, a la descripción con referencia a la Figura 16A.
Además, de acuerdo con otra realización de ejemplo, como se muestra en la Figura 16C, el divisor 1510 de banda de frecuencia podría generar las unidades 1631-1634 de banda de frecuencia dividiendo el bloque 1630 residual de transformación de una banda de baja frecuencia a una frecuencia horizontal H3 y una frecuencia vertical V3, y podría generar las unidades 1635 y 1636 de banda de frecuencia de los componentes de alta frecuencia dividiendo en dos los componentes restantes de alta frecuencia del bloque 1630 residual de transformación en función de la frecuencia vertical V3, de manera similar a la descripción con referencia a la Figura 16A.
Con referencia a la Figura 16D, de acuerdo con otra realización de ejemplo, el divisor 1510 de banda de frecuencia podría generar las unidades 1641-1644 de banda de frecuencia dividiendo el bloque 1640 residual de transformación de una banda de baja frecuencia a una frecuencia horizontal H4 y una frecuencia vertical V4, y podría generar las unidades 1645 y 1646 de banda de frecuencia de los componentes de alta frecuencia dividiendo en dos los componentes restantes de alta frecuencia del bloque 1630 residual de transformación en función de la frecuencia horizontal H4, de manera similar a la descripción con referencia a la Figura 16A.
Como se describió con anterioridad, la distribución de los coeficientes efectivos de transformación se concentra en una banda de baja frecuencia, y es dispersada hacia la banda de alta frecuencia. En consecuencia, como se muestra en la Figura 16E, el divisor 1510 de banda de frecuencia divide el bloque 1650 residual de transformación de tal modo que el tamaño de unidad dividido en la banda de baja frecuencia es más pequeño que el tamaño de unidad dividido en la banda de alta frecuencia, considerando la característica de distribución de los coeficientes efectivos de transformación. En otras palabras, el divisor 1510 de banda de frecuencia divide el bloque 1650 residual de transformación en intervalos en la banda de baja frecuencia y de manera relativamente grande en la banda de alta frecuencia de modo que los coeficientes efectivos de transformación están concentrados en la banda de baja frecuencia son codificados en forma precisa. Por ejemplo, como se muestra en la Figura 16E, el divisor 1510 de banda de frecuencia podría generar las unidades 1651-1657 de división de banda de frecuencia al dividir el bloque 1650 residual de transformación en función de la frecuencia horizontal H5, la frecuencia vertical V5, la frecuencia horizontal H6 que tiene el valor más grande que el múltiplo de la frecuencia horizontal H5, y la frecuencia vertical V6 que tiene el valor más grande que el múltiplo de la frecuencia vertical V5. De esta manera, cuando A1651-A1657 indica, de manera respectiva, los tamaños de las unidades 1651-1657 de división de banda de frecuencia, el bloque 1650 residual de transformación es dividido, de tal modo que A1651 tiene un tamaño mínimo y A1657 tiene un tamaño máximo.
Con referencia a la Figura 16F, de acuerdo con otra realización de ejemplo, el divisor 1510 de banda de frecuencia podría dividir el bloque 1660 residual de transformación en unidades 1661 de banda de frecuencia que tienen el mismo tamaño.
Además, con referencia a la Figura 16G, de acuerdo con otra realización de ejemplo, el divisor 1510 de banda de frecuencia podría dividir en cuatro un bloque 1670 residual de transformación, y una vez más podría dividir en cuatro la unidad 1671 de banda de la frecuencia más pequeña de entre las unidades divididas en cuatro de banda de frecuencia para generar las unidades de banda de frecuencia. El divisor 1510 de banda de frecuencia una vez más podría dividir en cuatro una unidad 1672 de banda de la frecuencia más pequeña de entre las unidades de banda de frecuencia obtenidas dividiendo en cuatro la unidad 1671 de banda de la frecuencia más pequeña. Este proceso de división podría ser repetido hasta que los tamaños de las unidades divididas en cuatro de banda de frecuencia sean iguales o se encuentra por debajo del tamaño predeterminado.
De acuerdo con otra realización de ejemplo, con referencia a la Figura 16H, el divisor 1510 de banda de frecuencia podría generar una unidad 1681 de banda de frecuencia de un componente de baja frecuencia de una baja frecuencia a una frecuencia horizontal H7 y una frecuencia vertical V7, y podría generar las unidades 1682 y 1683 de banda de frecuencia al dividir en forma en diagonal los componentes restantes de alta frecuencia de un bloque 1680 residual de transformación.
Con referencia a las Figuras 161 y 16J, de acuerdo con una o más de otras realizaciones de ejemplo, el divisor 1510 de banda de frecuencia podría dividir los bloques 1690 y 1695 residuales de transformación mediante la conexión de una frecuencia horizontal y una frecuencia vertical, que tienen valores predeterminados. En la Figura 16I, el bloque 1690 residual de transformación es dividido conectando la frecuencia horizontal y la frecuencia vertical en intervalos uniformes de frecuencia. En la Figura 16J, el bloque 1695 residual de transformación es dividido de modo que los intervalos de frecuencia se incrementan hacia la alta frecuencia, es decir, conectando a1 y b1, a2 y b2, a3 y b3, y a4 y b4, en el que a1 < a2 < a3 < a4 y b1 < b2 < b3 < b4.
De acuerdo con otra realización de ejemplo, en lugar de utilizar una forma dividida predeterminada como se muestra en las Figuras 16A-16J, el divisor 1510 de banda de frecuencia podría determinar las características de imagen de
5
10
15
20
25
30
35
40
45
50
55
60
un bloque residual de transformación utilizando las características de distribución de los coeficientes efectivos de transformación del bloque residual de transformación o el número de los coeficientes efectivos de transformación en cada banda de frecuencia, y podría determinar el tamaño de la unidad de frecuencia en el bloque residual de transformación dividido de acuerdo con cada banda de frecuencia utilizando las características determinadas de imagen. Por ejemplo, cuando existen solo los coeficientes efectivos de transformación en un bloque residual de transformación en una banda de frecuencia más pequeña que la frecuencia horizontal H8 y una frecuencia vertical V8 y no existen en la banda de frecuencia más grande que la frecuencia horizontal H8 y la frecuencia vertical V8, el divisor 1510 de banda de frecuencia podría establecer el bloque residual de transformación total de la banda de baja frecuencia a la frecuencia horizontal H8 y la frecuencia vertical V8 como la unidad de banda de frecuencia. Alternativamente, el divisor 1510 de banda de frecuencia divide el bloque residual de transformación en unidades de banda de frecuencia que tienen el mismo tamaño, y coloca una banda de frecuencia restante más grande que la frecuencia horizontal H8 y la frecuencia vertical V8 como la unidad de banda de frecuencia.
Se entiende que la división del bloque residual de transformación en unidades predeterminadas de banda de frecuencia no es limitada a las realizaciones de ejemplo descritas con anterioridad con referencia a las Figuras 16A- 16J, y que el bloque residual de transformación podría ser dividido en varias formas en una o más de otras realizaciones de ejemplo.
Mientras tanto, las formas divididas de un bloque residual de transformación por el divisor 1510 de banda de frecuencia podrían colocarse, de manera idéntica, en un codificador y un decodificador. Sin embargo, se entiende que otra realización de ejemplo no es limitada a la misma. Por ejemplo, de acuerdo con otra realización de ejemplo, el índice dividido predeterminado podría ser determinado para cada una de las varias formas divididas, tal como se muestra en las Figuras 16A-16J, y el codificador podría insertar el índice dividido acerca de la información de división utilizada mientras se codifica el bloque residual de transformación en un flujo codificado de bits. Por ejemplo, cuando los valores de entero del índice dividido (div_index) 0 a 9 indican, de manera respectiva, las formas divididas de las Figuras 16A-16J, y la forma dividida utilizada para codificar un bloque residual de transformación actual es div_index=5 que corresponde con la forma mostrada en la Figura 16F, esta información de división podría ser agregada a la información de codificación del bloque residual de transformación actual.
Con referencia de regreso a la Figura 15, una vez que el divisor 1510 de banda de frecuencia divide el bloque residual de transformación en las unidades de banda de frecuencia, el generador 1520 de aviso de coeficiente efectivo genera un aviso de coeficiente efectivo que indica si existe el coeficiente efectivo de transformación en cada unidad de banda de frecuencia. Aquí, el generador 1520 de aviso de coeficiente efectivo no podría generar un aviso separado de coeficiente efectivo para la unidad de banda de la frecuencia más pequeña. Por ejemplo, cuando es dividido el bloque 1610 residual de transformación de la Figura 16A, el generador 1520 de aviso de coeficiente efectivo podría generar los avisos de coeficiente efectivo que indican si existen los coeficientes efectivos de transformación para las unidades 1612-1615 de banda de frecuencia, diferentes de la unidad 1611 de banda de frecuencia de una unidad de banda de la frecuencia más pequeña. Cuando los campos Coeff_exist_1612, Coeff_exist_1613, Coeff_exist_1614, y Coeff_exist_1615 indican, de manera respectiva, los avisos de coeficiente efectivo de las unidades 1612-1615 de banda de frecuencia, y solo existen los coeficientes efectivos en las unidades 1612 y 1613 de banda de frecuencia de entre las unidades 1612-1615 de banda de frecuencia, el generador 1520 de aviso de coeficiente efectivo genera los avisos de coeficiente efectivo de cada unidad de banda de frecuencia, por ejemplo, genera Coeff_exist_1612=1, Coeff_exist_1613=1, y Coeff_exist_1614=0, Coeff_exist_1615=0. Como se describió con anterioridad, debido a que un coeficiente efectivo de transformación podría existir en la unidad 1611 de banda de frecuencia de la unidad de banda de la frecuencia más pequeña, el aviso de coeficiente efectivo que indica la existencia del coeficiente efectivo de transformación no podría ser generado, por separado, para la unidad 1611 de banda de frecuencia. Además, en lugar de generar en forma separada el aviso de coeficiente efectivo para la unidad 1611 de banda de frecuencia, el campo de la técnica relacionada coded_block_flag que indica si existe el coeficiente efectivo de transformación en un bloque residual podría ser utilizado para indicar la existencia del coeficiente efectivo de transformación en la unidad 1611 de banda de frecuencia. Este proceso de generación del aviso de coeficiente efectivo no es limitado a la forma dividida de la Figura 16A, y podría ser aplicado en otras formas divididas en una o más de otras realizaciones de ejemplo, tal como aquellas de las Figuras 16B-16J.
Mientras tanto, el proceso de transformación o el proceso de transformación inversa podrían ser realizados, en forma individual, en cada unidad de banda de frecuencia al utilizar un procedimiento diferente de transformación o transformación inversa. Además, el proceso de transformación o el proceso de transformación inversa podría ser realizados solo en la unidad de banda de frecuencia que tiene un aviso de coeficiente efectivo 1, y podrían ser saltados en la unidad de banda de frecuencia que tiene un aviso de coeficiente efectivo 0.
Con referencia de regreso a la Figura 15, el codificador 1530 de coeficiente efectivo codifica un mapa de significancia y la información de nivel del coeficiente efectivo de transformación. El mapa de significancia indica las ubicaciones de los coeficientes efectivos de transformación que existen en la unidad de banda de frecuencia, en la cual el valor del aviso de coeficiente efectivo generado por el generador 1520 de aviso de coeficiente efectivo es 1, es decir, la unidad de banda de frecuencia que tiene el coeficiente efectivo de transformación.
Las Figuras 17A y 17B son diagramas de referencia que describen un proceso de codificación de un coeficiente efectivo de transformación, de acuerdo con una o más realizaciones de ejemplo. Las Figuras 17A y 17B ilustran las
5
10
15
20
25
30
35
40
45
50
55
60
formas divididas que corresponden con la forma dividida de la Figura 16E, en donde las unidades de banda de frecuencia son generadas al dividir en cuatro el bloque residual de transformación, y al dividir en cuatro una vez más la banda de baja frecuencia. Se entiende que el proceso descrito con referencia a las Figuras 17A y 17B también podría ser aplicado en las unidades de banda de frecuencia que tienen otras formas divididas, tal como cualquiera de las formas divididas de las Figuras 16A-16J.
El codificador 1530 de coeficiente efectivo podría codificar un coeficiente efectivo de transformación explorando el bloque residual de transformación total, o podría codificar el coeficiente efectivo de transformación en una unidad de banda de frecuencia al realizar la exploración, de manera independiente, para cada unidad de banda de frecuencia. En detalle, con referencia a la Figura 17A, el codificador 1530 de coeficiente efectivo podría codificar un mapa de significancia que indica las ubicaciones de los coeficientes efectivos de transformación que existen en un bloque 1710 residual de transformación, y la información de tamaño y signo de cada coeficiente efectivo de transformación, mientras se explora el bloque 1710 residual de transformación total de acuerdo con un orden predeterminado de exploración, por ejemplo, el orden de exploración de trama como se muestra en la Figura 17A. Aquí, la exploración podría ser saltada en una unidad de banda de frecuencia en la cual el aviso de coeficiente efectivo tiene un valor de 0, es decir, una unidad de banda de frecuencia que no tiene un coeficiente efectivo de transformación.
De acuerdo con otra realización de ejemplo, con referencia a la Figura 17B, el codificador 1530 de coeficiente efectivo podría codificar el mapa de significancia y la información de nivel del coeficiente efectivo de transformación para cada unidad de banda de frecuencia de acuerdo con una forma dividida de un bloque 1720 residual de transformación dividido por el divisor 1510 de banda de frecuencia.
Las Figuras 18A y 18B son diagramas de referencia que describen en detalle un proceso de codificación de un bloque residual, de acuerdo con una realización de ejemplo. En las Figuras 18A y 18B, un coeficiente de transformación indicado con x es el coeficiente efectivo de transformación, y el coeficiente de transformación sin ninguna indicación tiene un valor de 0.
Con referencia a la Figura 18A, el divisor 1510 de banda de frecuencia divide el bloque 1810 residual de transformación de acuerdo con una forma dividida, tal como una de las formas divididas mostradas en las Figuras 16A-16J. La Figura 18A muestra una forma dividida que corresponde con la forma dividida de la Figura 16E, aunque se entiende que el proceso con referencia a la Figura 18A también podría ser aplicado en otras formas divididas. El generador 1520 de aviso de coeficiente efectivo coloca, de manera respectiva, los avisos de coeficiente efectivo de las unidades 1811-1813 de banda de frecuencia que incluyen los coeficientes efectivos de transformación como 1, y coloca, de manera respectiva, los avisos de coeficiente efectivo de las unidades 1814-1817 de banda de frecuencia que no incluyen el coeficiente efectivo de transformación como 0. El codificador 1530 de coeficiente efectivo codifica un mapa de significancia que indica las ubicaciones de los coeficientes efectivos de transformación mientras se explora el bloque 1810 residual de transformación total. Como se describió con anterioridad, el mapa de significancia indica si el coeficiente de transformación de acuerdo con cada índice de exploración es un coeficiente efectivo de transformación o 0. Después de codificar el mapa de significancia, el codificador 1530 de coeficiente efectivo codifica la información de nivel de cada coeficiente efectivo de transformación, la información de nivel del coeficiente efectivo de transformación incluye la información de signo y valor absoluto del coeficiente efectivo de transformación. Por ejemplo, el mapa de significancia de las unidades 1811-1813 de banda de frecuencia que incluye los coeficientes efectivos de transformación podría tener el valor de secuencia binaria, tal como
"1000100010101110100100100010001", cuando la exploración es realizada de acuerdo con el orden de exploración de trama como se muestra en la Figura 18A.
Asimismo, cuando la información acerca del coeficiente efectivo de transformación es codificada mientras se explora el bloque 1810 residual de transformación total como se muestra en la Figura 18A, un aviso de fin de bloque (EOB) que indica si el coeficiente efectivo de transformación es el coeficiente efectivo final de transformación podría ser colocado para el bloque 1810 residual de transformación total o para cada unidad de banda de frecuencia. Cuando el aviso EOB es colocado para el bloque 1810 residual de transformación total, solo el aviso EOB de un coeficiente 1802 de transformación del coeficiente efectivo final de transformación de acuerdo con el orden de exploración de entre los coeficientes de transformación de la Figura 18A podría tener un valor de 1. Por ejemplo, como se describió con anterioridad, si el mapa de significancia de acuerdo con la Figura 18A tiene el valor de
"1000100010101110100100100010001", el aviso EOB que corresponde con el mapa de significancia tiene un valor de "000000000001" debido a que solo el coeficiente efectivo final de transformación de entre 12 los coeficientes efectivos de transformación incluidos en "1000100010101110100100100010001" tiene el valor de 1. En otras palabras, un total de 12 bits es utilizado para expresar el aviso EOB que corresponde con el mapa de significancia de la Figura 18A.
Alternativamente, con el propósito de reducir el número de bits utilizados para expresar el aviso EOB, el codificador 1530 de coeficiente efectivo podría definir el aviso (Tlast) que indica si existe el coeficiente efectivo final de transformación de acuerdo con cada unidad de banda de frecuencia, podría colocar en el Tlast como 1 si existe el coeficiente efectivo final de transformación de acuerdo con cada unidad de banda de frecuencia y como 0 si no existe el coeficiente efectivo final de transformación, y coloca un aviso EOB solo para una unidad de banda de
frecuencia en el que Tlast es 1, con lo cual, se reduce el número de bits utilizados para identificar las ubicaciones de
los coeficientes efectivos de transformación en el bloque residual de transformación total y el coeficiente efectivo
5
10
15
20
25
30
35
40
45
50
55
60
final de transformación. En detalle, con referencia a la Figura 18A, el codificador 1530 de coeficiente efectivo podría verificar la existencia de un coeficiente efectivo final de transformación para cada una de las unidades 1811-1813 de banda de frecuencia que incluye los coeficientes efectivos de transformación, y colocar o establecer Tlast como 1 en la unidad 1812 de banda de frecuencia que incluye el coeficiente efectivo final de transformación, y establecer Tlast como 0 en las unidades 1811 y 1813 de banda de frecuencia restantes. Si cada bit de Tlast indica la existencia del coeficiente efectivo final de transformación en cada una de las unidades 1811-1813 de banda de frecuencia de acuerdo con el orden de exploración de los coeficientes de transformación, el bit más significante (MSB) de Tlast podría indicar si existe el coeficiente efectivo de transformación en la unidad de banda de frecuencia más baja, y el bit menos significante (LSB) de Tlast podría indicar si existe el coeficiente efectivo final de transformación en la unidad 1812 de banda de frecuencia. Es decir, el valor de bit de "001" es establecido debido a que Tlast tiene un valor de 0 para la unidad 1811 de banda de frecuencia, 0 para la unidad 1813 de banda de frecuencia, y 1 para la unidad 1812 de banda de frecuencia. Aquí, debido a que el coeficiente efectivo de transformación en un bloque residual de transformación podría finalizar en la unidad 1811 de banda de frecuencia que es la más baja, el valor Tlast no podría ser asignado en forma separada para la unidad 1811 de banda de frecuencia. Es decir, Tlast podría ser establecido solo para la banda de frecuencia como 1812 y 1813 que excluye la banda 1811 de frecuencia de entre las unidades 1811-1813 de banda de frecuencia que son exploradas de acuerdo con el orden de exploración. Aquí, los valores de dos bits de "01" son establecidos como Tlast. El valor de "0" que es el MSB de "01" indica que no existe el coeficiente efectivo final de transformación del bloque residual de transformación en la unidad 1813 de banda de frecuencia, y el valor de "1" que es el LSB de "01" indica que existe el coeficiente efectivo final de transformación del bloque residual de transformación en la unidad 1812 de banda de frecuencia. Tlast podría tener un valor de "00" si existe el coeficiente efectivo final de transformación del bloque residual de transformación en la banda 1811 de frecuencia de la unidad de banda de frecuencia más baja. De esta manera, cuando todos los bits de Tlast son 0, podría determinarse que existe el coeficiente efectivo final de transformación del bloque residual de transformación en la unidad 1811 de banda de frecuencia.
En la presente realización ejemplo, el codificador 1530 de coeficiente efectivo coloca un aviso EOB solo para la unidad de banda de frecuencia en la cual Tlast es 1, es decir, la unidad de banda de frecuencia incluye el coeficiente efectivo final de transformación del bloque residual de transformación. Con referencia a la Figura 18A, el codificador 1530 de coeficiente efectivo coloca un aviso EOB solo para cada coeficiente efectivo de transformación que existe en la unidad 1812 de banda de frecuencia en la cual Tlast es 1. Debido a que existe un total de cuatro coeficientes efectivos de transformación en la unidad 1812 de banda de frecuencia, el aviso EOB tiene cuatro bits de "0001". De acuerdo con otra realización de ejemplo, un total de seis a siete bits son utilizados para identificar la ubicación de los coeficientes efectivos de transformación en el bloque residual de transformación, y el coeficiente efectivo final de transformación, debido a que de dos a tres bits son colocados para Tlast y cuatro bits son colocados para el aviso EOB. Aquí, de cinco a seis bits son guardados si se compara con la realización de ejemplo previamente descrita en la cual un total de 12 bits son utilizados para colocar el aviso EOB, tal como "000000000001".
De acuerdo con otra realización de ejemplo, cuando un aviso EOB es colocado para cada unidad de banda de frecuencia, los avisos EOB del coeficiente 1801 de transformación en la unidad 1811 de banda de frecuencia, del coeficiente 1802 de transformación en la unidad 1812 de banda de frecuencia, y del coeficiente 1803 de transformación en la unidad 1813 de banda de frecuencia son establecidos en 1. Los avisos EOB no son colocados establecidos para las unidades 1814-1817 de banda de frecuencia que no incluyen los coeficientes efectivos de transformación. Como tal, cuando un aviso EOB es colocado para cada unidad de banda de frecuencia que incluye un coeficiente efectivo de transformación, es explorado un coeficiente efectivo de transformación en una unidad de banda de frecuencia predeterminada, y posteriormente, podría ser explorado el coeficiente efectivo de transformación en una siguiente unidad de banda de frecuencia. Por ejemplo, el coeficiente de transformación en la unidad 1812 de banda de frecuencia podría ser explorado una vez que sea explorado el coeficiente 1803 de transformación de la unidad 1813 de banda de frecuencia. Con referencia a la Figura 18B, la información de coeficiente efectivo de transformación es codificada, de manera independiente, para cada unidad de banda de frecuencia. El codificador 1530 de coeficiente efectivo codifica un mapa de significancia que indica las ubicaciones de los coeficientes efectivos de transformación, y la información de nivel de cada coeficiente efectivo de transformación mientras explora, de manera independiente, cada unidad de banda de frecuencia de un bloque 1820 residual de transformación. Por ejemplo, el mapa de significancia de una unidad 1821 de banda de frecuencia tiene un valor de secuencia binaria tal como "1000100010011" cuando es explorado de acuerdo con el orden de exploración de trama como se muestra en la Figura 18B. Asimismo, el codificador 1530 de coeficiente efectivo coloca un aviso EOB de un coeficiente 1831 efectivo de transformación que corresponde con el coeficiente efectivo final de transformación de entre los coeficientes efectivos de transformación de la unidad 1821 de banda de frecuencia como 1. De manera similar, el codificador de coeficiente efectivo 1530 genera un valor de secuencia binaria, tal como "101010001", como un mapa de significancia de una unidad 1822 de banda de frecuencia. Asimismo, el codificador 1530 de coeficiente efectivo coloca un EOB de un coeficiente 1832 efectivo de transformación de entre los coeficientes efectivos de transformación en la unidad 1822 de banda de frecuencia como 1. De manera similar, el codificador 1530 de coeficiente efectivo genera un valor de secuencia binaria, tal como "11001", como un mapa de significancia de una unidad 1823 de banda de frecuencia, y coloca un aviso EOB de un coeficiente 1833 efectivo de transformación como 1.
Mientras tanto, el codificador 1530 de coeficiente efectivo podría codificar, en forma separada, un aviso
5
10
15
20
25
30
35
40
45
50
55
End_Of_WholeBlock que indica el coeficiente efectivo final de transformación del bloque 1820 residual de transformación, además del aviso EOB que indica que los coeficientes 1831-1833 efectivos de transformación son los últimos coeficientes efectivos de transformación en una correspondiente unidad de banda de frecuencia. Con referencia a la Figura 18B, si las unidades 1821-1827 de banda de frecuencia son exploradas, de manera independiente, en el orden señalado, el coeficiente 1833 efectivo de transformación es el coeficiente efectivo final de transformación de la unidad 1823 de banda de frecuencia y al mismo tiempo, el coeficiente efectivo final de transformación del bloque 1820 residual de transformación. En consecuencia, el aviso EOB y el aviso End_Of_WholeBlock del coeficiente 1833 efectivo de transformación tienen ambos un valor de 1. En los coeficientes 1831 y 1832 efectivos de transformación, que son los últimos coeficientes efectivos de transformación de las unidades 1821 y 1822 de banda de frecuencia, los avisos EOB tienen un valor de 1, aunque los avisos End_Of_WholeBlock tienen un valor de 0.
Como tal, cuando el aviso EOB y el aviso End_Of_WholeBlock son colocados para un coeficiente efectivo final de transformación de acuerdo con cada banda de frecuencia, la existencia de un coeficiente efectivo de transformación en una correspondiente unidad de banda de frecuencia primero podría ser determinada utilizando el aviso de coeficiente efectivo descrito con anterioridad durante la codificación para así saltar la exploración de una unidad de banda de frecuencia, en la cual el aviso de coeficiente efectivo es 0. Además, cuando es explorado el coeficiente de transformación, en el cual el aviso EOB es 1, mientras se exploran los coeficientes de transformación en una unidad de banda de frecuencia, en la cual el aviso de coeficiente efectivo es 1, es decir, la unidad de banda de frecuencia que tiene un coeficiente efectivo de transformación, la siguiente unidad de banda de frecuencia podría ser explorada. Cuando es explorado el coeficiente efectivo de transformación, en el cual el aviso eOb es 1 y el aviso End_Of_WholeBlock es 1, los coeficientes efectivos de transformación de un bloque residual de transformación total son explorados, y de esta manera, se finaliza la exploración del bloque residual de transformación.
Las Figuras 19A y 19B son diagramas de referencia que describen la información de codificación de un bloque residual de transformación, que es generada por el codificador 1530 de coeficiente efectivo, de acuerdo con una o más realizaciones de ejemplo.
Con referencia a la Figura 19A, el codificador 1530 de coeficiente efectivo podría codificar, de manera secuencial, los mapas de significancia y las piezas de la información de aviso de coeficiente efectivo generada de acuerdo con las bandas de frecuencia. Cuando una primera banda de frecuencia es la banda de frecuencia más pequeña de un bloque residual de transformación, solo el mapa de significancia 1911 de la primera banda de frecuencia podría ser codificado y el aviso de la primera banda de frecuencia, que indica si existe un coeficiente efectivo de transformación en la primera banda de frecuencia, no podría ser codificado por separado, como se muestra en la Figura 19A. De acuerdo con otra realización de ejemplo, con referencia a la Figura 19B, los avisos de coeficiente efectivo 1921 de cada banda de frecuencia primero podrían ser codificados, y posteriormente, podrían ser codificados los mapas de significancia 1925 de cada banda de frecuencia.
La Figura 20 es un diagrama de flujo que ilustra un procedimiento de codificación de un bloque residual, de acuerdo con una realización de ejemplo.
Con referencia a la Figura 20, el intra-predictor 410 o el compensador 425 de movimiento de la Figura 4 generan un bloque de predicción por medio de la inter-predicción o la intra-predicción utilizando el bloque actual en la operación 2010.
En la operación 2020, un sustractor genera un bloque residual que es la diferencia entre el bloque de predicción y el bloque actual.
En la operación 2030, el transformador 430 transforma el bloque residual en un dominio de frecuencia para generar un bloque residual de transformación. Por ejemplo, el bloque residual podría ser transformado en el dominio de frecuencia por medio de la transformada de coseno discreto (DCT).
En la operación 2040, el divisor 1510 de banda de frecuencia divide el bloque residual de transformación en unidades predeterminadas de banda de frecuencia. Como se describió con anterioridad, el divisor 1510 de banda de frecuencia podría dividir el bloque residual de transformación en una de varias formas divididas, por ejemplo, como se muestra en las Figuras 16A-16J. En detalle, el divisor 1510 de banda de frecuencia podría dividir el bloque residual de transformación, de manera que el tamaño de unidad dividido en una banda de baja frecuencia sea más pequeño que el tamaño de unidad dividido en una banda de alta frecuencia, podría dividir el bloque residual de transformación dividiendo en cuatro del bloque residual de transformación y dividiendo en forma repetida la banda de baja frecuencia más pequeña en el bloque residual de transformación dividido en cuatro, divide el bloque residual de transformación en unidades de banda de frecuencia que tienen el mismo tamaño, podría dividir el bloque residual de transformación mediante la conexión de una frecuencia horizontal y una frecuencia vertical que tienen el mismo valor, o podría determinar el tamaño dividido de acuerdo con las bandas de frecuencia del bloque residual de transformación utilizando las características de imagen del bloque residual de transformación determinadas utilizando los coeficientes de transformación del bloque residual de transformación, y el bloque residual de transformación dividido de acuerdo con el tamaño dividido que es determinado de acuerdo con las bandas de frecuencia.
5
10
15
20
25
30
35
40
45
50
55
60
En la operación 2050, el generador 1520 de aviso de coeficiente efectivo genera un aviso de coeficiente efectivo de acuerdo con las unidades de banda de frecuencia, en el que el aviso de coeficiente efectivo que indica si el coeficiente efectivo de transformación es diferente de cero en cada unidad de banda de frecuencia. El aviso de coeficiente efectivo no podría ser generado, en forma separada, para una unidad de banda de la frecuencia más pequeña de entre las unidades de banda de frecuencia del bloque residual de transformación. Asimismo, el codificador 1530 de coeficiente efectivo codifica un mapa de significancia que indica las ubicaciones de los coeficientes efectivos de transformación y la información de nivel de los coeficientes efectivos de transformación con respecto a las unidades de banda de frecuencia, en la cual los avisos de coeficiente efectivo no son 0, es decir, las unidades de banda de frecuencia incluyen los coeficientes efectivos de transformación, mientras se explora el bloque residual de transformación de acuerdo con un orden predeterminado de exploración o se explora, de manera independiente, cada unidad de banda de frecuencia, como se describió con anterioridad con referencia a las Figuras 17A, 17B, 18A y 18B.
De acuerdo con un procedimiento y un aparato para la codificación de un bloque residual de acuerdo con una o más realizaciones de ejemplo como se describió con anterioridad, la información acerca del coeficiente efectivo de transformación podría ser codificada, de manera eficiente, de acuerdo con las características de distribución del coeficiente efectivo de transformación en un bloque residual de transformación que tienen un tamaño que es más grande o igual a 16 x 16, al dividir el bloque residual de transformación en unidades de banda de frecuencia. De esta manera, un bloque residual de transformación que tiene un tamaño grande es dividido en unidades de banda de frecuencia, y es generado un aviso de coeficiente efectivo que indica la existencia del coeficiente efectivo de transformación de acuerdo con las unidades de banda de frecuencia. En consecuencia, el proceso de exploración de una banda de frecuencia, en el cual no existe el coeficiente efectivo de transformación en el bloque residual de transformación, podría ser saltado y podría ser reducido el número de bits generado para codificar el coeficiente efectivo de transformación.
La Figura 21 es un diagrama de bloque de un aparato 2100 para la decodificación de un bloque residual, de acuerdo con una realización de ejemplo. Mientras no se restringe al mismo, el aparato 2100 podría corresponder con el decodificador 520 de entropía de la Figura 5 o podría ser incluido en el decodificador 520 de entropía.
Con referencia a la Figura 21, el aparato 2100 incluye un divisor 2110 de banda de frecuencia, un determinador 2120 de banda de frecuencia efectiva y un decodificador 2130 de coeficiente efectivo.
El divisor 2110 de banda de frecuencia divide el bloque residual de transformación en unidades predeterminadas de banda de frecuencia. En detalle, como se describe con referencia a las Figuras 16A-16H, el divisor 2110 de banda de frecuencia podría dividir el bloque residual de transformación, de tal modo que el tamaño de unidad dividido en una banda de baja frecuencia sea más pequeño que el tamaño de unidad dividido en una banda de alta frecuencia, podría dividir el bloque residual de transformación dividiendo en cuatro del bloque residual de transformación y dividiendo en forma repetida la banda de baja frecuencia más pequeña en el bloque residual de transformación dividido en cuatro, divide el bloque residual de transformación en unidades de banda de frecuencia que tienen el mismo tamaño, podría dividir el bloque residual de transformación mediante la conexión de una frecuencia horizontal y una frecuencia vertical que tienen el mismo valor, o podría determinar el tamaño dividido de acuerdo con las bandas de frecuencia del bloque residual de transformación utilizando las características de imagen del bloque residual de transformación determinado utilizando los coeficientes de transformación del bloque residual de transformación, y el bloque residual de transformación dividido de acuerdo con el tamaño dividido que es determinado de acuerdo con las bandas de frecuencia. La forma dividida del bloque residual de transformación podría ser predeterminada por el codificador y un decodificador, aunque se entiende que otra realización de ejemplo no es limitada a la misma. Por ejemplo, de acuerdo con otra realización de ejemplo, cuando un índice dividido predeterminado es establecido para cada forma dividida y cuando es agregada la información acerca del índice dividido utilizada para dividir un bloque residual de transformación actual a un flujo de bits durante la codificación, el divisor 2110 de banda de frecuencia podría determinar cuál forma dividida fue utilizada para dividir el bloque residual de transformación actual en función de la información acerca del índice dividido incluido en el flujo de bits.
El determinador 2120 de banda de frecuencia efectiva extrae un aviso de coeficiente efectivo de un flujo de bits, en el que el aviso de coeficiente efectivo indica si existe un coeficiente efectivo de transformación de acuerdo con las unidades de banda de frecuencia obtenidas al dividir el bloque residual de transformación. El determinador 2120 de banda de frecuencia efectiva podría determinar la unidad de banda de frecuencia que incluye el coeficiente efectivo de transformación de entre las unidades de banda de frecuencia utilizando el aviso de coeficiente efectivo. Por ejemplo, cuando es utilizado el bloque 1820 residual de transformación de la Figura 18B, los avisos de coeficiente efectivo de las unidades 1821-1823 de banda de frecuencia tienen un valor de 1 y los avisos de coeficiente efectivo de las unidades 1824-1827 de banda de frecuencia tienen un valor de 0. De esta manera, el determinador 2120 de banda de frecuencia efectiva podría determinar las unidades de banda de frecuencia que incluyen los coeficientes efectivos de transformación de los avisos extraídos de coeficiente efectivo de acuerdo con las bandas de frecuencia.
El decodificador 2130 de coeficiente efectivo decodifica los coeficientes efectivos de transformación en las unidades de banda de frecuencia que son determinados para incluir los coeficientes efectivos de transformación por medio del determinador 2120 de banda de frecuencia efectiva. En detalle, el decodificador 2130 de coeficiente efectivo extrae un mapa de significancia que indica las ubicaciones de los coeficientes efectivos de transformación y la información
5
10
15
20
25
30
35
40
45
50
de nivel de los coeficientes efectivos de transformación, del flujo de bits. Asimismo, como se describió con anterioridad con referencia a las Figuras 17A y 17B, el decodificador 2130 de coeficiente efectivo determina las ubicaciones de los coeficientes efectivos de transformación en el bloque residual de transformación utilizando el mapa de significancia, y restaurar los valores de los coeficientes efectivos de transformación utilizando la información de nivel mientras explora el bloque residual de transformación total o explora cada unidad de banda de frecuencia de acuerdo con un orden predeterminado de exploración que es independiente para cada unidad de banda de frecuencia.
La Figura 22 es un diagrama de flujo que ilustra un procedimiento de decodificación de un bloque residual, de acuerdo con una realización de ejemplo.
Con referencia a la Figura 22, en la operación 2210, el determinador 2120 de banda de frecuencia efectiva extrae un aviso de coeficiente efectivo de un flujo codificado de bits, en donde el aviso de coeficiente efectivo indica si existe un coeficiente efectivo de transformación de acuerdo con las unidades de banda de frecuencia obtenidas dividiendo un bloque residual de transformación de un bloque actual.
En la operación 2220, el divisor 2110 de banda de frecuencia divide el bloque residual de transformación en las unidades de banda de frecuencia. Como se describió con anterioridad con referencia a las Figuras 16A-16J, el divisor 2110 de banda de frecuencia podría dividir el bloque residual de transformación, de tal modo que el tamaño de unidad dividido en una banda de baja frecuencia es más pequeño que el tamaño de unidad dividido en una banda de alta frecuencia, también podría dividir el bloque residual de transformación dividiendo en cuatro del bloque residual de transformación y dividiendo en forma repetida la banda de baja frecuencia más pequeña en el bloque residual de transformación dividido en cuatro, además podría dividir el bloque residual de transformación en unidades de banda de frecuencia que tienen el mismo tamaño, podría dividir el bloque residual de transformación mediante la conexión de una frecuencia horizontal y una frecuencia vertical que tienen el mismo valor, o podría determinar el tamaño dividido de acuerdo con las bandas de frecuencia del bloque residual de transformación utilizando las características de imagen del bloque residual de transformación determinado utilizando los coeficientes de transformación del bloque residual de transformación, y el bloque residual de transformación dividido de acuerdo con el tamaño dividido que es determinado de acuerdo con las bandas de frecuencia. Esta forma dividida podría ser predeterminada con un codificador, o podría ser determinada utilizando la información acerca de un índice dividido que es agregado por separado al flujo codificado de bits. Además, se entiende que las operaciones 2210 y 2220 podrían ser cambiadas en orden o podrían ser realizadas de manera simultánea o de una manera sustancialmente simultánea.
En la operación 2230, el divisor 2110 de banda de frecuencia determina la unidad de banda de frecuencia que incluye el coeficiente efectivo de transformación de entre las unidades de banda de frecuencia, utilizando el aviso extraído de coeficiente efectivo. El decodificador 2130 de coeficiente efectivo restaura el coeficiente efectivo de transformación utilizando el mapa de significancia acerca de la unidad de banda de frecuencia determinada para que incluya el coeficiente efectivo de transformación, y la información de nivel del coeficiente efectivo de transformación.
De acuerdo con una o más realizaciones de ejemplo, el aviso de coeficiente efectivo que indica la existencia del coeficiente efectivo de transformación es generado de acuerdo con las unidades de banda de frecuencia, de modo que el proceso de exploración de la banda de frecuencia salta el bloque residual de transformación en el cual no existe el coeficiente efectivo de transformación, y es reducido el número de bits generados para codificar el coeficiente efectivo de transformación.
Mientras no se restringe a la misma, una realización de ejemplo también puede ser incluida como un código susceptible de ser leído por ordenador en un medio de grabación susceptible de ser leído por ordenador. El medio de grabación susceptible de ser leído por ordenador es cualquier dispositivo de almacenamiento de datos que puede almacenar datos los cuales pueden ser posteriormente leídos por un sistema de computadora. Los ejemplos del medio de grabación susceptible de ser leído por ordenador incluyen la memoria solo de lectura (ROM), la memoria de acceso aleatorio (RAM), CD-ROM, cintas magnéticas, discos flexibles y dispositivos ópticos de almacenamiento de datos. El medio de grabación susceptible de ser leído por ordenador también puede ser distribuido a través de una red acoplada con sistemas de computadora de modo que el código susceptible de ser leído por ordenador es almacenado y ejecutado en un modo distribuido.

Claims (1)

  1. 5
    10
    15
    20
    25
    30
    35
    40
    45
    REIVINDICACIONES
    1. Un aparato para decodificar una imagen, comprendiendo el aparato:
    un extractor configurado para extraer, de un flujo de bits, información de división de una unidad de codificación actual indicando si la unidad de codificación actual se divide en unidades de codificación de menor profundidad, en el que la unidad de codificación actual se divide jerárquicamente desde una unidad de codificación máxima, cuando la información de división de la unidad de codificación actual indica que la unidad de codificación actual ya no se divide en unidades de codificación de la menor profundidad, extraer, del flujo de bits, información sobre un modo de predicción de la unidad de codificación actual indicando un intra-modo o un inter-modo e información sobre un tipo de partición indicando un tamaño de una unidad de predicción obtenida de la unidad de codificación actual y obtener, del flujo de bits, un aviso de bloque codificado que indica si un bloque residual de transformación obtenido de la unidad de codificación actual incluye al menos un coeficiente de transformación efectiva que no es cero;
    cuando el aviso de bloque codificado indica que el bloque residual de transformación incluye al menos un coeficiente de transformación efectiva que no es cero, obtener avisos de coeficiente efectivos para una pluralidad de unidades de banda de frecuencia, en el que los avisos de coeficiente efectivos para la pluralidad de unidades de bandas de frecuencia se obtienen a partir de unidades de banda de frecuencia excepto una primera unidad de banda de frecuencia correspondiente a la banda de frecuencia más baja entre la pluralidad de unidades de bandas de frecuencia, incluyéndose la pluralidad de unidades de banda de frecuencia en el bloque residual de transformación,
    cuando un aviso de coeficiente efectivo de una segunda unidad de banda de frecuencia indica que la segunda unidad de banda de frecuencia incluye al menos un coeficiente de transformación efectivo que no es cero, obtener coeficientes de transformación de la segunda unidad de banda de frecuencia en base a un mapa de significancia que indica ubicaciones de coeficientes de transformación efectivos que no son cero existentes en la segunda unidad de banda de frecuencia e información de nivel de los coeficientes de transformación efectivos que no son cero existentes en la segunda unidad de banda de frecuencia obtenida a partir del flujo de bits, y cuando el aviso de coeficiente efectivo de la segunda unidad de banda de frecuencia indica que la segunda unidad de banda de frecuencia no incluye al menos un coeficiente de transformación efectivo que no es cero, determinar los coeficientes de transformación de la segunda unidad de banda de frecuencia como cero, cuando el aviso de bloque codificado indica que el bloque residual de transformación incluye al menos un coeficiente de transformación efectivo que no es cero, obtener coeficientes de transformación de la primera unidad de banda de frecuencia en base a un mapa de significancia que indica ubicaciones de coeficientes de transformación efectivos que no son cero existentes en la primera unidad de banda de frecuencia e información de nivel de los coeficientes de transformación efectivos que no son cero existentes en la primera unidad de banda de frecuencia obtenida a partir del flujo de bits; y
    un decodificador configurado para realizar una transformación inversa en el bloque residual de transformación, configurándose dicho decodificador para realizar una intra-predicción o una inter-predicción en la unidad de predicción en base a la información sobre el modo de predicción y la información sobre el tipo de partición; en el que la segunda unidad de banda de frecuencia es una de la pluralidad de unidades de banda de frecuencia obtenidas del bloque residual de transformación y diferente de la primera unidad de banda de frecuencia, en el que una forma de la unidad de codificación máxima es un cuadrado que tiene una anchura y una longitud en potencias de 2,
    en el que una forma de la unidad de codificación actual es un cuadrado, y en el que una forma del bloque residual de transformación es un cuadrado, Y
    en el que la pluralidad de unidades de bandas de frecuencia obtenidas del bloque residual de transformación tienen el mismo tamaño.
ES15158614.6T 2009-10-28 2010-10-28 Procedimiento y aparato de codificación de bloque residual, y procedimiento y aparato de decodificación de bloque residual Active ES2688347T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020090102818A KR101457894B1 (ko) 2009-10-28 2009-10-28 영상 부호화 방법 및 장치, 복호화 방법 및 장치
KR20090102818 2009-10-28

Publications (1)

Publication Number Publication Date
ES2688347T3 true ES2688347T3 (es) 2018-11-02

Family

ID=43898421

Family Applications (6)

Application Number Title Priority Date Filing Date
ES15158612.0T Active ES2688346T3 (es) 2009-10-28 2010-10-28 Procedimiento y aparato de codificación de bloque residual, y procedimiento y aparato de decodificación de bloque residual
ES15158613.8T Active ES2690406T3 (es) 2009-10-28 2010-10-28 Procedimiento y aparato de codificación de bloque residual y procedimiento y aparato de decodificación de bloque residual
ES15158614.6T Active ES2688347T3 (es) 2009-10-28 2010-10-28 Procedimiento y aparato de codificación de bloque residual, y procedimiento y aparato de decodificación de bloque residual
ES10827104.0T Active ES2687471T3 (es) 2009-10-28 2010-10-28 Procedimiento de decodificación de bloque residual
ES18185853T Active ES2751123T3 (es) 2009-10-28 2010-10-28 Procedimiento y aparato de codificación de una imagen y medio legible por ordenador que almacena una secuencia de bits de vídeo codificado
ES15158640.1T Active ES2687479T3 (es) 2009-10-28 2010-10-28 Procedimiento de codificación de bloque residual

Family Applications Before (2)

Application Number Title Priority Date Filing Date
ES15158612.0T Active ES2688346T3 (es) 2009-10-28 2010-10-28 Procedimiento y aparato de codificación de bloque residual, y procedimiento y aparato de decodificación de bloque residual
ES15158613.8T Active ES2690406T3 (es) 2009-10-28 2010-10-28 Procedimiento y aparato de codificación de bloque residual y procedimiento y aparato de decodificación de bloque residual

Family Applications After (3)

Application Number Title Priority Date Filing Date
ES10827104.0T Active ES2687471T3 (es) 2009-10-28 2010-10-28 Procedimiento de decodificación de bloque residual
ES18185853T Active ES2751123T3 (es) 2009-10-28 2010-10-28 Procedimiento y aparato de codificación de una imagen y medio legible por ordenador que almacena una secuencia de bits de vídeo codificado
ES15158640.1T Active ES2687479T3 (es) 2009-10-28 2010-10-28 Procedimiento de codificación de bloque residual

Country Status (23)

Country Link
US (6) US8811479B2 (es)
EP (6) EP2899979B1 (es)
JP (5) JP5711247B2 (es)
KR (1) KR101457894B1 (es)
CN (6) CN104796707B (es)
AU (1) AU2010313967B2 (es)
BR (5) BR112012009722B1 (es)
CA (5) CA2883923C (es)
CY (5) CY1121010T1 (es)
DK (6) DK3410713T3 (es)
ES (6) ES2688346T3 (es)
HR (5) HRP20181465T1 (es)
HU (5) HUE041470T2 (es)
LT (5) LT2903279T (es)
MX (1) MX2012004803A (es)
MY (5) MY177998A (es)
PL (6) PL2899980T3 (es)
PT (5) PT2899980T (es)
RS (5) RS57673B1 (es)
RU (5) RU2564631C2 (es)
SI (5) SI2471266T1 (es)
WO (1) WO2011053020A2 (es)
ZA (5) ZA201203084B (es)

Families Citing this family (80)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101457894B1 (ko) * 2009-10-28 2014-11-05 삼성전자주식회사 영상 부호화 방법 및 장치, 복호화 방법 및 장치
BR122014030027A2 (pt) * 2010-04-23 2019-08-20 Soo-Mi Oh Equipamento para a codificação de uma imagem em movimento
RS56250B1 (sr) * 2010-07-09 2017-11-30 Samsung Electronics Co Ltd Uređaj za entropijsko dekodiranje koeficijenta transformacije
US10091529B2 (en) 2010-07-09 2018-10-02 Samsung Electronics Co., Ltd. Method and apparatus for entropy encoding/decoding a transform coefficient
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
US9049452B2 (en) 2011-01-25 2015-06-02 Mediatek Singapore Pte. Ltd. Method and apparatus for compressing coding unit in high efficiency video coding
US8548057B2 (en) 2011-01-25 2013-10-01 Microsoft Corporation Video coding redundancy reduction
US9106913B2 (en) 2011-03-08 2015-08-11 Qualcomm Incorporated Coding of transform coefficients for video coding
US9338449B2 (en) 2011-03-08 2016-05-10 Qualcomm Incorporated Harmonized scan order for coding transform coefficients in video coding
CN107071439B (zh) * 2011-03-10 2021-12-28 夏普株式会社 图像解码装置及方法、以及记录介质
CN103493494A (zh) * 2011-04-27 2014-01-01 夏普株式会社 图像解码装置、图像编码装置以及编码数据的数据结构
CN102215404B (zh) * 2011-05-20 2013-07-10 昌信科技有限公司 嵌入式系统中视频的解码方法和系统
US9379736B2 (en) * 2011-06-03 2016-06-28 Qualcomm Incorporated Context-adaptive coding video data
US9491469B2 (en) 2011-06-28 2016-11-08 Qualcomm Incorporated Coding of last significant transform coefficient
US9445093B2 (en) 2011-06-29 2016-09-13 Qualcomm Incorporated Multiple zone scanning order for video coding
US9826238B2 (en) * 2011-06-30 2017-11-21 Qualcomm Incorporated Signaling syntax elements for transform coefficients for sub-sets of a leaf-level coding unit
TWI526053B (zh) * 2011-07-02 2016-03-11 三星電子股份有限公司 視訊解碼方法
US20130016769A1 (en) 2011-07-17 2013-01-17 Qualcomm Incorporated Signaling picture size in video coding
US9756360B2 (en) * 2011-07-19 2017-09-05 Qualcomm Incorporated Coefficient scanning in video coding
JP5677576B2 (ja) * 2011-07-22 2015-02-25 株式会社日立製作所 動画像復号化方法及び動画像符号化方法
US9344743B2 (en) * 2011-08-24 2016-05-17 Texas Instruments Incorporated Flexible region based sample adaptive offset (SAO) and adaptive loop filter (ALF)
US9800870B2 (en) * 2011-09-16 2017-10-24 Qualcomm Incorporated Line buffer reduction for short distance intra-prediction
EP2763414B1 (en) 2011-09-29 2020-09-23 Sharp Kabushiki Kaisha Image decoding device and image decoding method for performing bi-prediction to uni-prediction conversion
WO2013047805A1 (ja) * 2011-09-29 2013-04-04 シャープ株式会社 画像復号装置、画像復号方法および画像符号化装置
KR101857109B1 (ko) * 2011-10-17 2018-05-11 주식회사 케이티 영상 부호화/복호화 방법 및 그 장치
AU2011236109B2 (en) * 2011-10-18 2015-02-19 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding the significance map for residual coefficients of a transform unit
US9584819B2 (en) 2011-10-24 2017-02-28 Qualcomm Incorporated Grouping of tiles for video coding
ES2728529T3 (es) * 2011-11-01 2019-10-25 Velos Media Int Ltd Mapas de significancia multinivel para codificación y decodificación
US8964849B2 (en) 2011-11-01 2015-02-24 Blackberry Limited Multi-level significance maps for encoding and decoding
KR20130049523A (ko) * 2011-11-04 2013-05-14 오수미 인트라 예측 블록 생성 장치
KR20130050404A (ko) 2011-11-07 2013-05-16 오수미 인터 모드에서의 복원 블록 생성 방법
CA2773990C (en) * 2011-11-19 2015-06-30 Research In Motion Limited Multi-level significance map scanning
AU2012365727B2 (en) * 2012-01-13 2015-11-05 Hfi Innovation Inc. Method and apparatus for unification of coefficient scan of 8x8 transform units in HEVC
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
EP2618570B1 (en) * 2012-01-20 2017-12-13 BlackBerry Limited Method and devices for context set selection
AU2012200345B2 (en) 2012-01-20 2014-05-01 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding the significance map residual coefficients of a transform unit
US9106918B2 (en) 2012-01-20 2015-08-11 Sony Corporation Coefficient coding harmonization in HEVC
US9749645B2 (en) * 2012-06-22 2017-08-29 Microsoft Technology Licensing, Llc Coded-block-flag coding and derivation
US20150208092A1 (en) * 2012-06-29 2015-07-23 Samsung Electronics Co., Ltd. Method and apparatus for encoding scalable video, and method and apparatus for decoding scalable video
ES2768086T3 (es) 2012-07-02 2020-06-19 Samsung Electronics Co Ltd Codificación por entropía de un vídeo y decodificación por entropía de un vídeo
US9538239B2 (en) * 2012-08-13 2017-01-03 Gurulogic Microsystems Oy Decoder and method for decoding encoded input data containing a plurality of blocks or packets
US9854235B2 (en) 2012-08-31 2017-12-26 Blackberry Limited Methods and devices for entropy coding in scalable video compression
CN103716627B (zh) * 2012-09-29 2017-02-22 华为技术有限公司 分层编解码方法及装置
KR20150105346A (ko) * 2012-11-23 2015-09-16 인텔렉추얼디스커버리 주식회사 움직임 정보 병합을 이용한 비디오 부호화/복호화 방법 및 장치
KR101502144B1 (ko) * 2013-08-22 2015-03-12 주식회사 에스원 계수 정보를 변환하는 방법 및 장치
RU2630888C1 (ru) * 2013-11-14 2017-09-13 ЭйджЭфАй Инновэйшн Инк. Способ видеокодирования с использованием предсказания на основании копии внутрикадрового блока
BR112016012009B1 (pt) 2013-11-27 2023-11-07 Hfi Innovation Inc Método de sinalização de modo de codificação incluindo um modo intrabc para uma imagem
AU2015228999B2 (en) * 2014-03-14 2018-02-01 Vid Scale, Inc. Systems and methods for RGB video coding enhancement
US9432696B2 (en) * 2014-03-17 2016-08-30 Qualcomm Incorporated Systems and methods for low complexity forward transforms using zeroed-out coefficients
US9516345B2 (en) 2014-03-17 2016-12-06 Qualcomm Incorporated Systems and methods for low complexity forward transforms using mesh-based calculations
US9769498B2 (en) * 2014-03-28 2017-09-19 University-Industry Cooperation Group Of Kyung Hee University Method and apparatus for encoding of video using depth information
CN104244006B (zh) * 2014-05-28 2019-02-26 北京大学深圳研究生院 一种基于图像超分辨率的视频编解码方法及装置
US10412387B2 (en) * 2014-08-22 2019-09-10 Qualcomm Incorporated Unified intra-block copy and inter-prediction
KR102365685B1 (ko) * 2015-01-05 2022-02-21 삼성전자주식회사 인코더의 작동 방법과 상기 인코더를 포함하는 장치들
CN105872539B (zh) * 2015-02-08 2020-01-14 同济大学 图像编码方法和装置及图像解码方法和装置
JPWO2016203981A1 (ja) * 2015-06-16 2018-04-05 シャープ株式会社 画像復号装置及び画像符号化装置
US10171810B2 (en) 2015-06-22 2019-01-01 Cisco Technology, Inc. Transform coefficient coding using level-mode and run-mode
CN104954806A (zh) * 2015-06-24 2015-09-30 上海交通大学 帧内视频优化编码方法
JP6075898B1 (ja) 2015-08-31 2017-02-08 日本電信電話株式会社 映像符号化装置、映像符号化方法及びプログラム
FR3040578A1 (fr) * 2015-08-31 2017-03-03 Orange Procede de codage et de decodage d'images, dispositif de codage et de decodage d'images et programmes d'ordinateur correspondants
US20200260079A1 (en) * 2015-11-24 2020-08-13 Samsung Electronics Co., Ltd. Method for encoding/decoding image and device therefor
US10200719B2 (en) * 2015-11-25 2019-02-05 Qualcomm Incorporated Modification of transform coefficients for non-square transform units in video coding
CN105791868B (zh) * 2016-04-07 2019-03-12 中星技术股份有限公司 视频编码的方法和设备
CN106131548B (zh) * 2016-07-28 2018-12-25 同观科技(深圳)有限公司 一种帧内预测模式的选择方法及装置
US10244261B2 (en) * 2017-01-26 2019-03-26 Google Llc Transform coefficient coding using level maps
CA3060035C (en) 2017-04-13 2024-01-02 Lg Electronics Inc. Method and device for entropy encoding and decoding video signal
US10523968B2 (en) * 2017-09-18 2019-12-31 Google Llc Coding of last significant coefficient flags
CN108124154B (zh) * 2017-12-28 2020-04-24 北京数码视讯科技股份有限公司 帧间预测模式的快速选择方法、装置及电子设备
CN111602394B (zh) * 2018-01-18 2021-07-09 联发科技股份有限公司 视频编解码系统中的视频处理方法及装置
NZ769880A (en) 2018-05-31 2022-04-29 Huawei Tech Co Ltd Spatially varying transform with adaptive transform type
US10776957B2 (en) * 2018-10-02 2020-09-15 Samsung Electronics Co., Ltd. Online image compression in hardware
CN113170131A (zh) * 2018-10-11 2021-07-23 Lg电子株式会社 变换系数编码方法及其装置
CN111277840B (zh) * 2018-12-04 2022-02-08 华为技术有限公司 变换方法、反变换方法以及视频编码器和视频解码器
CN115442608A (zh) * 2018-12-17 2022-12-06 Lg电子株式会社 图像编码/解码方法及发送数据的方法
CN111355959B (zh) * 2018-12-22 2024-04-09 华为技术有限公司 一种图像块划分方法及装置
WO2020236723A1 (en) * 2019-05-19 2020-11-26 Bytedance Inc. Transform bypass coded residual blocks in digital video
CN110933410B (zh) * 2019-11-06 2022-03-25 北京佳讯飞鸿电气股份有限公司 Hevc视频帧间预测方法和装置
AU2020203330B2 (en) * 2020-05-21 2022-12-01 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding a block of video samples

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2549329B1 (fr) 1983-07-13 1987-01-16 Thomson Csf Procede et dispositif de detection de points en mouvement dans une image de television pour systemes de television numerique de compression de debit a rafraichissement conditionnel
JP3017745B2 (ja) 1989-03-14 2000-03-13 ソニー株式会社 データ伝送方法
US5021891A (en) * 1990-02-27 1991-06-04 Qualcomm, Inc. Adaptive block size image compression method and system
JP2933457B2 (ja) * 1993-02-18 1999-08-16 日本電気株式会社 ウェーブレット変換符号化方法
US5748244A (en) 1995-03-28 1998-05-05 Daewoo Electronics Co., Ltd. Adaptive runlength coding based on zero and non-zero subblocks
US5808683A (en) * 1995-10-26 1998-09-15 Sony Corporation Subband image coding and decoding
US6341144B1 (en) * 1996-09-20 2002-01-22 At&T Corp. Video coder providing implicit coefficient prediction and scan adaptation for image coding and intra coding of video
FR2756399B1 (fr) 1996-11-28 1999-06-25 Thomson Multimedia Sa Procede et dispositif de compression video pour images de synthese
US6625217B1 (en) 1999-10-15 2003-09-23 Lucent Technologies Inc. Constrained wavelet packet for tree-structured video coders
US6356213B1 (en) * 2000-05-31 2002-03-12 Lucent Technologies Inc. System and method for prediction-based lossless encoding
US7483581B2 (en) 2001-07-02 2009-01-27 Qualcomm Incorporated Apparatus and method for encoding digital image data in a lossless manner
KR100729270B1 (ko) 2002-05-02 2007-06-15 프라운호퍼-게젤샤프트 츄어 푀르더룽 데어 안게반텐 포르슝에.파우. 이미지 및/또는 비디오 인코더 및 디코더에서의변환계수를 인코딩하는 방법 및 장치, 및 이에 대응하는컴퓨터 프로그램 및 컴퓨터로 읽을 수 있는 저장매체
US6795584B2 (en) 2002-10-03 2004-09-21 Nokia Corporation Context-based adaptive variable length coding for adaptive block transforms
JP3679083B2 (ja) * 2002-10-08 2005-08-03 株式会社エヌ・ティ・ティ・ドコモ 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、画像符号化プログラム、画像復号プログラム
JP4949037B2 (ja) * 2003-11-18 2012-06-06 スカラド、アクチボラグ ディジタル画像を処理するための方法および画像表現形式
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
US7418146B2 (en) * 2004-02-10 2008-08-26 Sanyo Electric Co., Ltd. Image decoding apparatus
US20060078049A1 (en) * 2004-10-13 2006-04-13 Nokia Corporation Method and system for entropy coding/decoding of a video bit stream for fine granularity scalability
KR100664932B1 (ko) * 2004-10-21 2007-01-04 삼성전자주식회사 비디오 코딩 방법 및 장치
US20060153294A1 (en) 2005-01-12 2006-07-13 Nokia Corporation Inter-layer coefficient coding for scalable video coding
KR100703770B1 (ko) * 2005-03-25 2007-04-06 삼성전자주식회사 가중 예측을 이용한 비디오 코딩 및 디코딩 방법, 이를위한 장치
US20090210219A1 (en) * 2005-05-30 2009-08-20 Jong-Mo Sung Apparatus and method for coding and decoding residual signal
KR100714698B1 (ko) * 2005-08-29 2007-05-07 삼성전자주식회사 향상된 움직임 추정 방법, 상기 방법을 이용한 비디오인코딩 방법 및 장치
EP1928184B1 (en) 2005-09-20 2017-09-27 Mitsubishi Electric Corporation Image encoding apparatus, image encoding method
FR2896117A1 (fr) * 2006-01-06 2007-07-13 France Telecom Procedes de codage et de decodage d'une sequence d'images, dispositifs , programmes d'ordinateur, et signal correspondants
EP2942935A1 (en) 2006-07-13 2015-11-11 NEC Corporation Wavelet-based image encoding and decoding device and encoding method and decoding method
JP2008141382A (ja) 2006-11-30 2008-06-19 Sony Corp 符号化装置および方法、並びにプログラム
KR101356733B1 (ko) * 2007-03-07 2014-02-05 삼성전자주식회사 컨텍스트 기반 적응적 이진 산술 부호화, 복호화 방법 및장치
KR101403338B1 (ko) * 2007-03-23 2014-06-09 삼성전자주식회사 영상의 부호화, 복호화 방법 및 장치
TWI341657B (en) 2007-04-03 2011-05-01 Nat Univ Tsing Hua Cabac decoding method
US8619853B2 (en) * 2007-06-15 2013-12-31 Qualcomm Incorporated Separable directional transforms
US8483282B2 (en) 2007-10-12 2013-07-09 Qualcomm, Incorporated Entropy coding of interleaved sub-blocks of a video block
KR20090095317A (ko) 2008-03-05 2009-09-09 삼성전자주식회사 영상 부호화 및 복호화 방법 및 장치
KR20090097013A (ko) 2008-03-10 2009-09-15 삼성전자주식회사 영상 부호화장치 및 영상 복호화장치
KR101375668B1 (ko) 2008-03-17 2014-03-18 삼성전자주식회사 변환 계수의 부호화, 복호화 방법 및 장치
KR101608426B1 (ko) * 2008-03-28 2016-04-04 삼성전자주식회사 영상의 인트라 예측 부호화/복호화 방법 및 그 장치
US8634456B2 (en) * 2008-10-03 2014-01-21 Qualcomm Incorporated Video coding with large macroblocks
US8619856B2 (en) 2008-10-03 2013-12-31 Qualcomm Incorporated Video coding with large macroblocks
KR101483750B1 (ko) * 2009-07-24 2015-01-19 삼성전자주식회사 영상의 부호화 방법 및 장치, 영상 복호화 방법 및 장치
KR101456498B1 (ko) * 2009-08-14 2014-10-31 삼성전자주식회사 계층적 부호화 단위의 스캔 순서를 고려한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
JP2011049816A (ja) 2009-08-27 2011-03-10 Kddi R & D Laboratories Inc 動画像符号化装置、動画像復号装置、動画像符号化方法、動画像復号方法、およびプログラム
KR101457894B1 (ko) 2009-10-28 2014-11-05 삼성전자주식회사 영상 부호화 방법 및 장치, 복호화 방법 및 장치

Also Published As

Publication number Publication date
SI2899981T1 (sl) 2018-10-30
BR122020010714B1 (pt) 2021-09-08
JP5941176B2 (ja) 2016-06-29
RU2564631C2 (ru) 2015-10-10
PL2903279T3 (pl) 2018-11-30
CA2883923A1 (en) 2011-05-05
SI2899980T1 (sl) 2018-11-30
HRP20181466T1 (hr) 2018-11-02
LT2899981T (lt) 2018-10-10
CN104780372A (zh) 2015-07-15
US10136149B2 (en) 2018-11-20
CY1120948T1 (el) 2019-12-11
US20150156503A1 (en) 2015-06-04
ES2687471T3 (es) 2018-10-25
SI2899979T1 (sl) 2018-10-30
KR20110046016A (ko) 2011-05-04
AU2010313967B2 (en) 2014-09-04
US20150156504A1 (en) 2015-06-04
SI2471266T1 (sl) 2018-10-30
CN102598664B (zh) 2015-07-22
CA2883923C (en) 2018-05-22
CN104780371B (zh) 2018-12-21
CN102598664A (zh) 2012-07-18
BR112012009722B1 (pt) 2021-09-08
BR122021005447B1 (pt) 2021-09-08
CN104780370B (zh) 2017-04-12
SI2903279T1 (sl) 2018-10-30
HRP20181593T1 (hr) 2018-12-14
HRP20181465T1 (hr) 2018-11-02
EP2903279A1 (en) 2015-08-05
CA2883913A1 (en) 2011-05-05
RS57817B1 (sr) 2018-12-31
KR101457894B1 (ko) 2014-11-05
RU2607250C2 (ru) 2017-01-10
HRP20181494T1 (hr) 2018-11-16
PT2899980T (pt) 2018-10-30
HUE041753T2 (hu) 2019-05-28
EP3410713B1 (en) 2019-10-02
CA2883920A1 (en) 2011-05-05
US10178401B2 (en) 2019-01-08
WO2011053020A3 (en) 2011-08-04
RU2015108351A (ru) 2016-09-27
US20150156502A1 (en) 2015-06-04
RU2015108352A (ru) 2016-09-27
EP2899980A1 (en) 2015-07-29
CY1121009T1 (el) 2019-12-11
ES2687479T3 (es) 2018-10-25
ES2688346T3 (es) 2018-11-02
CA2883920C (en) 2019-03-19
DK3410713T3 (da) 2019-10-14
CN104796708B (zh) 2018-03-23
PL2899981T3 (pl) 2019-01-31
CN104796707A (zh) 2015-07-22
HRP20181495T1 (hr) 2018-11-30
EP2899980B1 (en) 2018-10-03
RS57808B1 (sr) 2018-12-31
ZA201504997B (en) 2016-11-30
DK2899980T3 (en) 2018-10-22
HUE041704T2 (hu) 2019-05-28
BR122021005448B1 (pt) 2021-09-14
US20150156505A1 (en) 2015-06-04
ZA201203084B (en) 2015-12-23
CA2777587C (en) 2016-10-11
ES2751123T3 (es) 2020-03-30
BR122020010727B1 (pt) 2021-09-14
RU2607249C2 (ru) 2017-01-10
CA2883978C (en) 2018-01-09
MX2012004803A (es) 2012-06-19
LT2903279T (lt) 2018-10-10
CN104780372B (zh) 2018-07-20
EP2471266A2 (en) 2012-07-04
US20110096834A1 (en) 2011-04-28
MY172652A (en) 2019-12-09
RU2015108338A (ru) 2016-09-27
ES2690406T3 (es) 2018-11-20
PT2471266T (pt) 2018-10-19
EP3410713A1 (en) 2018-12-05
BR112012009722A2 (pt) 2016-05-17
RS57678B1 (sr) 2018-11-30
RU2493669C1 (ru) 2013-09-20
JP5711247B2 (ja) 2015-04-30
RU2013128302A (ru) 2014-12-27
PL2899979T3 (pl) 2019-01-31
CY1121010T1 (el) 2019-12-11
PL2471266T3 (pl) 2018-11-30
DK2899979T3 (en) 2018-10-08
EP2899981B1 (en) 2018-09-19
PT2903279T (pt) 2018-10-22
JP5941177B2 (ja) 2016-06-29
MY178071A (en) 2020-09-30
PL2899980T3 (pl) 2018-12-31
RS57673B1 (sr) 2018-11-30
CY1121008T1 (el) 2019-12-11
HUE041470T2 (hu) 2019-05-28
EP2899979A1 (en) 2015-07-29
DK2903279T3 (en) 2018-10-08
HUE041472T2 (hu) 2019-05-28
HUE041701T2 (hu) 2019-05-28
CN104780370A (zh) 2015-07-15
CN104780371A (zh) 2015-07-15
CN104796707B (zh) 2018-06-15
LT2471266T (lt) 2018-10-10
DK2899981T3 (en) 2018-10-08
EP2471266B1 (en) 2018-09-12
JP5934397B2 (ja) 2016-06-15
PT2899981T (pt) 2018-10-23
PT2899979T (pt) 2018-10-23
CA2883913C (en) 2018-01-02
JP2013509782A (ja) 2013-03-14
AU2010313967A1 (en) 2012-05-17
ZA201505000B (en) 2018-05-30
MY177998A (en) 2020-09-29
CY1121006T1 (el) 2019-12-11
PL3410713T3 (pl) 2020-01-31
LT2899980T (lt) 2018-10-25
WO2011053020A2 (en) 2011-05-05
RU2607247C2 (ru) 2017-01-10
MY166069A (en) 2018-05-23
US8811479B2 (en) 2014-08-19
CA2777587A1 (en) 2011-05-05
US10154273B2 (en) 2018-12-11
ZA201504999B (en) 2016-04-28
US20140314149A1 (en) 2014-10-23
JP2015144467A (ja) 2015-08-06
EP2899981A1 (en) 2015-07-29
CN104796708A (zh) 2015-07-22
ZA201504998B (en) 2016-11-30
EP2903279B1 (en) 2018-09-12
MY180142A (en) 2020-11-23
JP5941178B2 (ja) 2016-06-29
LT2899979T (lt) 2018-10-10
RS57712B1 (sr) 2018-12-31
JP2015144466A (ja) 2015-08-06
EP2899979B1 (en) 2018-09-19
US10257530B2 (en) 2019-04-09
DK2471266T3 (en) 2018-10-08
US10171826B2 (en) 2019-01-01
JP2015109685A (ja) 2015-06-11
CA2883978A1 (en) 2011-05-05
JP2015144465A (ja) 2015-08-06
EP2471266A4 (en) 2015-07-01

Similar Documents

Publication Publication Date Title
ES2688347T3 (es) Procedimiento y aparato de codificación de bloque residual, y procedimiento y aparato de decodificación de bloque residual
US9525891B2 (en) Method and apparatus for entropy coding video and method and apparatus for entropy decoding video
JP5917746B2 (ja) 階層的構造のデータ単位を利用したエントロピー符号化方法及び該装置、並びに復号化方法及び該装置
KR101969933B1 (ko) 레지듀얼 블록의 부호화 방법 및 장치, 복호화 방법 및 장치
KR101719737B1 (ko) 레지듀얼 블록의 부호화 방법 및 장치, 복호화 방법 및 장치
KR101863689B1 (ko) 레지듀얼 블록의 부호화 방법 및 장치, 복호화 방법 및 장치
KR101604038B1 (ko) 레지듀얼 블록의 부호화 방법 및 장치, 복호화 방법 및 장치
KR101625629B1 (ko) 영상 복호화 방법 및 장치
KR101625631B1 (ko) 레지듀얼 블록의 부호화 방법 및 장치, 복호화 방법 및 장치
KR101604035B1 (ko) 영상 복호화 방법 및 장치
KR101604033B1 (ko) 영상 복호화 방법 및 장치