ES2879573T3 - Procedimiento de codificación/decodificación por entropía CABAC de baja complejidad - Google Patents

Procedimiento de codificación/decodificación por entropía CABAC de baja complejidad Download PDF

Info

Publication number
ES2879573T3
ES2879573T3 ES11766128T ES11766128T ES2879573T3 ES 2879573 T3 ES2879573 T3 ES 2879573T3 ES 11766128 T ES11766128 T ES 11766128T ES 11766128 T ES11766128 T ES 11766128T ES 2879573 T3 ES2879573 T3 ES 2879573T3
Authority
ES
Spain
Prior art keywords
unit
context
entropy
encoding
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES11766128T
Other languages
English (en)
Inventor
Woong-Il Choi
Woo-Jin Han
Tammy Lee
Sun-Il Lee
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
Priority claimed from PCT/KR2011/002377 external-priority patent/WO2011126277A2/en
Application granted granted Critical
Publication of ES2879573T3 publication Critical patent/ES2879573T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • 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/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)

Abstract

Un procedimiento de codificación por entropía de datos de imagen basado en codificación aritmética binaria adaptativa basada en contexto, CABAC, comprendiendo el procedimiento: establecer la información del modelo de contexto actual para codificar por entropía un elemento de sintaxis de un primer bloque de datos de imagen y un elemento de sintaxis de un segundo bloque de datos de imagen basado en la información del modelo de contexto anterior que se utiliza para codificar por entropía el elemento de sintaxis de un bloque previamente codificado que es adyacente al primer bloque; y codificar por entropía el elemento de sintaxis del primer bloque y el elemento de sintaxis del segundo bloque en función de la información del modelo de contexto actual, caracterizado porque la información del modelo de contexto anterior indica un símbolo más probable, correspondiente a un índice de contexto, y una probabilidad de ocurrencia del símbolo más probable aplicado a la codificación aritmética binaria adaptativa basada en el contexto, CABAC, del bloque codificado previamente, y la información del modelo de contexto actual se obtiene actualizando la información que indica el símbolo más probable y la probabilidad de ocurrencia del símbolo más probable en la información del modelo de contexto anterior basada en un resultado de la codificación aritmética binaria adaptativa basada en el contexto de la codificación del bloque previamente codificado.

Description

DESCRIPCIÓN
Procedimiento de codificación/decodificación por entropía CABAC de baja complejidad
Campo técnico
Las realizaciones ejemplares se refieren a un procedimiento y aparato de codificación y decodificación por entropía y, más particularmente, a un procedimiento y aparato para codificar y decodificar por entropía un elemento de sintaxis predeterminado generado codificando una imagen.
Técnica anterior
Un códec, como Moving Pictures Experts Group (MPEG) -4 H.264/MPEG-4 Advanced Video Coding (AVC), codifica/decodifica por entropía un elemento de sintaxis mediante el uso de codificación de longitud variable adaptativa (CAVLC) basada en el contexto codificación aritmética binaria adaptativa basada en (CABAC). La técnica de codificación por entropía CABAC utilizada en H.264/AVC se analiza en detalle en el siguiente documento: D. MARPE ET AL: "Context-based adaptive binary arithmetic coding in the H.264/AVC video compression standard", IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, Vol. 13, n.° 7, Julio 2003, páginas 620-636, ISSN: 1051-8215, DOI: 10.1109/TCSVT.2003.815173. Sin embargo, en el procedimiento de codificación/decodificación por entropía adaptativa basado en el contexto descrito anteriormente, el acceso a la memoria debe realizarse con frecuencia.
Divulgación de la invención
Solución al problema
Las realizaciones ejemplares incluyen un procedimiento y un aparato para realizar eficazmente la codificación/decodificación por entropía, y un medio de grabación legible por ordenador que tiene grabado en el mismo un programa de ordenador para ejecutar el procedimiento.
Efectos ventajosos de la invención
Como se describió anteriormente, los datos de imagen se pueden codificar o descodificar por entropía a alta velocidad utilizando hardware de menor complejidad, mientras que la tasa de compresión de una imagen durante la codificación no se reduce en gran medida.
Breve descripción de los dibujos
Los aspectos anteriores y otros se harán más evidentes al describir en detalle ejemplos de realizaciones de los mismos con referencia a los dibujos adjuntos en los que:
La Figura 1 es un diagrama de bloques de un aparato que codifica una imagen;
La Figura 2 es un diagrama de bloques de un aparato que decodifica una imagen;
La Figura 3 ilustra unidades de codificación jerárquicas;
La Figura 4 es un diagrama de bloques de un codificador de imágenes basado en una unidad de codificación; La Figura 5 es un diagrama de bloques de un decodificador de imágenes basado en una unidad de codificación; La Figura 6 ilustra una unidad de codificación máxima, una subunidad de codificación y una unidad de predicción;
La Figura 7 ilustra una unidad de codificación y una unidad de transformación;
La Figuras 8A a 8D ilustran formas de división de una unidad de codificación, una unidad de predicción y una unidad de transformación;
La Figura 9 es un diagrama de bloques de un aparato de codificación por entropía;
La Figura 10 ilustra un procedimiento para compartir un modelo de contexto, según una realización ejemplar; La Figura 11 ilustra un procedimiento para compartir un modelo de contexto, según una realización ejemplar; La Figura 12 es un diagrama de bloques de un aparato de decodificación por entropía;
La Figura 13 es un diagrama de flujo que ilustra un procedimiento de codificación por entropía, según una realización ejemplar; y
La Figura 14 es un diagrama de flujo que ilustra un procedimiento de decodificación por entropía, según una realización ejemplar.
Mejor modo de realizar la invención
Según un aspecto de una realización ejemplar, se proporciona un procedimiento de codificación por entropía de datos de imagen como se define en la reivindicación 1 adjunta.
Según otro aspecto de una realización ejemplar, se proporciona un procedimiento de decodificación por entropía de datos de imagen como se define en la reivindicación 2 adjunta.
Las figuras 1-9 y 12 y los pasajes correspondientes de la descripción se incluyen con fines ilustrativos y no representan realizaciones de la invención.
Modo de la invención
A continuación, se describirán más detalladamente una o más realizaciones ejemplares con referencia a los dibujos adjuntos. Expresiones como "al menos uno de", cuando preceden a una lista de elementos, modifican la lista completa de elementos y no modifican los elementos individuales de la lista. En la presente memoria descriptiva, una "imagen" puede indicar una imagen fija para un video o una imagen en movimiento, es decir, el video en sí. La figura 1 es un diagrama de bloques de un aparato 100 que codifica una imagen, según una realización ejemplar. Refiriéndose a la figura 1, el aparato 100 que codifica una imagen incluye un divisor 110 de unidad de codificación máxima, un determinante 120 de profundidad de codificación, un codificador 130 de datos de imagen y un codificador 140 de información de codificación.
El divisor 110 de unidad de codificación máxima puede dividir una trama o segmento actual basándose en una unidad de codificación máxima, que es una unidad de codificación que tiene un tamaño más grande entre las unidades de codificación de la trama o segmento actual. Es decir, el divisor 110 de unidad de codificación máxima puede dividir la trama o segmento actual en al menos una unidad de codificación máxima.
Según un ejemplo de realización, se puede representar una unidad de codificación utilizando una unidad de codificación máxima y una profundidad. Como se describió anteriormente, la unidad de codificación máxima indica una unidad de codificación que tiene el tamaño más grande de entre las unidades de codificación de la trama actual, y la profundidad indica un grado de disminución jerárquica de la unidad de codificación. A medida que aumenta la profundidad, una unidad de codificación puede disminuir desde una unidad de codificación máxima a una unidad de codificación mínima, en el que una profundidad de la unidad de codificación máxima es una profundidad mínima y una profundidad de la unidad de codificación mínima es una profundidad máxima. Dado que el tamaño de una unidad de codificación disminuye, desde el tamaño de una unidad de codificación máxima, a medida que aumenta la profundidad de la unidad de codificación, una subunidad de codificación de una k-ésima profundidad puede incluir una pluralidad de subunidades de codificación de una (k+n) ésima profundidad (ky n son números enteros iguales o mayores que 1).
Según un aumento del tamaño de una trama a codificar, la codificación de una imagen en una unidad de codificación más grande puede producir una relación de compresión de imagen más alta. Sin embargo, si se usa una unidad de codificación grande para codificar exclusivamente una imagen, es posible que la imagen no se codifique de manera eficiente debido a las características de la imagen que cambian continuamente.
Por ejemplo, cuando se codifica un área suave como el mar o el cielo, cuanto mayor sea el tamaño de una unidad de codificación, más puede aumentar la relación de compresión de la imagen. Sin embargo, cuando se codifica un área compleja, como personas o edificios, cuanto menor sea el tamaño de una unidad de codificación, más puede aumentar la relación de compresión de la imagen.
Por consiguiente, de acuerdo con una realización ejemplar, se establecen una unidad de codificación de imagen máxima y una profundidad máxima para cada trama o segmento. Por consiguiente, la unidad de codificación máxima y la profundidad máxima para una primera trama o segmento pueden ser diferentes de la unidad de codificación máxima y la profundidad máxima para una segunda trama o segmento. Dado que una profundidad máxima indica el número máximo de veces que puede disminuir una unidad de codificación, el tamaño de cada unidad de codificación mínima incluida en una unidad de codificación de imagen máxima puede establecerse de forma variable según una profundidad máxima. La profundidad máxima puede determinarse individualmente para cada trama o segmento o para cada unidad de codificación máxima.
El determinante 120 de profundidad de codificación determina una forma de división de la unidad de codificación máxima. La forma de la división se puede determinar basándose en el cálculo de los costes de distorsión de la tasa (RD). La forma de división determinada de la unidad de codificación máxima se proporciona al codificador 140 de información de codificación, y los datos de imagen según las unidades de codificación máxima se proporcionan al codificador 130 de datos de imagen.
Una unidad de codificación máxima puede dividirse en subunidades de codificación, teniendo las subunidades de codificación diferentes tamaños de acuerdo con diferentes profundidades, y las subunidades de codificación que tienen los diferentes tamaños, que están incluidas en la unidad de codificación máxima, pueden predecirse o transformarse en frecuencia basado en unidades de procesamiento que tienen diferentes tamaños. En otras palabras, el aparato 100 puede realizar una pluralidad de operaciones de procesamiento para la codificación de imágenes basadas en unidades de procesamiento que tienen varios tamaños y formas. Para codificar datos de imagen, se realizan operaciones de procesamiento, tales como al menos una de predicción, transformación y codificación por entropía, en las que se pueden usar unidades de procesamiento que tienen el mismo tamaño o tamaños diferentes para cada operación.
Por ejemplo, el aparato 100 para codificar una imagen puede seleccionar una unidad de procesamiento que sea diferente de una unidad de codificación para predecir la unidad de codificación.
Cuando el tamaño de una unidad de codificación es 2Nx2N (donde N es un número entero positivo), las unidades de procesamiento para la predicción pueden ser 2Nx2N, 2NxN, Nx2N y NxN. En otras palabras, la predicción de movimiento se puede realizar basándose en una unidad de procesamiento que tiene una forma en la que al menos uno de la altura y el ancho de una unidad de codificación se divide igualmente por dos. En adelante, una unidad de procesamiento, que es la base de la predicción, se denomina unidad de predicción.
Un modo de predicción puede ser al menos uno de entre un modo intra, un modo inter y un modo de salto, y se puede realizar un modo de predicción específico solo para una unidad de predicción que tiene un tamaño o forma específicos. Por ejemplo, el modo intra puede realizarse solo para unidades de predicción que tienen los tamaños de 2Nx2N y NxN, cuya forma es un cuadrado. Además, el modo de salto se puede realizar solo para una unidad de predicción que tenga el tamaño de 2Nx2N. Si existe una pluralidad de unidades de predicción en una unidad de codificación, el modo de predicción con el menor número de errores de codificación puede seleccionarse después de realizar la predicción para cada unidad de predicción.
Alternativamente, el aparato 100 para codificar una imagen puede realizar una transformación en datos de imagen basándose en una unidad de procesamiento que tiene un tamaño diferente al tamaño de una unidad de codificación. Para la transformación en la unidad de codificación, la transformación se puede realizar basándose en una unidad de procesamiento que tiene un tamaño igual o menor que el de la unidad de codificación. En lo sucesivo, una unidad de procesamiento, que es la base de la transformación, se denomina unidad de transformación. La transformada puede ser transformada de coseno discreta (DCT) o transformada de Karhunen Loeve (KLT) o cualquier otra transformada espacial de punto fijo.
El determinante 120 de profundidad de codificación puede determinar subunidades de codificación incluidas en una unidad de codificación máxima usando optimización RD basada en un multiplicador de Lagrange. En otras palabras, el determinante 120 de profundidad de codificación puede determinar formas de una pluralidad de subunidades de codificación divididas de la unidad de codificación máxima, en el que la pluralidad de subunidades de codificación tiene tamaños de acuerdo con sus profundidades. El codificador 130 de datos de imagen genera una corriente de bits codificando la unidad de codificación máxima en base a las formas de división determinadas por el determinante 120 de profundidad de codificación.
El codificador 140 de información de codificación codifica información sobre un modo de codificación de la unidad de codificación máxima determinada por el determinante 120 de profundidad de codificación. En otras palabras, el codificador 140 de información de codificación genera una corriente de bits codificando información sobre una forma de división de la unidad de codificación máxima, información sobre la profundidad máxima e información sobre un modo de codificación de una unidad de subcodificación para cada profundidad. La información sobre el modo de codificación de la subunidad de codificación puede incluir información sobre una unidad de predicción de la subunidad de codificación, información sobre un modo de predicción para cada unidad de predicción e información sobre una unidad de transformación de la subunidad de codificación.
La información sobre la forma de división de la unidad de codificación máxima puede ser información, por ejemplo, información de bandera, que indica si cada unidad de codificación está dividida. Por ejemplo, cuando la unidad de codificación máxima se divide y codifica, se codifica la información que indica si se divide la unidad de codificación máxima. Además, cuando se divide y codifica una subunidad de codificación dividida de la unidad de codificación máxima, se codifica la información que indica si la subunidad de codificación está dividida.
Dado que existen subunidades de codificación que tienen diferentes tamaños para cada unidad de codificación máxima, y debe determinarse información sobre un modo de codificación para cada subunidad de codificación, la información que indica al menos un modo de codificación se puede determinar para una unidad de codificación máxima.
El aparato 100 puede generar subunidades de codificación dividiendo por igual la altura y el ancho de una unidad de codificación máxima por dos, es decir, dividiendo en cuartos la unidad de codificación máxima, según un aumento de profundidad. Es decir, cuando el tamaño de una unidad de codificación de una k-ésima profundidad es 2Nx2N, el tamaño de una unidad de codificación de una (k+1)-ésima profundidad es NxN.
Por consiguiente, el aparato 100 para codificar una imagen puede determinar una forma de división óptima para cada unidad de codificación máxima en base a los tamaños de las unidades de codificación máximas y una profundidad máxima, en consideración de las características de la imagen. Ajustando dinámicamente el tamaño de una unidad de codificación máxima, teniendo en cuenta las características de la imagen, y codificando una imagen mediante la división de una unidad de codificación máxima en subunidades de codificación de diferentes profundidades, las imágenes que tienen varias resoluciones pueden codificarse más eficazmente.
La figura 2 es un diagrama de bloques de un aparato 200 que decodifica una imagen, según una realización ejemplar.
Refiriéndose a la figura 2, el aparato 200 que decodifica una imagen incluye una unidad 210 de adquisición de datos de imagen, un extractor 220 de información de codificación y un decodificador 230 de datos de imagen.
La unidad 210 de adquisición de datos de imagen adquiere una corriente de bits recibido por el aparato 200, analiza la corriente de bits recibido para adquirir datos de imagen según las unidades de codificación máximas y envía los datos de imagen al descodificador 230 de datos de imagen. La unidad 210 de adquisición de datos de imagen puede extraer información sobre una unidad de codificación máxima de una trama o segmento actual de un encabezado de la trama o segmento actual. En otras palabras, la unidad 210 de adquisición de datos de imagen divide la corriente de bits en la unidad de codificación máxima de modo que el decodificador 230 de datos de imagen pueda decodificar los datos de imagen según las unidades de codificación máximas.
El extractor 220 de información de codificación extrae información que indica una unidad de codificación máxima, información que indica una profundidad máxima, información que indica una forma de división de la unidad de codificación máxima e información que indica un modo de codificación de unidades de codificación secundaria del encabezado de la actual trama analizando la corriente de bits recibida. La información que indica una forma de división y la información que indica un modo de codificación se proporcionan al decodificador 230 de datos de imagen.
La información que indica una forma de división de la unidad de codificación máxima puede incluir información que indica que las unidades de subcodificación que tienen diferentes tamaños según las profundidades están incluidas en la unidad de codificación máxima, y puede ser información (por ejemplo, información de bandera) que indica si cada unidad de codificación está dividido.
La información que indica un modo de codificación puede incluir información sobre una unidad de predicción según subunidades de codificación, información sobre un modo de predicción e información sobre una unidad de transformación.
El decodificador 230 de datos de imagen restaura la trama actual decodificando los datos de imagen de cada unidad de codificación máxima en base a la información extraída por el extractor 220 de información de codificación.
El descodificador 230 de datos de imagen puede descodificar subunidades de codificación incluidas en una unidad de codificación máxima basándose en la información sobre una forma de división de la unidad de codificación máxima. Un proceso de decodificación puede incluir un proceso de predicción que incluye predicción interna, compensación de movimiento y un proceso de transformación inversa.
El decodificador 230 de datos de imagen puede realizar predicciones internas o predicciones internas basadas en información sobre una unidad de predicción e información sobre un modo de predicción para predecir una unidad de predicción. El descodificador 230 de datos de imagen también puede realizar una transformación inversa para cada subunidad de codificación basándose en información sobre una unidad de transformación de una subunidad de codificación.
La figura 3 ilustra unidades de codificación jerárquica según una realización ejemplar.
Refiriéndose a la figura 3, las unidades de codificación jerárquica pueden incluir unidades de codificación cuyo ancho x alto son 64x64, 32x32, 16x16, 8x8 y 4x4. Además de estas unidades de codificación que tienen formas cuadradas perfectas, también pueden existir unidades de codificación cuyo ancho x alto sea 64x32, 32x64, 32x16, 16x32, 16x8, 8x16, 8x4 y 4x8.
Refiriéndose a la figura 3, para los datos 310 de imagen cuya resolución es 1920x1080, el tamaño de una unidad de codificación máxima se establece en 64x64 y la profundidad máxima se establece en 2.
Para los datos 320 de imagen cuya resolución es 1920*1080, el tamaño de una unidad de codificación máxima se establece en 64x64 y la profundidad máxima se establece en 3. Para los datos 330 de imagen cuya resolución es 352x288, el tamaño de una unidad de codificación máxima se establece en 16*16 y la profundidad máxima se establece en 2.
Cuando la resolución es alta o la cantidad de datos es grande, el tamaño máximo de una unidad de codificación puede ser relativamente grande para aumentar la relación de compresión y reflejar exactamente las características de la imagen. Por consiguiente, para los datos 310 y 320 de imagen que tienen una resolución más alta que los datos 330 de imagen, se puede seleccionar 64x64 como el tamaño de una unidad de codificación máxima.
Una profundidad máxima indica el número total de capas en las unidades de codificación jerárquica. Dado que la profundidad máxima de los datos 310 de imagen es 2, una unidad de codificación 315 de los datos 310 de imagen puede incluir una unidad de codificación máxima cuyo tamaño de eje más largo es 64 y subunidades de codificación cuyos tamaños de eje más largos son 32 y 16, según un aumento de una profundidad.
Por otro lado, dado que la profundidad máxima de los datos 330 de imagen es 1, una unidad 335 de codificación de los datos 330 de imagen puede incluir una unidad de codificación máxima cuyo tamaño de eje más largo es 16 y unidades de codificación cuyos tamaños de eje más largos son 8 y 4, según un aumento de profundidad.
Sin embargo, dado que la profundidad máxima de los datos 320 de imagen es 3, una unidad 325 de codificación de los datos 320 de imagen puede incluir una unidad de codificación máxima cuyo tamaño de eje más largo es 64 y subunidades de codificación cuyos tamaños de eje más largos son 32, 16, 8 y 4 según un aumento de profundidad. Dado que una imagen se codifica en base a una subunidad de codificación más pequeña a medida que aumenta la profundidad, una realización ejemplar es adecuada para codificar una imagen que incluye escenas más minuciosas. La figura 4 es un diagrama de bloques de un codificador 400 de imágenes basado en una unidad de codificación, según una realización ejemplar.
Una unidad 410 de predicción interna realiza una predicción interna en unidades de predicción del modo intra en una trama 405 actual. Un estimador 420 de movimiento y un compensador 425 de movimiento realizan la interpredicción y la compensación de movimiento en unidades de predicción del intermodo usando la trama 405 actual y una trama 495 de referencia.
Los valores residuales se generan basándose en las unidades de predicción emitidas por la unidad 410 de predicción interna, el estimador 420 de movimiento y el compensador 425 de movimiento, y los valores residuales generados se emiten como coeficientes de transformación cuantificados pasando a través de un transformador 430 y un cuantificador 440.
Los coeficientes de transformación cuantificados se restauran a valores residuales pasando por un cuantificador 460 inverso y un transformador 470 inverso, y los valores residuales restaurados se procesan posteriormente pasando a través de una unidad 480 de desbloqueo y una unidad 490 de filtrado de bucle y se emiten como trama 495 de referencia. Los coeficientes de transformación cuantificados pueden emitirse como una corriente 455 de bits pasando a través de un codificador 450 de entropía.
Para realizar la codificación basada en un procedimiento de codificación de acuerdo con una realización ejemplar, los componentes del codificador 400 de imagen, es decir, la unidad 410 de predicción interna, 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 bucle, realizan procesos de codificación de imágenes basados en una unidad de codificación máxima, una unidad de subcodificación según profundidades, una unidad de predicción y una unidad de transformación.
La figura 5 es un diagrama de bloques de un descodificador 500 de imágenes basado en una unidad de codificación, según una realización ejemplar.
Refiriéndose a la figura 5, una corriente 505 de bits pasa a través de un analizador 510, que analiza la corriente de bits para extraer los datos de imagen codificados que se van a decodificar y la información de codificación necesaria para la decodificación. Los datos de imagen codificados se emiten como datos cuantificados inversos pasando a través de un decodificador 520 de entropía y un cuantificador 530 inverso, y se restauran a valores residuales pasando a través de un transformador 540 inverso. Los valores residuales se restauran de acuerdo con las unidades de codificación al añadirlos a un resultado de predicción interna de una unidad 550 de predicción interna o un resultado de compensación de movimiento de un compensador 560 de movimiento. Las unidades de codificación restauradas se utilizan para la predicción de las siguientes unidades de codificación o una siguiente trama 585, 595 pasando a través de una unidad 570 de desbloqueo y una unidad 580 de filtrado de bucle.
Para realizar la decodificación basada en un procedimiento de decodificación según una realización ejemplar, los componentes del decodificador 500 de imágenes, es decir, el analizador 510 sintáctico, el decodificador 520 de entropía, el cuantificador 530 inverso, el transformador 540 inverso, la unidad 550 de predicción interna, el compensador 560 de movimiento, la unidad 570 de desbloqueo y la unidad 580 de filtrado de bucle, realizan procesos de decodificación de imágenes basados en una unidad de codificación máxima, una subunidad de codificación según las profundidades, una unidad de predicción y una unidad de transformación.
En particular, la unidad 550 de predicción interna y el compensador 560 de movimiento determinan una unidad de predicción y un modo de predicción en una subunidad de codificación considerando una unidad de codificación máxima y una profundidad, y el transformador 540 inverso realiza una transformación inversa considerando el tamaño de un unidad de transformación.
La figura 6 ilustra una unidad de codificación máxima, una subunidad de codificación y una unidad de predicción, según una realización ejemplar.
El aparato 100 para codificar una imagen ilustrada en la figura 1 y el aparato 200 para decodificar una imagen ilustrada en la figura 2 utilizan unidades de codificación jerárquica para realizar la codificación y decodificación teniendo en cuenta las características de la imagen. Una unidad de codificación máxima y una profundidad máxima pueden establecerse de forma adaptativa según las características de la imagen o ajustarse según la entrada de un usuario.
En la figura 6, una estructura 600 de unidad de codificación jerárquica tiene una unidad 610 de codificación máxima cuya altura y anchura son 64 y la profundidad máxima es 4. Una profundidad aumenta a lo largo de un eje vertical de la estructura 600 de unidad de codificación jerárquica y, a medida que aumenta la profundidad, las alturas y anchuras de las subunidades 620 a 650 de codificación disminuyen. Las unidades de predicción de la unidad 610 de codificación máxima y las subunidades 620 a 650 de codificación se muestran a lo largo de un eje horizontal de la estructura 600 de unidad de codificación jerárquica.
La unidad 610 de codificación máxima tiene una profundidad de 0 y el tamaño de una unidad de codificación, es decir, altura y ancho, de 64x64. Una profundidad aumenta a lo largo del eje vertical, y existe una subunidad 620 de codificación cuyo tamaño es 32x32 y la profundidad es 1, una subunidad 630 de codificación cuyo tamaño es 16*16 y la profundidad es 2, una subunidad 640 de codificación cuyo tamaño es 8x8 y la profundidad es 3, y una subunidad 650 de codificación cuyo tamaño es 4x4 y la profundidad es 4. La subunidad 650 de codificación cuyo tamaño es 4x4 y la profundidad es 4 es una unidad de codificación mínima, y la unidad de codificación mínima puede dividirse en unidades de predicción, cada una de las cuales es menor que la unidad de codificación mínima.
Refiriéndose a la figura 6, se muestran ejemplos de una unidad de predicción a lo largo del eje horizontal de acuerdo con cada profundidad. Es decir, una unidad de predicción de la unidad 610 de codificación máxima cuya profundidad es 0 puede ser una unidad de predicción cuyo tamaño es igual a la unidad 610 de codificación, es decir, 64x64, o una unidad 612 de predicción cuyo tamaño es 64x32, una unidad 614 de predicción cuya el tamaño es 32x64, o una unidad 616 de predicción cuyo tamaño es 32x32, que tiene un tamaño menor que la unidad 610 de codificación cuyo tamaño es 64x64.
Una unidad de predicción de la unidad 620 de codificación cuya profundidad es 1 y el tamaño es 32x32 puede ser una unidad de predicción cuyo tamaño es igual a la unidad 620 de codificación, es decir, 32x32, o una unidad 622 de predicción cuyo tamaño es 32x16, una unidad 624 de predicción cuyo tamaño es 16*32, o una unidad 626 de predicción cuyo tamaño es 16*16, que tiene un tamaño menor que la unidad 620 de codificación cuyo tamaño es 32x32.
Una unidad de predicción de la unidad 630 de codificación cuya profundidad es 2 y el tamaño es 16x16 puede ser una unidad de predicción cuyo tamaño es igual a la unidad 630 de codificación, es decir, 16x16, o una unidad 632 de predicción cuyo tamaño es 16x8, una unidad 634 de predicción cuya el tamaño es 8*16, o una unidad 636 de predicción cuyo tamaño es 8x8, que tiene un tamaño menor que la unidad 630 de codificación cuyo tamaño es 16*16.
Una unidad de predicción de la unidad 640 de codificación cuya profundidad es 3 y el tamaño es 8x8 puede ser una unidad de predicción cuyo tamaño es igual a la unidad 640 de codificación, es decir, 8x8, o una unidad 642 de predicción cuyo tamaño es 8x4, una unidad 644 de predicción cuyo el tamaño es 4x8, o una unidad 646 de predicción cuyo tamaño es 4x4, que tiene un tamaño menor que la unidad 640 de codificación cuyo tamaño es 8x8. Finalmente, la unidad 650 de codificación cuya profundidad es 4 y el tamaño es 4x4 es una unidad de codificación mínima y una unidad de codificación de profundidad máxima, y una unidad de predicción de la unidad 650 de codificación puede ser una unidad 650 de predicción cuyo tamaño es 4x4, una unidad 652 de predicción que tiene un tamaño de 4x2, una unidad 654 de predicción que tiene un tamaño de 2x4, o una unidad 656 de predicción que tiene un tamaño de 2x2.
La figura 7 ilustra una unidad de codificación y una unidad de transformación, según un ejemplo de realización.
El aparato 100 para codificar una imagen ilustrada en la figura 1 y el aparato 200 para decodificar una imagen ilustrada en la figura 2 realizan la codificación y decodificación con una unidad de codificación máxima o con subunidades de codificación, que son iguales o menores que la unidad de codificación máxima, dividida de la unidad de codificación máxima. En el proceso de codificación y decodificación, el tamaño de una unidad de transformación para la transformación se selecciona para que no sea mayor que el de una unidad de codificación correspondiente. Por ejemplo, refiriéndose a la figura 7, cuando una unidad 710 de codificación actual tiene el tamaño de 64x64, la transformación puede realizarse usando una unidad 720 de transformación que tiene el tamaño de 32x32.
Las figuras 8A a 8D ilustran formas de división de una unidad de codificación, una unidad de predicción y una unidad de transformación, según una realización ejemplar.
Las figuras 8A y 8B ilustran una unidad de codificación y una unidad de predicción, respectivamente, según una realización ejemplar.
La figura 8A muestra una forma de división seleccionada por el aparato 100 para codificar una imagen ilustrada en la figura 1, para codificar una unidad 810 de codificación máxima. El aparato 100 divide la unidad 810 de codificación máxima en varias formas, realiza la codificación y selecciona una forma de división óptima comparando los resultados de codificación de varias formas de división entre sí basándose en los costes de RD. Cuando es óptimo que la unidad 810 de codificación máxima esté codificada, la unidad 810 de codificación máxima puede codificarse sin dividir la unidad 810 de codificación máxima, como se ilustra en las figuras 8A hasta 8D.
Refiriéndose a la figura 8A, la unidad 810 de codificación máxima cuya profundidad es 0 se codifica dividiendo la unidad 810 de codificación máxima en subunidades de codificación cuyas profundidades son iguales o superiores a 1. Es decir, la unidad 810 de codificación máxima se divide en 4 subunidades de codificación cuyas profundidades son 1, y todas o algunas de las subunidades de codificación cuyas profundidades son 1 se dividen en subunidades de codificación cuyas profundidades son 2.
Una subunidad de codificación ubicada en un lado superior derecho y una subunidad de codificación ubicada en un lado inferior izquierdo entre las subunidades de codificación cuyas profundidades son 1 se dividen en subunidades de codificación cuyas profundidades son iguales o superiores a 2. Algunas de las subunidades de codificación cuyas profundidades son iguales o superiores a 2 pueden dividirse en subunidades de codificación cuyas profundidades son iguales o superiores a 3.
La figura 8B muestra una forma de división de una unidad de predicción para la unidad 810 de codificación máxima. Refiriéndose a la figura 8B, una unidad 860 de predicción para la unidad 810 de codificación máxima puede dividirse en una configuración que sea diferente de la división de la unidad 810 de codificación máxima. En otras palabras, una unidad de predicción para cada una de las subunidades de codificación puede ser más pequeña que la correspondiente subunidad de codificación.
Por ejemplo, una unidad de predicción para una subunidad 854 de codificación ubicada en un lado inferior derecho entre las subunidades de codificación cuyas profundidades son 1 puede ser menor que la subunidad 854 de codificación. Además, las unidades de predicción para algunas subunidades 814, 816, 850 y 852 de codificación de entre las subunidades 814, 816, 818, 828, 850 y 852 de codificación cuyas profundidades son 2 pueden ser menores que las subunidades 814, 816,850 y 852 de codificación, respectivamente.
Además, las unidades de predicción para las subunidades 822, 832 y 848 de codificación cuyas profundidades son 3 pueden ser más pequeñas que las subunidades 822, 832 y 848 de codificación, respectivamente. Las unidades de predicción pueden tener una forma en la que las respectivas subunidades de codificación se dividan igualmente por dos en una dirección de altura o anchura o tener una forma en la que las respectivas subunidades de codificación se dividan igualmente por cuatro en las direcciones de altura y anchura.
Las figuras 8C y 8D ilustran una unidad de predicción y una unidad de transformación, respectivamente, según una realización ejemplar.
La figura 8C muestra una forma de división de una unidad de predicción para la unidad 810 de codificación máxima mostrada en la figura 8B y la figura 8D muestra una forma de división de una unidad de transformación de la unidad 810 de codificación máxima.
Refiriéndose a la figura 8D, una forma de división de una unidad 870 de transformación puede establecerse de manera diferente a la unidad 860 de predicción.
Por ejemplo, aunque una unidad de predicción para la unidad 854 de codificación cuya profundidad es 1 se selecciona con una forma en la que la altura de la unidad 854 de codificación se divide igualmente por dos en la figura 8C, se puede seleccionar una unidad de transformación con el mismo tamaño que la unidad 854 de codificación en la figura 8D. Es decir, el tamaño y la forma de la unidad 854 de codificación en la figura 8A es el mismo que el tamaño y la forma de la unidad 854 de transformación en la figura 8D, pero el tamaño y la forma de la unidad 854 de predicción en las figuras 8B y 8C es diferente del tamaño y la forma de la unidad 854 de codificación en la figura 8A y la unidad de transformación de la figura 8D. Asimismo, aunque las unidades de predicción para las unidades 814 y 850 de codificación cuyas profundidades son 2 se seleccionan con una forma en la que la altura de cada una de las unidades 814 y 850 de codificación se divide igualmente por dos, se puede seleccionar una unidad de transformación con el mismo tamaño que el tamaño original de cada una de las unidades 814 y 850 de codificación.
Puede seleccionarse una unidad de transformación con un tamaño más pequeño que una unidad de predicción. Por ejemplo, cuando se selecciona una unidad de predicción para la unidad 852 de codificación cuya profundidad es 2 con una forma en la que el ancho de la unidad 852 de codificación se divide igualmente por dos, se puede seleccionar una unidad de transformación con una forma en la que la unidad 852 de codificación es igualmente dividido por cuatro en las direcciones de alto y ancho, que tiene un tamaño más pequeño que la forma de la unidad de predicción.
La figura 9 es un diagrama de bloques de un aparato 900 de codificación por entropía, según una realización ejemplar.
Refiriéndose a la figura 9, el aparato 900 de codificación por entropía incluye una unidad 910 de modelado de contexto y un codificador 920 de entropía. El aparato 900 de codificación por entropía puede corresponder al codificador 450 de entropía ilustrado en la figura 4.
La unidad 910 de modelado de contexto establece un modelo de contexto para datos de codificación por entropía sobre un bloque actual. Los datos sobre el bloque actual incluyen varios elementos de sintaxis con respecto a la información que indica un procedimiento de codificación del bloque actual y los datos residuales. La información que indica el procedimiento de codificación del bloque actual puede ser información de encabezado para describir el procedimiento de codificación del bloque actual, como información que indica un tipo de bloque, información que indica un modo de predicción, o similar, y los datos residuales pueden ser información que indica los coeficientes de transformación generados al realizar la transformación en valores residuales, como un patrón de bloque codificado (CBP), un mapa de significancia, información de nivel o similares.
La codificación por entropía y la decodificación por entropía se realizan por separado en un elemento de sintaxis. En detalle, se calcula un índice de contexto usando una función de contexto diferente para cada elemento de sintaxis, y la codificación y decodificación por entropía se realiza usando codificación aritmética binaria adaptativa basada en el contexto (CABAC). Por tanto, en lo sucesivo, la codificación por entropía o decodificación por entropía del bloque actual se refiere a la codificación por entropía o decodificación por entropía con respecto a un elemento de sintaxis predeterminado del bloque actual, y el elemento de sintaxis predeterminado se refiere a uno de entre varios elementos de sintaxis.
Un códec de arte relacionado, como Moving Pictures Experts Group (MPEG) -4 H.264/MPEG-4 Advanced Video Coding (AVC), realiza el modelado de contexto haciendo referencia a un elemento de sintaxis de un bloque previamente codificado que es adyacente al actual. block, para codificar por entropía el elemento de sintaxis predeterminado del bloque actual. El modelado de contexto se refiere al establecimiento de un modelo de contexto utilizado para codificar por entropía el bloque actual, y una operación de establecimiento del modelo de contexto incluye una operación de cálculo del índice de contexto.
Sin embargo, cuando el bloque actual está codificado por entropía haciendo referencia al elemento de sintaxis del bloque codificado previamente, se produce un acceso frecuente a una memoria. Además, dado que, para hacer referencia al elemento de sintaxis del bloque codificado previamente, el elemento de sintaxis debe almacenarse continuamente en la memoria y, por lo tanto, se necesita una memoria de gran capacidad para la codificación por entropía. La unidad 910 de modelado de contexto no realiza repetidamente el modelado de contexto cuando todos los bloques están codificados por entropía, sino que establece una unidad de contexto que es una unidad para realizar el modelado de contexto, agrupando un número predeterminado de bloques, y realiza el modelado de contexto en la unidad de contexto solo una vez. Esto se describirá en detalle con referencia a las figuras 10 y 11. La figura 10 ilustra un procedimiento para compartir un modelo de contexto, según una realización ejemplar.
Un códec de arte relacionado, como MPEG-4 H.264/MPEG-4 AVC, se refiere a un bloque previamente codificado que está adyacente al lado izquierdo de un bloque actual y/o un bloque previamente codificado que está adyacente al lado superior. del bloque actual, para codificar por entropía el bloque actual. En otras palabras, para codificar por entropía un elemento de sintaxis A de un bloque X1 1010, un elemento de sintaxis A de un bloque A 1020 previamente codificado que es adyacente al lado izquierdo del bloque X1 1010 y/o un elemento de sintaxis A de un bloque B 1030 previamente codificado que es adyacente al lado superior del bloque X1 1010 se sustituye por una función de contexto predeterminada, y se calcula un índice de contexto para codificar por entropía el elemento de sintaxis A del bloque X1 1010 basándose en la sustitución. La función de contexto es una función para determinar el índice de contexto y puede determinarse para cada elemento de sintaxis.
Además, en el códec de la técnica relacionada, cuando se completa la codificación por entropía del bloque X1 1010 y un elemento de sintaxis de un bloque X2 1012 está codificado por entropía, el elemento de sintaxis A del bloque previamente codificado X1 1010 adyacente al bloque X2 1012 y un elemento de sintaxis A de un bloque C 1040 se sustituyen por la función de contexto de modo que el índice de contexto se puede calcular basándose en la sustitución.
Sin embargo, la unidad 910 de modelado de contexto agrupa el bloque X1 1010, el bloque X2 1012, un bloque X3 1014 y un bloque X4 1016 en una unidad 1000 de contexto, y realiza el modelado de contexto en la única unidad 1000 de contexto. Por ejemplo, cuando se calcula un índice de contexto predeterminado realizando el modelado de contexto en el bloque X1 1010 que está inicialmente codificado en la unidad 1000 de contexto, la unidad 910 de modelado de contexto no calcula por separado los índices de contexto de los otros bloques 1012 a 1016 de la unidad 1000 de contexto para realizar el modelado de contexto. Los índices de contexto de otros bloques 1012 a 1016 en la unidad 1000 de contexto se establecen para que sean iguales, es decir, iguales al índice de contexto del bloque X1 1010.
No es necesario realizar repetidamente el modelado de contexto para codificar por entropía el bloque X2 1012, y el bloque X2 1012 puede codificarse por entropía utilizando el índice de contexto que se utiliza para codificar por entropía el bloque X1 1010. No hay limitación en el establecimiento de la unidad 1000 de contexto, y todos los procedimientos de agrupación de bloques codificados continuamente en un grupo pueden usarse para establecer la unidad 1000 de contexto. La información que indica un procedimiento para establecer la unidad 1000 de contexto puede codificarse junto con el resultado de la codificación por entropía y puede insertarse en datos de imagen. Sin embargo, cuando la unidad 1000 de contexto se establece mediante un codificador y un decodificador utilizando un mismo procedimiento, puede ser innecesario codificar información que indique el procedimiento de establecer la unidad 1000 de contexto.
Dado que el modelado de contexto se realiza en cuatro bloques en la unidad 1000 de contexto, como se ilustra en la figura 10, se evita que se produzca un retraso cuando se realiza el modelado de contexto, y la codificación por entropía se puede realizar a una velocidad mayor. Además, dado que existe una alta probabilidad de que los bloques adyacentes puedan tener características similares, aunque los bloques adyacentes compartan un índice de contexto y estén codificados por entropía, la relación de compresión de la codificación no se reduce.
La figura 11 ilustra un procedimiento para compartir un modelo de contexto, según una realización ejemplar.
Refiriéndose a la figura 11, una unidad 1100 de contexto, que es una unidad para realizar el modelado de contexto, puede configurarse para que sea la misma que la unidad de codificación máxima descrita anteriormente con referencia a las figuras 1 a 8. En otras palabras, para codificar por entropía los bloques 1110 a 1130 ilustrados en la figura 11, la unidad 910 de modelado de contexto realiza el modelado de contexto solo una vez.
Para codificar por entropía un elemento de sintaxis A de un bloque X1 1110 que se codifica inicialmente en la unidad de codificación máxima, un elemento de sintaxis A de un bloque A 1140 y un elemento de sintaxis A de un bloque B 1150 se sustituyen por un contexto predeterminado función, y se calcula un índice de contexto del bloque X1 1110 basándose en la sustitución. Entonces, los índices de contexto para los elementos de sintaxis A de codificación por entropía de los otros bloques 1112 a 1130 se establecen para que sean los mismos que el índice de contexto del bloque X1 1110. El modelado de contexto se realiza en una pluralidad de bloques 1110 a 1130 incluidos en la unidad de codificación máxima solo una vez para evitar la ineficacia debido al modelado de contexto frecuente. Volviendo a la figura 9, el codificador 920 de entropía codifica por entropía datos sobre el bloque actual basándose en el modelo de contexto establecido por la unidad 910 de modelado de contexto, generando así una corriente de bits. El codificador 920 de entropía codifica por entropía el elemento de sintaxis predeterminado del bloque actual. Cuando el bloque actual es un bloque inicial de una unidad 1000 o 1100 de contexto, la unidad 910 de modelado de contexto establece un modelo de contexto para codificar por entropía el bloque actual basado en al menos un bloque previamente codificado que es adyacente al bloque actual, y el codificador 920 de entropía codifica por entropía el bloque actual de acuerdo con el modelo de contexto establecido.
Cuando el bloque actual no es un bloque 1010 o 1110 inicial de la unidad 1000 o 1100 de contexto, la unidad 910 de modelado de contexto establece un modelo de contexto para codificar por entropía el bloque actual para que sea el mismo que el modelo de contexto utilizado para codificar por entropía el bloque 1010 o 1110 inicial, y el codificador 920 de entropía codifica por entropía el bloque actual de acuerdo con el modelo de contexto establecido. La codificación por entropía es una codificación por entropía adaptativa basada en el contexto, y la codificación por entropía adaptativa basada en el contexto incluye CABAC.
Con respecto a CABAC, el codificador 920 de entropía realiza una codificación aritmética basada en información sobre un símbolo más probable correspondiente al índice de contexto calculado por la unidad 910 de modelado de contexto y en información sobre una probabilidad de ocurrencia del símbolo más probable. Cuando el índice de contexto se establece en la unidad 1000 o 1100 de contexto, se determinan el símbolo más probable correspondiente al índice de contexto y la probabilidad de ocurrencia del símbolo más probable. El codificador 920 de entropía realiza una codificación aritmética en todos los bloques de la unidad 1000 o 1100 de contexto basándose en el símbolo más probable determinado y la probabilidad de ocurrencia determinada del símbolo más probable.
Cuando se completa la codificación por entropía del bloque actual, el codificador 920 de entropía puede actualizar al menos uno del símbolo más probable y la probabilidad de aparición del símbolo más probable. Si el símbolo más probable se ha cambiado de acuerdo con el resultado de la codificación por entropía del bloque actual, el codificador 920 de entropía cambia información sobre el símbolo más probable correspondiente al índice de contexto establecido por la unidad 910 de modelado de contexto. Además, el codificador 920 de entropía actualiza la probabilidad de aparición del símbolo más probable correspondiente al índice de contexto establecido por la unidad 910 de modelado de contexto de acuerdo con el resultado de la codificación por entropía del bloque actual.
La actualización puede realizarse siempre que un bloque esté codificado por entropía o en cada período de actualización predeterminado. Cuando se realiza la actualización en cada período de actualización predeterminado, el codificador 920 de entropía puede realizar la actualización basándose en el resultado de la codificación por entropía de un bloque predeterminado de la unidad 1000 o 1100 de contexto. En el caso de la unidad 1000 de contexto de la figura 10, el codificador 920 de entropía puede codificar por entropía el bloque 1010 inicial de la unidad 1000 de contexto y luego puede realizar una actualización basada en el resultado de la codificación por entropía, o el codificador 920 de entropía puede codificar por entropía el último bloque 1016 de la unidad 1000 de contexto y luego puede realizar una actualización basada en el resultado de la codificación por entropía.
La figura 12 es un diagrama de bloques de un aparato 1200 de decodificación por entropía, según una realización de la presente invención.
Refiriéndose a la figura 12, el aparato 1200 de decodificación por entropía según una realización ejemplar incluye una unidad 1210 de modelado de contexto y un decodificador 1220 de entropía. El aparato 1200 de decodificación por entropía puede corresponder al decodificador 520 de entropía ilustrado en la figura 5. El aparato 1200 de decodificación por entropía de la figura 12 es un aparato para invertir la codificación por entropía del aparato 900 de codificación por entropía descrito anteriormente con referencia a las figuras 9 a 11.
La unidad 1210 de modelado de contexto establece un modelo de contexto para decodificar por entropía una corriente de bits con respecto a un bloque actual. El corriente de bits con respecto al bloque actual es una corriente de bits generada mediante la codificación por entropía de varios elementos de sintaxis que incluyen información que indica un procedimiento de codificación del bloque actual y los datos residuales.
El modelado de contexto para la decodificación por entropía es una operación correspondiente al modelado de contexto para la codificación por entropía. Así, cuando el bloque actual es un bloque 1010 o 1110 inicialmente decodificado por entropía en la unidad 1000 o 1100 de contexto, la unidad 1210 de modelado de contexto establece un modelo de contexto para decodificar por entropía el bloque actual basado en al menos un bloque previamente decodificado que es adyacente al bloque actual. Además, cuando el bloque actual no es un bloque 1010 o 1110 inicialmente codificado por entropía en la unidad 1000 o 1100 de contexto, la unidad 1210 de modelado de contexto establece un modelo de contexto para que sea el mismo que el modelo de contexto del bloque 1010 o 1110 inicialmente decodificado por entropía de la unidad 1000 o 1100 de contexto. El modelo de contexto puede ser un índice de contexto, como se describió anteriormente. No hay limitación para el procedimiento de establecer una unidad de contexto. Sin embargo, la unidad 1100 de contexto se puede configurar para que sea la misma que la unidad de codificación máxima, como se describió anteriormente con referencia a la figura 11.
El decodificador 1220 de entropía decodifica por entropía el bloque actual de acuerdo con el modelo de contexto establecido por la unidad 1210 de modelado de contexto. El decodificador 1220 de entropía realiza una decodificación por entropía adaptativa basada en el contexto en el bloque actual de acuerdo con el índice de contexto calculado por la unidad 1210 de modelado de contexto. La decodificación por entropía adaptativa basada en el contexto incluye la decodificación aritmética binaria adaptativa basada en el contexto.
Cuando el bloque actual es un bloque inicial de la unidad 1000 o 1100 de contexto, la unidad 1210 de modelado de contexto establece un modelo de contexto para decodificar por entropía el bloque actual basado en al menos un bloque previamente decodificado que es adyacente al bloque actual, y el decodificador 1220 de entropía decodifica por entropía el bloque actual de acuerdo con el modelo de contexto establecido.
Cuando el bloque actual no es un bloque 1010 o 1110 inicial de la unidad 1000 o 1100 de contexto, la unidad 1210 de modelado de contexto establece un modelo de contexto para decodificar por entropía el bloque actual para que sea el mismo que el modelo de contexto utilizado para decodificar por entropía el bloque 1010 o 1110 inicial, y el decodificador 1220 de entropía decodifica por entropía el bloque actual de acuerdo con el modelo de contexto establecido.
En decodificación aritmética binaria adaptativa basada en contexto, el decodificador 1220 de entropía realiza decodificación aritmética basada en información que indica un símbolo más probable correspondiente al índice de contexto calculado por la unidad 1210 de modelado de contexto e información que indica una probabilidad de ocurrencia del símbolo más probable. Cuando el índice de contexto se establece como la unidad 1000 o 1100 de contexto, se determinan el símbolo más probable correspondiente al índice de contexto y la probabilidad de ocurrencia del símbolo más probable.
El decodificador 1220 de entropía realiza la decodificación por entropía en todos los bloques de la unidad 1000 o 1100 de contexto basándose en el símbolo más probable determinado y la probabilidad de aparición determinada del símbolo más probable.
Cuando se completa la decodificación por entropía del bloque actual, el decodificador 1220 de entropía puede actualizar al menos uno del símbolo más probable y la probabilidad de aparición del símbolo más probable. Si el símbolo más probable se ha cambiado de acuerdo con el resultado de la decodificación por entropía del bloque actual, el decodificador 1220 de entropía cambia la información que indica el símbolo más probable correspondiente al índice de contexto establecido por la unidad 1210 de modelado de contexto. Además, el decodificador 1220 de entropía actualiza la probabilidad de aparición del símbolo más probable correspondiente al índice de contexto establecido por la unidad 1210 de modelado de contexto de acuerdo con el resultado de la decodificación por entropía del bloque actual. La actualización se realiza de la misma manera que el codificador 920 de entropía. En otras palabras, la actualización puede realizarse siempre que se realice la decodificación por entropía o en cada período de actualización predeterminado.
La figura 13 es un diagrama de flujo que ilustra un procedimiento de codificación por entropía, según una realización ejemplar.
Refiriéndose a la figura 13, en la operación 1310, el aparato 900 de codificación por entropía de la figura 9 determina si el modelado de contexto se realiza para codificar por entropía el bloque actual. Cuando el bloque actual es un bloque inicialmente codificado por entropía en la unidad 1000 o 1100 de contexto, el modelado de contexto debe realizarse para codificar por entropía un elemento de sintaxis predeterminado del bloque actual, y cuando el bloque actual no es un bloque inicialmente codificado por entropía en la unidad 1000 o 1100 de contexto, no es necesario realizar el modelado de contexto.
Como resultado de la determinación en la operación 1310, si se determina que es necesario realizar un modelado de contexto para la codificación por entropía del bloque actual, en la operación 1320, el aparato 900 de codificación por entropía establece un modelo de contexto para la codificación por entropía del bloque actual. El aparato 900 de codificación por entropía sustituye un elemento de sintaxis de al menos un bloque previamente codificado que es adyacente al bloque actual por una función de contexto predeterminada, calculando así un índice de contexto.
Como resultado de la determinación en la operación 1310, si se determina que no es necesario realizar el modelado de contexto para la codificación por entropía del bloque actual, en la operación 1330, el aparato 900 de codificación por entropía establece un modelo de contexto del bloque actual para ser el mismo que un modelo de contexto de un bloque previamente codificado que es adyacente al bloque actual. El índice de contexto para la codificación por entropía del bloque actual puede establecerse para que sea el mismo que el índice de contexto del bloque 1010 o 1110 inicialmente codificado por entropía en la unidad 1000 o 1100 de contexto que incluye el bloque actual.
En la operación 1340, el aparato 900 de codificación por entropía codifica por entropía el bloque actual de acuerdo con el modelo de contexto establecido en la operación 1320 o 1330. La codificación por entropía puede ser CABAC. La figura 14 es un diagrama de flujo que ilustra un procedimiento de decodificación por entropía, según una realización ejemplar.
Refiriéndose a la figura 14, en la operación 1410, el aparato 1200 de decodificación por entropía de la figura 12 determina si el modelado de contexto se realiza para decodificar por entropía el bloque actual. Cuando el bloque actual es un bloque inicialmente decodificado por entropía en la unidad 1000 o 1100 de contexto, el modelado de contexto debe realizarse para decodificar por entropía un elemento de sintaxis predeterminado del bloque actual, y cuando el bloque actual no es un bloque inicialmente decodificado por entropía en la unidad 1000 o 1100 de contexto, no es necesario realizar el modelado de contexto.
Como resultado de la determinación en la operación 1410, si se determina que es necesario realizar un modelado de contexto para la decodificación por entropía del bloque actual, en la operación 1420, el aparato de decodificación por entropía 1200 establece un modelo de contexto para la decodificación por entropía del bloque actual. El aparato 900 de decodificación por entropía sustituye un elemento de sintaxis de al menos un bloque previamente decodificado que es adyacente al bloque actual por una función de contexto predeterminada, calculando así un índice de contexto.
Como resultado de la determinación en la operación 1410, si se determina que no es necesario realizar el modelado de contexto para la decodificación por entropía del bloque actual, en la operación 1430, el aparato 900 de decodificación por entropía establece un modelo de contexto del bloque actual para ser el mismo que un modelo de contexto de un bloque previamente decodificado que es adyacente al bloque actual. El índice de contexto para la decodificación por entropía del bloque actual puede establecerse para que sea el mismo que el índice de contexto del bloque 1010 o 1110 inicialmente decodificado por entropía en la unidad 1000 o 1100 de contexto que incluye el bloque actual.
En la operación 1440, el aparato 1200 de decodificación por entropía decodifica por entropía el bloque actual de acuerdo con el modelo de contexto establecido en la operación 1420 o 1430. La decodificación por entropía puede ser una decodificación aritmética binaria adaptativa basada en el contexto.
Como se describió anteriormente, los datos de imagen se pueden codificar o descodificar por entropía a alta velocidad utilizando hardware de menor complejidad, mientras que la tasa de compresión de una imagen durante la codificación no se reduce en gran medida.
Si bien las realizaciones ejemplares se han mostrado y descrito particularmente con referencia a las figuras, un experto en la técnica entenderá que se pueden realizar varios cambios en la forma y los detalles en las mismas. El alcance de la protección está definido por las reivindicaciones adjuntas.
El aparato para codificar una imagen, el aparato para decodificar una imagen, el aparato de codificación por entropía y el aparato de decodificación por entropía ilustrados en las figuras 1, 2, 4, 5, 9 y 12 pueden incluir un bus acoplado a cada unidad del aparato o codificador, al menos un procesador que está conectado al bus, el procesador para ejecutar comandos y una memoria conectada al bus para almacenar los comandos, los mensajes recibidos y los mensajes generados.
Los ejemplos de realización también se pueden realizar como códigos legibles por ordenador en un medio de grabación legible por ordenador. El medio de grabación legible por ordenador es cualquier dispositivo de almacenamiento de datos que pueda almacenar datos que puedan ser leídos posteriormente por un sistema informático para ejecutar los códigos legibles por ordenador. Ejemplos del medio de grabación legible por ordenador incluyen memoria de solo lectura (ROM), memoria de acceso aleatorio (RAM), CD-ROM, cintas magnéticas, disquetes y dispositivos ópticos de almacenamiento de datos. El medio de grabación legible por ordenador también puede distribuirse a través de sistemas informáticos acoplados a la red de modo que el código legible por ordenador se almacene y ejecute de forma distribuida.

Claims (2)

REIVINDICACIONES
1. Un procedimiento de codificación por entropía de datos de imagen basado en codificación aritmética binaria adaptativa basada en contexto, CABAC, comprendiendo el procedimiento:
establecer la información del modelo de contexto actual para codificar por entropía un elemento de sintaxis de un primer bloque de datos de imagen y un elemento de sintaxis de un segundo bloque de datos de imagen basado en la información del modelo de contexto anterior que se utiliza para codificar por entropía el elemento de sintaxis de un bloque previamente codificado que es adyacente al primer bloque; y
codificar por entropía el elemento de sintaxis del primer bloque y el elemento de sintaxis del segundo bloque en función de la información del modelo de contexto actual,
caracterizado porque la información del modelo de contexto anterior indica un símbolo más probable, correspondiente a un índice de contexto, y una probabilidad de ocurrencia del símbolo más probable aplicado a la codificación aritmética binaria adaptativa basada en el contexto, CABAC, del bloque codificado previamente, y la información del modelo de contexto actual se obtiene actualizando la información que indica el símbolo más probable y la probabilidad de ocurrencia del símbolo más probable en la información del modelo de contexto anterior basada en un resultado de la codificación aritmética binaria adaptativa basada en el contexto de la codificación del bloque previamente codificado.
2. Un procedimiento de decodificación por entropía de datos de imagen basado en la codificación aritmética binaria adaptativa basada en el contexto, CABAC, comprendiendo el procedimiento:
establecer la información del modelo de contexto actual para decodificar por entropía un elemento de sintaxis de un primer bloque de datos de imagen y un elemento de sintaxis de un segundo bloque de datos de imagen basado en la información del modelo de contexto anterior que se utiliza para decodificar por entropía el elemento de sintaxis de un bloque previamente decodificado que es adyacente al primer bloque; y
decodificar por entropía el elemento de sintaxis del primer bloque y el elemento de sintaxis del segundo bloque en función de la información del modelo de contexto actual,
caracterizado porque la información del modelo de contexto anterior indica un símbolo más probable, correspondiente a un índice de contexto, y una probabilidad de ocurrencia del símbolo más probable aplicado a la codificación aritmética binaria adaptativa basada en el contexto, CABAC, del bloque previamente decodificado, y la información del modelo de contexto actual se obtiene actualizando la información que indica el símbolo más probable y la probabilidad de ocurrencia del símbolo más probable en la información del modelo de contexto anterior basada en un resultado de la codificación aritmética binaria adaptativa basada en el contexto del bloque decodificado previamente.
ES11766128T 2010-04-05 2011-04-05 Procedimiento de codificación/decodificación por entropía CABAC de baja complejidad Active ES2879573T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US32082610P 2010-04-05 2010-04-05
KR1020100102506A KR101754353B1 (ko) 2010-04-05 2010-10-20 저복잡도 엔트로피 부호화/복호화 방법 및 장치
PCT/KR2011/002377 WO2011126277A2 (en) 2010-04-05 2011-04-05 Low complexity entropy-encoding/decoding method and apparatus

Publications (1)

Publication Number Publication Date
ES2879573T3 true ES2879573T3 (es) 2021-11-22

Family

ID=44763394

Family Applications (1)

Application Number Title Priority Date Filing Date
ES11766128T Active ES2879573T3 (es) 2010-04-05 2011-04-05 Procedimiento de codificación/decodificación por entropía CABAC de baja complejidad

Country Status (16)

Country Link
EP (3) EP2556673A2 (es)
JP (6) JP5891218B2 (es)
KR (15) KR20110112168A (es)
CN (11) CN106488238B (es)
AU (2) AU2011239137B2 (es)
BR (2) BR112012025306A2 (es)
CA (6) CA2891138C (es)
DK (1) DK2556671T3 (es)
ES (1) ES2879573T3 (es)
HU (1) HUE055102T2 (es)
MX (2) MX2012011650A (es)
MY (3) MY196086A (es)
PL (1) PL2556671T3 (es)
RU (7) RU2540842C2 (es)
WO (1) WO2011126285A2 (es)
ZA (4) ZA201208293B (es)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110112168A (ko) * 2010-04-05 2011-10-12 삼성전자주식회사 내부 비트뎁스 확장에 기반한 비디오 부호화 방법 및 그 장치, 내부 비트뎁스 확장에 기반한 비디오 복호화 방법 및 그 장치
US9369736B2 (en) 2010-04-05 2016-06-14 Samsung Electronics Co., Ltd. Low complexity entropy-encoding/decoding method and apparatus
SG10201505821WA (en) 2012-01-30 2015-08-28 Samsung Electronics Co Ltd Method and apparatus for video encoding for each spatial sub-area, and method and apparatus for video decoding for each spatial sub-area
CN104365100A (zh) * 2012-04-15 2015-02-18 三星电子株式会社 用于并行处理的视频编码方法和装置以及视频解码方法和装置
EP2920962A4 (en) 2012-11-13 2016-07-20 Intel Corp ADAPTIVE TRANSFORMATION ENCODING OF CONTENT FOR NEXT GENERATION VIDEO
WO2014107065A1 (ko) * 2013-01-04 2014-07-10 삼성전자 주식회사 슬라이스 세그먼트의 엔트로피 부호화 방법 및 그 장치, 슬라이스 세그먼트의 엔트로피 복호화 방법 및 그 장치
EP2952003B1 (en) 2013-01-30 2019-07-17 Intel Corporation Content adaptive partitioning for prediction and coding for next generation video
KR101462637B1 (ko) * 2013-02-28 2014-11-21 성균관대학교산학협력단 영상 부호화/복호화 방법 및 장치
KR102179383B1 (ko) 2013-08-09 2020-11-16 삼성전자주식회사 병합 모드 결정 방법 및 장치
RU2645290C1 (ru) * 2017-03-27 2018-02-19 федеральное государственное казенное военное образовательное учреждение высшего образования "Военная академия связи имени Маршала Советского Союза С.М. Буденного" Министерства обороны Российской Федерации Способ кодирования оцифрованных изображений с использованием адаптивного ортогонального преобразования
KR102392772B1 (ko) * 2017-07-06 2022-04-29 삼성전자주식회사 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
CN110892722A (zh) * 2017-12-06 2020-03-17 富士通株式会社 模式信息的编码和解码方法、装置以及电子设备
CN110035287B (zh) * 2018-01-12 2023-05-09 富士通株式会社 对统一转换单元模式进行分组标识的方法、装置和电子设备
KR102504694B1 (ko) 2018-06-03 2023-02-28 엘지전자 주식회사 축소된 변환을 이용하여 비디오 신호를 처리하는 방법 및 장치
KR102432400B1 (ko) * 2018-09-02 2022-08-12 엘지전자 주식회사 영상 신호를 처리하기 위한 방법 및 장치
CN117651149A (zh) 2018-09-10 2024-03-05 华为技术有限公司 视频解码方法及视频解码器
WO2020145582A1 (ko) * 2019-01-07 2020-07-16 엘지전자 주식회사 이차 변환에 기반한 영상 코딩 방법 및 그 장치
US11375219B2 (en) * 2019-09-24 2022-06-28 Tencent America LLC Coding method and system with improved dynamic internal bit depth
EP4044596A4 (en) * 2019-11-01 2022-11-23 LG Electronics Inc. TRANSFORM-BASED METHOD FOR CODING AN IMAGE, AND ASSOCIATED DEVICE
CA3159803A1 (en) * 2019-11-01 2021-05-06 Lg Electronics Inc. Transform-based image coding method and device for same
MX2022005205A (es) * 2019-11-01 2022-07-27 Lg Electronics Inc Metodo de codificacion de imagenes a base de transformacion, y dispositivo para el mismo.

Family Cites Families (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5021891A (en) * 1990-02-27 1991-06-04 Qualcomm, Inc. Adaptive block size image compression method and system
US5107345A (en) * 1990-02-27 1992-04-21 Qualcomm Incorporated Adaptive block size image compression method and system
US5367629A (en) * 1992-12-18 1994-11-22 Sharevision Technology, Inc. Digital video compression system utilizing vector adaptive transform
JP2905133B2 (ja) * 1995-01-09 1999-06-14 松下電器産業株式会社 ディジタル符号化装置
JPH09121359A (ja) * 1995-10-26 1997-05-06 Hitachi Ltd 画像符号化方法および画像復号化方法
US6571016B1 (en) * 1997-05-05 2003-05-27 Microsoft Corporation Intra compression of pixel blocks using predicted mean
US6633611B2 (en) * 1997-04-24 2003-10-14 Mitsubishi Denki Kabushiki Kaisha Method and apparatus for region-based moving image encoding and decoding
SE512291C2 (sv) * 1997-09-23 2000-02-28 Ericsson Telefon Ab L M Inbäddad DCT-baserad stillbildskodningsalgoritm
US6529634B1 (en) * 1999-11-08 2003-03-04 Qualcomm, Inc. Contrast sensitive variance based adaptive block size DCT image compression
JP3952116B2 (ja) * 1999-11-12 2007-08-01 セイコーエプソン株式会社 画像圧縮装置及び方法
KR100433516B1 (ko) * 2000-12-08 2004-05-31 삼성전자주식회사 트랜스코딩 방법
KR20030009669A (ko) * 2001-07-23 2003-02-05 삼성전자주식회사 다채널 영상 부호화기 및 그 부호화 방법
US6980596B2 (en) * 2001-11-27 2005-12-27 General Instrument Corporation Macroblock level adaptive frame/field coding for digital video content
US7162094B2 (en) * 2001-11-27 2007-01-09 General Instrument Corporation Frequency coefficient scanning paths for coding digital video content
JP2004007379A (ja) * 2002-04-10 2004-01-08 Toshiba Corp 動画像符号化方法及び動画像復号化方法
JP2003230149A (ja) * 2002-02-05 2003-08-15 Mitsubishi Electric Corp 高圧縮符号化装置
KR101010722B1 (ko) * 2002-04-02 2011-01-24 노키아 코포레이션 영상의 코딩 변환 계수/비디오 인코더 및/또는 디코더
JP4193406B2 (ja) * 2002-04-16 2008-12-10 三菱電機株式会社 映像データ変換装置および映像データ変換方法
US7483575B2 (en) * 2002-10-25 2009-01-27 Sony Corporation Picture encoding apparatus and method, program and recording medium
EP2793473B1 (en) * 2002-11-01 2016-12-14 Godo Kaisha IP Bridge 1 Direct mode motion vector computation avoiding divisions by zero
US7995849B2 (en) * 2003-03-17 2011-08-09 Qualcomm, Incorporated Method and apparatus for improving video quality of low bit-rate video
AR043643A1 (es) * 2003-03-17 2005-08-03 Qualcomm Inc Metodo y aparato para mejorar la calidad de video de bajo caudal de bits
US20050084013A1 (en) * 2003-10-15 2005-04-21 Limin Wang Frequency coefficient scanning paths
KR20050045746A (ko) * 2003-11-12 2005-05-17 삼성전자주식회사 계층 구조의 가변 블록 크기를 이용한 움직임 추정 방법및 장치
US7379608B2 (en) * 2003-12-04 2008-05-27 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung, E.V. Arithmetic coding for transforming video and picture data units
US7599435B2 (en) 2004-01-30 2009-10-06 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Video frame encoding and decoding
JP2006157481A (ja) * 2004-11-30 2006-06-15 Canon Inc 画像符号化装置及びその方法
US8311119B2 (en) * 2004-12-31 2012-11-13 Microsoft Corporation Adaptive coefficient scan order
KR100636229B1 (ko) * 2005-01-14 2006-10-19 학교법인 성균관대학 신축형 부호화를 위한 적응적 엔트로피 부호화 및 복호화방법과 그 장치
JP2006211304A (ja) * 2005-01-28 2006-08-10 Matsushita Electric Ind Co Ltd 映像符号化装置、映像復号化装置、映像符号化方法、映像復号化方法、映像符号化プログラムおよび映像復号化プログラム
JP4146444B2 (ja) * 2005-03-16 2008-09-10 株式会社東芝 動画像符号化の方法及び装置
KR100763181B1 (ko) * 2005-04-19 2007-10-05 삼성전자주식회사 기초계층과 향상계층의 데이터를 바탕으로 예측 정보를코딩하여 코딩율을 향상시키는 방법 및 장치
KR20070006445A (ko) * 2005-07-08 2007-01-11 삼성전자주식회사 하이브리드 엔트로피 부호화, 복호화 방법 및 장치
CN100584025C (zh) * 2005-08-04 2010-01-20 华为技术有限公司 一种基于内容自适应的算术解码***及装置
KR100750137B1 (ko) * 2005-11-02 2007-08-21 삼성전자주식회사 영상의 부호화,복호화 방법 및 장치
KR100873636B1 (ko) * 2005-11-14 2008-12-12 삼성전자주식회사 단일 부호화 모드를 이용하는 영상 부호화/복호화 방법 및장치
CN100495439C (zh) * 2005-11-21 2009-06-03 清华大学 采用直线轨迹扫描的图像重建***和方法
CN100488254C (zh) * 2005-11-30 2009-05-13 联合信源数字音视频技术(北京)有限公司 一种基于上下文的熵编码方法及解码方法
GB0524983D0 (en) * 2005-12-07 2006-01-18 Imagination Tech Ltd Recompression and decompression of a data stream for rate smoothing
JP2007174569A (ja) * 2005-12-26 2007-07-05 Sanyo Electric Co Ltd 符号化方法
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
KR20070077059A (ko) * 2006-01-19 2007-07-25 삼성전자주식회사 엔트로피 부호화/복호화 방법 및 장치
US7778472B2 (en) * 2006-03-27 2010-08-17 Qualcomm Incorporated Methods and systems for significance coefficient coding in video compression
US8503536B2 (en) * 2006-04-07 2013-08-06 Microsoft Corporation Quantization adjustments for DC shift artifacts
KR100809301B1 (ko) * 2006-07-20 2008-03-04 삼성전자주식회사 엔트로피 부호화/복호화 방법 및 장치
WO2008020672A1 (en) * 2006-08-17 2008-02-21 Electronics And Telecommunications Research Institute Apparatus for encoding and decoding image using adaptive dct coefficient scanning based on pixel similarity and method therefor
US7580166B2 (en) * 2006-09-01 2009-08-25 Infoprint Solutions Company Llc Converting image data in an input color space to an output color space in a transform domain
US7756350B2 (en) * 2006-11-13 2010-07-13 Global Ip Solutions, Inc. Lossless encoding and decoding of digital data
CN101193287A (zh) * 2006-11-30 2008-06-04 北京中电华大电子设计有限责任公司 一种提高jpeg2000 mq解码效率的方法和电路
US8718139B2 (en) * 2007-01-12 2014-05-06 Mitsubishi Electric Corporation Image decoding device and image decoding method
KR20080086766A (ko) * 2007-03-23 2008-09-26 삼성전자주식회사 픽셀 단위의 컨텍스트 모델을 이용한 영상의 부호화,복호화 방법 및 장치
RU2339181C1 (ru) * 2007-06-25 2008-11-20 Государственное образовательное учреждение высшего профессионального образования Академия Федеральной службы охраны Российской Федерации (Академия ФСО России) Способ передачи дополнительной информации при фрактальном кодировании изображений
US8437564B2 (en) * 2007-08-07 2013-05-07 Ntt Docomo, Inc. Image and video compression using sparse orthonormal transforms
US8229159B2 (en) * 2007-09-28 2012-07-24 Dolby Laboratories Licensing Corporation Multimedia coding and decoding with additional information capability
KR101608426B1 (ko) * 2008-03-28 2016-04-04 삼성전자주식회사 영상의 인트라 예측 부호화/복호화 방법 및 그 장치
KR101517768B1 (ko) * 2008-07-02 2015-05-06 삼성전자주식회사 영상의 부호화 방법 및 장치, 그 복호화 방법 및 장치
CN101640805A (zh) * 2008-07-28 2010-02-03 青岛海信信芯科技有限公司 一种视频解码方法及视频解码器
CN101394556B (zh) * 2008-10-29 2010-12-22 清华大学 用于深空通信的图像传输方法、发送装置、接收装置
KR101009740B1 (ko) * 2009-03-17 2011-01-19 한국과학기술원 율-왜곡 최적화된 모드 결정 알고리즘의 효율적인 구현을 위한 비트율 추정 장치 및 방법
JP5133950B2 (ja) * 2009-07-16 2013-01-30 日本電信電話株式会社 コンテクスト適応エントロピ符号化方法および装置,コンテクスト適応エントロピ復号方法および装置,並びにそれらのプログラム
KR101712098B1 (ko) * 2009-09-04 2017-03-03 삼성전자 주식회사 구문 요소에 기초한 비트스트림 생성 방법 및 장치
KR20110112168A (ko) * 2010-04-05 2011-10-12 삼성전자주식회사 내부 비트뎁스 확장에 기반한 비디오 부호화 방법 및 그 장치, 내부 비트뎁스 확장에 기반한 비디오 복호화 방법 및 그 장치
SI2953356T1 (sl) * 2010-08-17 2018-12-31 Samsung Electronics Co., Ltd Postopek dekodiranja videa z uporabo transformacijske enote z variabilno drevesno strukturo

Also Published As

Publication number Publication date
EP2556671A4 (en) 2015-06-03
CN106488237B (zh) 2019-06-18
CN102934431A (zh) 2013-02-13
CN104980753B (zh) 2018-03-16
ZA201500720B (en) 2017-01-25
CN102934432B (zh) 2016-02-17
CN104837023B (zh) 2018-03-30
KR101754354B1 (ko) 2017-07-06
CN104980753A (zh) 2015-10-14
KR20110112178A (ko) 2011-10-12
CN106454352A (zh) 2017-02-22
EP2556672A4 (en) 2015-10-14
KR101859452B1 (ko) 2018-06-27
CN104967859B (zh) 2017-12-08
CA2891138A1 (en) 2011-10-13
JP2015165708A (ja) 2015-09-17
BR112012025306A2 (pt) 2017-08-08
KR101806291B1 (ko) 2017-12-07
JP2015165706A (ja) 2015-09-17
CA2891099C (en) 2018-11-27
RU2639946C1 (ru) 2017-12-25
KR20170138072A (ko) 2017-12-14
KR20180045886A (ko) 2018-05-04
EP2556672A2 (en) 2013-02-13
RU2540842C2 (ru) 2015-02-10
JP2013524679A (ja) 2013-06-17
KR20140139464A (ko) 2014-12-05
CN106488239B (zh) 2019-06-25
KR101605775B1 (ko) 2016-04-01
CA3020464A1 (en) 2011-10-13
EP2556671B1 (en) 2021-06-16
KR20150086212A (ko) 2015-07-27
RU2012146749A (ru) 2014-06-10
CN102934433A (zh) 2013-02-13
MX2012011550A (es) 2012-12-17
KR20110112224A (ko) 2011-10-12
CA2891138C (en) 2018-01-30
JP2015165709A (ja) 2015-09-17
MY196086A (en) 2023-03-14
KR20140139462A (ko) 2014-12-05
ZA201500722B (en) 2017-01-25
AU2011239137A1 (en) 2012-11-01
CN106488239A (zh) 2017-03-08
ZA201208293B (en) 2015-06-24
BR112012025308B1 (pt) 2022-02-08
WO2011126285A3 (ko) 2012-02-02
CN104902280B (zh) 2018-05-29
KR101605774B1 (ko) 2016-03-23
MY165375A (en) 2018-03-21
JP5891218B2 (ja) 2016-03-22
JP5891327B2 (ja) 2016-03-22
RU2014149335A (ru) 2016-06-27
KR20150084744A (ko) 2015-07-22
CN104967859A (zh) 2015-10-07
CN106488238B (zh) 2019-06-28
CA2795479A1 (en) 2011-10-13
CA2891093A1 (en) 2011-10-13
CA2891099A1 (en) 2011-10-13
MX2012011650A (es) 2012-11-29
DK2556671T3 (da) 2021-06-21
CN105681802A (zh) 2016-06-15
CN106488238A (zh) 2017-03-08
ZA201500723B (en) 2017-01-25
CN106488237A (zh) 2017-03-08
AU2011239059B2 (en) 2014-10-02
JP5891329B2 (ja) 2016-03-22
RU2640719C2 (ru) 2018-01-11
MY174869A (en) 2020-05-19
CN104837023A (zh) 2015-08-12
KR101605776B1 (ko) 2016-04-01
BR112012025308A2 (es) 2017-08-29
CN106454352B (zh) 2019-09-06
JP2013524677A (ja) 2013-06-17
JP5891326B2 (ja) 2016-03-22
PL2556671T3 (pl) 2021-10-11
CA2891093C (en) 2018-01-16
RU2641241C2 (ru) 2018-01-16
KR101974139B1 (ko) 2019-04-30
KR20170021823A (ko) 2017-02-28
HUE055102T2 (hu) 2021-11-29
EP2556673A2 (en) 2013-02-13
KR101852988B1 (ko) 2018-04-30
KR20150084745A (ko) 2015-07-22
CN105681802B (zh) 2018-03-30
EP2556671A2 (en) 2013-02-13
AU2011239137B2 (en) 2014-10-23
CN104902280A (zh) 2015-09-09
KR101754353B1 (ko) 2017-07-07
KR101794251B1 (ko) 2017-11-07
KR20170081147A (ko) 2017-07-11
RU2595610C2 (ru) 2016-08-27
KR101503270B1 (ko) 2015-03-18
CA2795621C (en) 2016-05-31
RU2674888C1 (ru) 2018-12-13
AU2011239059A1 (en) 2012-11-01
JP2015165707A (ja) 2015-09-17
WO2011126285A2 (ko) 2011-10-13
KR101710634B1 (ko) 2017-02-27
RU2518935C1 (ru) 2014-06-10
CN102934432A (zh) 2013-02-13
CA3020464C (en) 2020-09-15
KR20110112180A (ko) 2011-10-12
CA2795621A1 (en) 2011-10-13
KR20110112171A (ko) 2011-10-12
KR20170125001A (ko) 2017-11-13
JP5891328B2 (ja) 2016-03-22
KR20110112168A (ko) 2011-10-12

Similar Documents

Publication Publication Date Title
ES2879573T3 (es) Procedimiento de codificación/decodificación por entropía CABAC de baja complejidad
US10027991B2 (en) Low complexity entropy-encoding/decoding method and apparatus
ES2699749B2 (es) Método y aparato para procesar una señal de vídeo
ES2644002T3 (es) Procedimiento y aparato de codificación y decodificación de imágenes usando unidades de transformada grandes
ES2590705T3 (es) Procedimiento y aparato para codificar/decodificar por entropía un coeficiente de transformación
ES2797423T3 (es) Procedimiento de codificación y decodificación de vídeo usando codificación aritmética con una señalización bidimensional del último coeficiente significativo
ES2778655T3 (es) Procedimiento para decodificar vídeo considerando un orden de omisión y de división
ES2687522T3 (es) Procedimiento de actualización de parámetros para decodificar de entropía del nivel de coeficiente de conversión, y dispositivo de decodificación de entropía del nivel de coeficiente de conversión utilizando el mismo
ES2750124T3 (es) Elementos sintácticos de señalización para coeficientes de transformada para subconjuntos de una unidad de codificación a nivel de hoja
ES2691979T3 (es) Aparato para decodificar imágenes
CN103918273A (zh) 确定用于变换系数的二进制码字的方法
ES2919660T3 (es) Aparato de codificación/decodificación por entropía CABAC de baja complejidad