ES2623202T3 - Procedimiento de codificación, procedimiento de descodificación y equipos para coeficientes de transformada - Google Patents

Procedimiento de codificación, procedimiento de descodificación y equipos para coeficientes de transformada Download PDF

Info

Publication number
ES2623202T3
ES2623202T3 ES11860213.5T ES11860213T ES2623202T3 ES 2623202 T3 ES2623202 T3 ES 2623202T3 ES 11860213 T ES11860213 T ES 11860213T ES 2623202 T3 ES2623202 T3 ES 2623202T3
Authority
ES
Spain
Prior art keywords
coefficients
map
transform coefficients
zero
significance
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
ES11860213.5T
Other languages
English (en)
Inventor
Jin Song
Mingyuan Yang
Dong Wang
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Application granted granted Critical
Publication of ES2623202T3 publication Critical patent/ES2623202T3/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/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/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
    • H04N19/645Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission by grouping of coefficients into blocks after the transform
    • 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/117Filters, e.g. for pre-processing or post-processing
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

Un procedimiento para codificar coeficientes de transformada, que comprende: codificar coeficientes de transformada de un bloque de coeficientes de transformada según un orden de exploración predeterminado, y codificar, en dicho bloque, grupos de coeficientes de transformada que comprenden un número fijado de coeficientes de transformada hasta que se haya codificado el último grupo del bloque de coeficientes de transformada; almacenar un mapa obtenido de coeficientes de transformada distintos de cero, valores absolutos de coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero; y cuando se codifica el último grupo, después de obtener un mapa de significancia de coeficientes de transformada distintos de cero codificados en el último grupo, escribir en un flujo de bits el mapa de significancia almacenado de coeficientes de transformada distintos de cero y el mapa de coeficientes de transformada distintos de cero codificados en el último grupo; después de obtener valores absolutos de coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero codificados en el último grupo, escribir en el flujo de bits los valores absolutos almacenados de coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero y los valores absolutos de coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero codificados en el último grupo, donde el orden de exploración para codificar un mapa de significancia es el mismo que el orden de exploración en los procesos de codificación de niveles y de codificación de signos, donde el bloque de coeficientes de transformada es un bloque 8x8 de coeficientes de transformada y 16 coeficientes de transformada se exploran para cada grupo, donde las siguientes operaciones se realizan en secuencia: (1) Tomar los 4x4 puntos superiores izquierdos de una posición en el dominio de frecuencia, codificar un mapa de significancia según el orden de exploración predeterminado de los 4x4 puntos, y almacenar el mapa de significancia codificado en la memoria intermedia; codificar un mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de coeficientes distintos de cero en secuencia, y almacenar los niveles y signos obtenidos en la memoria intermedia; (2) Tomar los 4x4 puntos superiores derechos de una posición en el dominio de frecuencia, codificar un mapa de significancia según el orden de exploración predeterminado de los 4x4 puntos, y almacenar el mapa de significancia codificado en la memoria intermedia; codificar un mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de coeficientes distintos de cero en secuencia, y almacenar los niveles y signos obtenidos en la memoria intermedia; (3) Tomar los 4x4 puntos inferiores izquierdos de una posición en el dominio de frecuencia, codificar un mapa de significancia según el orden de exploración predeterminado de los 4x4 puntos, y almacenar el mapa de significancia codificado en la memoria intermedia; codificar un mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de coeficientes distintos de cero en secuencia, y almacenar los niveles y signos obtenidos en la memoria intermedia; (4) Tomar los 4x4 puntos inferiores derechos de una posición en el dominio de frecuencia y codificar un mapa de significancia según el orden de exploración predeterminado de los 4x4 puntos; codificar la información de mapa de significancia de la memoria intermedia y la información de mapa de significancia obtenida de los 16 últimos coeficientes en un flujo de bits; codificar un mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de coeficientes distintos de cero en secuencia, y codificar la información de niveles y signos de la memoria intermedia y los niveles y signos obtenidos de los 16 últimos coeficientes en el flujo de bits.

Description

imagen1
DESCRIPCIÓN
Procedimiento de codificación, procedimiento de descodificación y equipos para coeficientes de transformada
5 Campo técnico
La presente invención se refiere al campo de las tecnologías de procesamiento de vídeo y, en particular, a un procedimiento y un aparato para codificar y descodificar coeficientes de transformada.
Antecedentes
En las tecnologías de codificación de vídeo convencionales, la codificación de entropía utiliza principalmente la codificación por longitud de series y la codificación aritmética. Por ejemplo, en la norma de codificación H.264 se usa un codificador de longitud variable adaptable al contexto (CAVLC) y un codificador aritmético binario adaptable al 15 contexto (CABAC). Los dos modos de codificación de entropía utilizan una correlación entre información codificada e información que tiene que codificarse en un momento dado. Específicamente, una tabla de código o un modelo de probabilidad de información que tiene que codificarse en un momento dado se genera usando la información codificada, lo que se denomina codificación de entropía basada en contexto. Al usar una codificación aritmética, el CABAC tiene un mejor rendimiento de codificación que el CAVLC, pero tiene una complejidad considerablemente mayor. Puesto que se usa información de contexto, la información de codificación actual no puede codificarse hasta que una información de codificación adyacente se haya codificado completamente, no pudiendo realizarse otras operaciones en paralelo. Como resultado, el algoritmo de codificación de entropía forma un cuello de botella en la codificación y la descodificación. Para aumentar la eficacia de la codificación se ha establecido una norma de codificación de vídeo, codificación de vídeo alta eficacia (HEVC), que es una norma de compresión de vídeo de
25 última generación que propone los siguientes procesos de codificación aritmética:
A. Codificar un mapa de coeficientes de transformada distintos de cero (mapa de significancia). En esta etapa, un bloque completo de coeficientes de transformada que tiene que codificarse se codifica en un orden de exploración predeterminado, denominado también modo de exploración de gran envergadura, por ejemplo modo en forma de Z (zigzag) de gran envergadura; el orden de exploración predeterminado también puede ser un orden de exploración en modo vertical de gran envergadura y en modo horizontal de gran envergadura y, por consiguiente, cuando la codificación se realiza posteriormente en el modo de subbloque, se usa un orden de exploración en modo vertical de poca envergadura o en modo horizontal de poca envergadura.
35 Cuando se lleva a cabo la etapa A, cada frecuencia corresponde a una posición de un mapa. Cuando una frecuencia es 0, el valor de una posición correspondiente en el mapa es 0; cuando la frecuencia es un valor distinto de cero, el valor de la posición correspondiente en el mapa es 1. Además, se determina si una frecuencia actual es la última frecuencia distinta de cero. Si la frecuencia actual es la última frecuencia distinta de cero, el valor de la posición correspondiente es 11 (dos unos, no el número once); en caso contrario, el valor de la posición es 10 (1 y 0, no el número diez). Durante el proceso de codificación del mapa, si aparece 11 en la secuencia de ceros y unos que representa el mapa, se determina que un bloque de coeficientes de transformada se ha codificado completamente.
B. Codificar un mapa de coeficientes de transformada mayores que 1 en el modo de subbloque. En esta
45 etapa, un mapa de subbloques mayores que 1 de todo el bloque de coeficientes de transformada se codifica en un orden de exploración predeterminado, lo que también se denomina modo de exploración de poca envergadura, por ejemplo modo en zigzag de poca envergadura.
C. Codificar valores absolutos de coeficientes mayores que 1 en el modo de subbloque usando un modo en zigzag de poca envergadura.
D. Codificar signos positivos y negativos de coeficientes distintos de cero en el modo de subbloque y usando el modo en zigzag de poca envergadura. Las anteriores etapas B a D se realizan de manera cíclica hasta que se hayan codificado todos los subbloques completamente.
55 En las etapas anteriores, el modo de subbloque se define de la siguiente manera usando un bloque 8x8 de coeficientes de transformada como un ejemplo: Un bloque de coeficientes de transformada 4x4 superior izquierdo se codifica en primer lugar, seguido de un bloque de coeficientes de transformada 4x4 superior derecho, un bloque de coeficientes de transformada 4x4 inferior izquierdo y un bloque de coeficientes de transformada 4x4 inferior derecho. Los bloques de coeficientes de transformada 4x4 anteriores son subbloques de un bloque 8x8 de coeficientes de transformada. El orden de exploración del modo en zigzag de gran envergadura y el orden de exploración del modo en zigzag de poca envergadura se ilustran en las FIG. 1A y 1B respectivamente, donde cada pequeño cuadro representa una frecuencia, y los números de los cuadros representan el orden de exploración. Resulta evidente que el orden de exploración del modo en zigzag de gran envergadura y del modo en zigzag de poca envergadura está
65 basado en la misma regla de exploración. Sin embargo, en diferentes objetos explorados, desde la perspectiva de todo el bloque de coeficientes de transformada, el orden de exploración es diferente entre la etapa A en la que se codifica el mapa de significancia y las etapas B a D en las que se codifican valores absolutos (niveles) de coeficientes de transformada y se codifican signos positivos y negativos de coeficientes de transformada distintos de cero. Debido al diferente orden de exploración, los datos tienen que leerse una vez de manera respectiva durante la realización de la etapa A y durante la realización de las etapas B a D; asimismo, es necesario fijar en un extremo de
imagen2
5 descodificación dos modos de consulta de tabla correspondientes a los dos tipos de orden, lo que produce una gran sobrecarga en la codificación y descodificación y una baja eficacia. Además, en la etapa A, si el bloque de coeficientes de transformada es relativamente grande, lo que se denomina habitualmente como gran unidad de transformada, por ejemplo un mapa de significancia de 32x32, la codificación de un gran mapa de significancia supone un gran problema en los diseños del hardware.
10 Resumen
El problema técnico solucionado por las formas de realización de la presente invención consiste en proporcionar un procedimiento y un aparato para codificar y descodificar coeficientes de transformada, como se define en las
15 reivindicaciones, para reducir las sobrecargas de codificación y descodificación y aumentar la eficacia de la codificación y la descodificación.
Según las soluciones técnicas proporcionadas en las formas de realización de la presente invención, el orden de exploración para codificar un mapa de significancia es el mismo que el orden de exploración en los procesos de
20 codificación de niveles y de codificación de signos; los datos solo tienen que leerse una vez en el proceso de codificación, y un extremo de descodificación necesita un modo de consulta de tabla para un solo tipo de orden. Además, el mapa de significancia se divide en mapas de significancia más pequeños, lo que puede reducir las sobrecargas de codificación y descodificación y aumentar la eficacia de la codificación y la descodificación.
25 Breve descripción de los dibujos
Para ilustrar más claramente las soluciones técnicas de las formas de realización de la presente invención o de la técnica anterior, a continuación se introduce brevemente los dibujos adjuntos requeridos para describir las formas de realización o la técnica anterior. Evidentemente, los dibujos adjuntos de la siguiente descripción muestran
30 simplemente algunas formas de realización de la presente invención, y un experto en la técnica puede obtener otros dibujos a partir de estos dibujos adjuntos sin realizar investigaciones adicionales.
La FIG. 1A es un diagrama esquemático de un orden de exploración en zigzag de gran envergadura.
35 La FIG. 1B es un diagrama esquemático de un orden de exploración en zigzag de poca envergadura.
La FIG. 2 es un diagrama de flujo esquemático de un procedimiento según una forma de realización de la presente invención.
40 La FIG. 3 es un diagrama de flujo esquemático de un procedimiento según una forma de realización de la presente invención.
La FIG. 4 es un diagrama estructural esquemático de un aparato de codificación según una forma de realización de la presente invención.
45 La FIG. 5 es un diagrama estructural esquemático de un aparato de descodificación según una forma de realización de la presente invención.
Descripción de formas de realización
50 A continuación se describe de manera clara y completa las soluciones técnicas de las formas de realización de la presente invención haciendo referencia a los dibujos adjuntos de las formas de realización de la presente invención. Evidentemente, las formas de realización descritas son simplemente una parte y no todas las formas de realización de la presente invención. Todas las demás formas de realización obtenidas por los expertos en la técnica en función
55 de las formas de realización de la presente invención sin realizar investigaciones adicionales estarán dentro del alcance de protección de la presente invención.
Como se muestra en la FIG. 2, un procedimiento para codificar coeficientes de transformada incluye lo siguiente:
60 201. Codificar coeficientes de transformada de un bloque de coeficientes de transformada según un orden de exploración predeterminado, y codificar un número fijado de coeficientes de transformada en cada grupo hasta que se haya codificado el último grupo del bloque de coeficientes de transformada; almacenar un mapa obtenido de coeficientes de transformada distintos de cero, valores absolutos de coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero.
65 El bloque de coeficientes de transformada en la forma de realización de la presente invención puede ser un bloque 8x8 de coeficientes de transformada, un bloque de coeficientes de transformada 32x32 o un bloque de coeficientes de transformada de otro tamaño. El tamaño del bloque de coeficientes de transformada no afecta a la implementación de la forma de realización de la presente invención, y la forma de realización de la presente
imagen3
5 invención no está limitada a este respecto.
Más específicamente, la codificación de coeficientes de transformada de un bloque de coeficientes de transformada y la codificación de un número fijado de coeficientes de transformada de cada grupo en 201 incluyen: codificar un mapa de coeficientes de transformada distintos de cero de un número predeterminado de coeficientes de transformada, codificar un mapa de coeficientes de transformada mayores que 1 del número fijado de coeficientes de transformada, codificar valores absolutos de coeficientes de transformada mayores que 1 del número fijado de coeficientes de transformada y codificar signos positivos y negativos de coeficientes de transformada distintos de cero de un número fijado de coeficientes de transformada.
15 La posición de almacenamiento anterior puede ser una memoria intermedia. El número predeterminado de coeficientes de transformada puede determinarse según el funcionamiento de un procesador, el tamaño de la memoria intermedia, etc. Diversos experimentos han demostrado que puede conseguirse una mayor eficacia de codificación cuando el número predeterminado es 16.
Como alternativa, el orden de exploración predeterminado puede ser el orden de exploración del modo de exploración de gran envergadura o el orden de exploración del modo de exploración de poca envergadura. Ejemplos correspondientes a los dos tipos de orden de exploración predeterminados se proporcionan en formas de realización subsiguientes de la presente invención. Debe entenderse que el orden de exploración predeterminado puede ser también otro orden siempre que el extremo de codificación corresponda al extremo de descodificación, y la forma de
25 realización de la presente invención no está limitada a este respecto.
202. Cuando se codifica el último grupo, después de obtener un mapa de coeficientes de transformada distintos de cero codificados en el último grupo, escribir en un flujo de bits el mapa almacenado de coeficientes de transformada distintos de cero y el mapa de coeficientes de transformada distintos de cero codificados en el último grupo; después de obtener valores absolutos de coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero codificados en el último grupo, escribir en el flujo de bits los valores absolutos almacenados de coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero y los valores absolutos de coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero codificados en el último grupo.
35 Según la solución técnica proporcionada en la forma de realización de la presente invención, el orden de exploración para codificar un mapa de significancia es el mismo que el orden de exploración en los procesos de codificación de niveles y de codificación de signos; los datos solo tienen que leerse una vez en el proceso de codificación, y un extremo de descodificación necesita un modo de consulta de tabla de un solo tipo de orden. Además, el mapa de significancia se divide en mapas de significancia más pequeños, lo que puede reducir las sobrecargas de la codificación y la descodificación y aumentar la eficacia de la codificación y la descodificación.
Como se muestra en la FIG. 3, un procedimiento para descodificar coeficientes de transformada incluye lo siguiente:
45 301. Analizar coeficientes de transformada de un flujo de bits según un orden de exploración predeterminado para obtener un mapa de coeficientes de transformada distintos de cero. En 301, el orden de exploración predeterminado es el mismo que el orden de exploración predeterminado de un extremo de codificación. El orden de exploración puede especificarse usando un protocolo o mediante una negociación para garantizar que el extremo de codificación y el extremo de descodificación tengan el mismo orden de exploración, y la forma de realización de la presente invención no está limitada a este respecto.
302. Analizar, según el orden de exploración predeterminado, un mapa de coeficientes de transformada mayores que 1, valores absolutos de coeficientes de transformada mayores que 1, y signos positivos y negativos de coeficientes de transformada distintos de cero del flujo de bits, y analizar un número fijado de coeficientes de transformada del flujo de bits cada vez.
55 El orden de exploración predeterminado puede ser el orden de exploración del modo de exploración de gran envergadura o el orden de exploración del modo de exploración de poca envergadura. En este caso, el análisis de los coeficientes de transformada de un flujo de bits según un orden de exploración predeterminado para obtener un mapa de coeficientes de transformada distintos de cero, el análisis, según el orden de exploración predeterminado, de un mapa de coeficientes de transformada mayores que 1, de valores absolutos de coeficientes de transformada mayores que 1 y de signos positivos y negativos de coeficientes de transformada distintos de cero del flujo de bits, y el análisis de un número fijado de coeficientes de transformada del flujo de bits cada vez incluyen:
analizar el flujo de bits según el orden de exploración del modo de exploración de gran envergadura para
65 obtener un mapa de coeficientes de transformada distintos de cero, analizar, según el orden de exploración del modo de exploración de gran envergadura, un mapa de coeficientes de transformada mayores que 1, valores absolutos de coeficientes de transformada mayores que 1, y signos positivos y negativos de coeficientes de transformada distintos de cero del flujo de bits, y analizar un número fijado de coeficientes de transformada del flujo de bits cada vez; o analizar el flujo de bits según el orden de exploración del modo de exploración de poca envergadura para
imagen4
5 obtener un mapa de coeficientes de transformada distintos de cero, y analizar un número fijado de coeficientes de transformada del flujo de bits cada vez; y analizar, según el orden de exploración del modo de exploración de poca envergadura, un mapa de coeficientes de transformada mayores que 1, valores absolutos de coeficientes de transformada mayores que 1, y signos positivos y negativos de coeficientes de transformada distintos de cero del flujo de bits, y analizar un número fijado de coeficientes de transformada del flujo de bits cada vez.
Según la solución técnica proporcionada en la forma de realización de la presente invención, el orden de exploración para codificar un mapa de significancia es el mismo que el orden de exploración en los procesos de codificación de niveles y de codificación de signos; los datos solo tienen que leerse una vez en el proceso de codificación, y un
15 extremo de descodificación necesita un modo de consulta de tabla de un solo tipo de orden. Además, el mapa de significancia se divide en mapas de significancia más pequeños, lo que puede reducir las sobrecargas de la codificación y la descodificación y aumentar la eficacia de la codificación y la descodificación.
En las siguientes formas de realización, se supone que se usa un bloque 8x8 de coeficientes de transformada y que se exploran o analizan 16 coeficientes de transformada cada vez.
Ejemplo 1: Se supone que el orden de exploración predeterminado es el del modo de exploración de gran envergadura. Si el orden de exploración predeterminado es el del modo en forma de Z (zigzag) de gran envergadura, puede hacerse referencia a la FIG. 1A.
25 El extremo de codificación realiza las siguientes operaciones en secuencia:
(1)
Codificar un mapa de significancia de los 16 primeros coeficientes según el orden de exploración predeterminado del bloque 8x8 de coeficientes de transforma, y almacenar el mapa de significancia codificado en la memoria intermedia; codificar un mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de los coeficientes en secuencia, y almacenar los niveles y signos obtenidos en la memoria intermedia.
(2)
Codificar un mapa de significancia de los 16 coeficientes siguientes en el orden de exploración según el orden de exploración predeterminado del bloque 8x8 de coeficientes de transforma, y almacenar el mapa de
35 significancia codificado en la memoria intermedia; codificar un mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de los coeficientes en secuencia, y almacenar los niveles y signos obtenidos en la memoria intermedia.
(3)
Codificar un mapa de significancia de los 16 coeficientes siguientes en el orden de exploración según el orden de exploración predeterminado del bloque 8x8 de coeficientes de transforma, y almacenar el mapa de significancia codificado en la memoria intermedia; codificar un mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de los coeficientes en secuencia, y almacenar los niveles y signos obtenidos en la memoria intermedia.
(4)
Codificar un mapa de significancia de los 16 últimos coeficientes en el orden de exploración según el orden de exploración predeterminado del bloque 8x8 de coeficientes de transformada, y codificar la
45 información de mapa de significancia de la memoria intermedia y la información de mapa de significancia obtenida de los 16 últimos coeficientes en un flujo de bits; codificar un mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de coeficientes en secuencia, y codificar la información de niveles y signos de la memoria intermedia y los niveles y signos obtenidos de los 16 últimos coeficientes en el flujo de bits. Una vez finalizada la codificación, el extremo de codificación puede enviar el flujo de bits a un extremo de descodificación. Evidentemente, la información de indicador de extremo se obtiene cuando se codifica el mapa de significancia de los últimos coeficientes.
El extremo de descodificación realiza las siguientes operaciones en secuencia:
55 (1) Leer el flujo de bits y analizar valores numéricos del mapa de significancia según el orden de exploración predeterminado del bloque 8x8 de coeficientes de transformada. En esta etapa pueden analizarse directamente valores numéricos del mapa de significancia de 64 coeficientes. El código de coeficientes de transformada incluye el mapa de los coeficientes de transformada y los valores numéricos de los coeficientes de transformada, donde los valores numéricos de los coeficientes de transformada incluyen valores absolutos de los coeficientes de transformada y signos de los coeficientes de transformada; los valores absolutos de los coeficientes de transformada incluyen un mapa de coeficientes de transformada mayores que 1 (según este mapa pueden conocerse los coeficientes de transformada distintos de cero cuyos valores absolutos valen 1) y valores absolutos de coeficientes de transformada mayores que 1.
(2) Leer el flujo de bits y analizar, según el orden de exploración predeterminado del bloque 8x8 de 65 coeficientes de transformada, el mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1, y signos positivos y negativos de todos los coeficientes distintos de cero de los 16 primeros coeficientes en el orden de exploración.
imagen5
(3) Leer el flujo de bits y analizar, según el orden de exploración predeterminado del bloque 8x8 de coeficientes de transformada, el mapa de coeficientes mayores que 1, valores absolutos de coeficientes
5 mayores que 1, y signos positivos y negativos de todos los coeficientes distintos de cero de los 16 coeficientes siguientes en el orden de exploración.
(4)
Leer el flujo de bits y analizar, según el orden de exploración predeterminado del bloque 8x8 de coeficientes de transformada, el mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1, y signos positivos y negativos de todos los coeficientes distintos de cero de los 16 coeficientes siguientes en el orden de exploración.
(5)
Leer el flujo de bits y analizar, según el orden de exploración predeterminado del bloque 8x8 de coeficientes de transformada, el mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1, y signos positivos y negativos de todos los coeficientes distintos de cero de los 16 últimos coeficientes en el orden de exploración.
15 Ejemplo 2: Se supone que el orden de exploración predeterminado es el del modo de exploración de poca envergadura. Si el orden de exploración predeterminado es el del modo en forma de Z (zigzag) de poca envergadura, puede hacerse referencia a la FIG. 1B.
El extremo de codificación realiza las siguientes operaciones en secuencia:
1. Tomar los 4x4 puntos superiores izquierdos de una posición en el dominio de frecuencia, codificar un mapa de significancia según el orden de exploración predeterminado de los 4x4 puntos, y almacenar el mapa de significancia codificado en la memoria intermedia; codificar un mapa de coeficientes mayores que 1, valores
25 absolutos de coeficientes mayores que 1 y signos positivos y negativos de coeficientes distintos de cero en secuencia, y almacenar los niveles y signos obtenidos en la memoria intermedia.
2.
Tomar los 4x4 puntos superiores derechos de una posición en el dominio de frecuencia, codificar un mapa de significancia según el orden de exploración predeterminado de los 4x4 puntos, y almacenar el mapa de significancia codificado en la memoria intermedia; codificar un mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de coeficientes distintos de cero en secuencia, y almacenar los niveles y signos obtenidos en la memoria intermedia.
3.
Tomar los 4x4 puntos inferiores izquierdos de una posición en el dominio de frecuencia, codificar un mapa de significancia según el orden de exploración predeterminado de los 4x4 puntos, y almacenar el mapa de significancia codificado en la memoria intermedia; codificar un mapa de coeficientes mayores que 1, valores
35 absolutos de coeficientes mayores que 1 y signos positivos y negativos de coeficientes distintos de cero en secuencia, y almacenar los niveles y signos obtenidos en la memoria intermedia.
4. Tomar los 4x4 puntos inferiores derechos de una posición en el dominio de frecuencia y codificar un mapa de significancia según el orden de exploración predeterminado de los 4x4 puntos; codificar la información de mapa de significancia de la memoria intermedia y la información de mapa de significancia obtenida de los 16 últimos coeficientes (la información de mapa de significancia obtenida de los 16 últimos coeficientes incluye información de extremo del mapa) en un flujo de bits; codificar un mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de coeficientes distintos de cero en secuencia, y codificar la información de niveles y signos de la memoria intermedia y los niveles y signos obtenidos de los 16 últimos coeficientes en el flujo de bits.
45 El extremo de descodificación realiza las siguientes operaciones en secuencia:
(1) Leer el flujo de bits; analizar valores numéricos del mapa de significancia de los 16 primeros puntos según el orden de exploración predeterminado de 4x4 puntos, y almacenar los valores numéricos en un subbloque superior izquierdo del mapa; analizar valores numéricos del mapa de significancia de 16 puntos siguientes según el orden de exploración predeterminado de 4x4 puntos, y almacenar los valores numéricos en un subbloque superior derecho del mapa; analizar valores numéricos del mapa de significancia de 16 puntos siguientes según el orden de exploración predeterminado de 4x4 puntos, y almacenar los valores numéricos en un subbloque inferior izquierdo del mapa; y analizar valores numéricos del mapa de significancia de los 16
55 últimos puntos según el orden de exploración predeterminado de 4x4 puntos, y almacenar los valores numéricos en un subbloque inferior derecho del mapa.
(2)
Leer el flujo de bits y analizar, según el orden de exploración predeterminado de 4x4 puntos, el mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de todos los coeficientes distintos de cero de los 16 primeros coeficientes, y usar los resultados como coeficientes en la posición del subbloque superior izquierdo.
(3)
Leer el flujo de bits y analizar, según el orden de exploración predeterminado de 4x4 puntos, el mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1, y signos positivos y negativos de todos los coeficientes distintos de cero de los 16 coeficientes siguientes, y usar los resultados como coeficientes en la posición del subbloque superior derecho.
65 (4) Leer el flujo de bits y analizar, según el orden de exploración predeterminado de 4x4 puntos, el mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1, y signos positivos y negativos de todos los coeficientes distintos de cero de los 16 coeficientes siguientes, y usar los resultados como coeficientes en la posición del subbloque inferior izquierdo.
imagen6
(5) Leer el flujo de bits y analizar, según el orden de exploración predeterminado de 4x4 puntos, el mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1, y signos positivos y negativos
5 de todos los coeficientes distintos de cero de los 16 últimos coeficientes, y usar los resultados como coeficientes en la posición del subbloque inferior derecho.
Como se muestra en la FIG. 4, un aparato para codificar coeficientes de transformada incluye:
10 una unidad de codificación 401, configurada para: codificar coeficientes de transformada de un bloque de coeficientes de transformada según un orden de exploración predeterminado, y codificar un número fijado de coeficientes de transformada en cada grupo hasta que se codifique el último grupo del bloque de coeficientes de transformada; cuando se está codificando el último grupo, después de obtener un mapa de coeficientes de transformada distintos de cero codificados en el último grupo, codificar en un flujo de bits un mapa
15 almacenado de coeficientes de transformada distintos de cero y el mapa de coeficientes de transformada distintos de cero codificados en el último grupo; y tras obtener valores absolutos de coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero codificados en el último grupo, escribir en el flujo de bits los valores absolutos almacenados de coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero y los valores absolutos de
20 coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero codificados en el último grupo; y una unidad de almacenamiento 402, configurada para almacenar el mapa de coeficientes de transformada distintos de cero, valores absolutos de coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero obtenidos por la unidad de codificación.
25 Como alternativa, la unidad de codificación 401 que está configurada para codificar coeficientes de transformada de un bloque de coeficientes de transformada según un orden de exploración predeterminado incluye:
codificar coeficientes de transformada del bloque de coeficientes de transformada según el orden de
30 exploración del modo de exploración de gran envergadura; o codificar coeficientes de transformada del bloque de coeficientes de transformada según el orden de exploración del modo de exploración de poca envergadura.
Según la solución técnica proporcionada en la forma de realización de la presente invención, el orden de exploración
35 para codificar un mapa de significancia es el mismo que el orden de exploración en los procesos de codificación de niveles y de codificación de signos; los datos solo tienen que leerse una vez en el proceso de codificación, y un extremo de descodificación necesita un modo de consulta de tabla de un solo tipo de orden. Además, el mapa de significancia se divide en mapas de significancia más pequeños, lo que puede reducir las sobrecargas de la codificación y la descodificación y aumentar la eficacia de la codificación y la descodificación.
40 Como se muestra en la FIG. 5, un aparato para descodificar coeficientes de transformada incluye:
una unidad de descodificación 501, configurada para analizar coeficientes de transformada de un flujo de bits según un orden de exploración predeterminado para obtener un mapa de coeficientes de transformada
45 distintos de cero, analizar, según el orden de exploración predeterminado, un mapa de coeficientes de transformada mayores que 1, valores absolutos de coeficientes de transformada mayores que 1 y signos positivos y negativos de coeficientes de transformada distintos de cero del flujo de bits, y analizar un número fijado de coeficientes de transformada del flujo de bits cada vez.
50 Como alternativa, la unidad de descodificación 501 está configurada específicamente para: analizar el flujo de bits según el orden de exploración del modo de exploración de gran envergadura para obtener un mapa de coeficientes de transformada distintos de cero, analizar, según el orden de exploración del modo de exploración de gran envergadura, un mapa de coeficientes de transformada mayores que 1, valores absolutos de coeficientes de transformada mayores que 1 y signos positivos y negativos de coeficientes de transformada distintos de cero del
55 flujo de bits, y analizar un número fijado de coeficientes de transformada del flujo de bits cada vez; o la unidad de descodificación 501 está configurada específicamente para:
analizar el flujo de bits según el orden de exploración del modo de exploración de poca envergadura para obtener un mapa de coeficientes de transformada distintos de cero, y analizar un número fijado de
60 coeficientes de transformada del flujo de bits cada vez; y analizar, según el orden de exploración del modo de exploración de poca envergadura, un mapa de coeficientes de transformada mayores que 1, valores absolutos de coeficientes de transformada mayores que 1, y signos positivos y negativos de coeficientes de transformada distintos de cero del flujo de bits, y analizar un número fijado de coeficientes de transformada del flujo de bits cada vez.
65 Según la solución técnica proporcionada en la forma de realización de la presente invención, el orden de exploración para codificar un mapa de significancia es el mismo que el orden de exploración en los procesos de codificación de niveles y de codificación de signos; los datos solo tienen que leerse una vez en el proceso de codificación, y un extremo de descodificación necesita un modo de consulta de tabla de un solo tipo de orden. Además, el mapa de
imagen7
5 significancia se divide en mapas de significancia más pequeños, lo que puede reducir las sobrecargas de la codificación y la descodificación y aumentar la eficacia de la codificación y la descodificación.
Los expertos en la técnica entenderán que todas o parte de las etapas de los procedimientos proporcionados en las anteriores formas de realización pueden realizarse mediante hardware controlado por un programa. El programa
10 puede estar almacenado en un medio de almacenamiento legible por ordenador, tal como una memoria de solo lectura, un disco magnético y un CD-ROM.
La tecnología proporcionada en las formas de realización de la presente invención puede aplicarse en el campo del procesamiento de señales digitales y se implementa usando un codificador y un descodificador. Los codificadores y 15 descodificadores de vídeo se utilizan ampliamente en varios dispositivos de comunicaciones o dispositivos electrónicos, por ejemplo una televisión digital, un descodificador, una pasarela de medios, un teléfono móvil, un dispositivo inalámbrico, un asistente personal digital (PDA), un ordenador manual o portátil, un receptor/navegador GPS, una cámara, un reproductor de vídeo, una cámara de vídeo, una grabadora de vídeo, un dispositivo de vigilancia, un dispositivo de videoconferencia y videotelefonía, etc. Tales dispositivos incluyen un procesador, una
20 memoria e interfaces para la transmisión de datos. El codificador y el descodificador de vídeo pueden implementarse directamente usando un circuito digital o un chip, por ejemplo un DSP (procesador de señales digitales), o usando un procesador controlado por códigos de software para realizar los procesos de los códigos de software.
Lo anterior ha descrito de manera detallada un procedimiento y un aparato para codificar y descodificar coeficientes
25 de transformada según las formas de realización de la presente invención. Aunque los principios y la implementación de la presente invención se describen con referencia a formas de realización a modo de ejemplo, las formas de realización solo tienen como objetivo ayudar a entender el procedimiento y la idea principal de la presente invención. Además, con respecto a la implementación y la aplicabilidad de la presente invención, los expertos en la técnica pueden realizar modificaciones y variaciones según la idea de la presente invención. Por lo tanto, la memoria
30 descriptiva no pretende limitar la presente invención.

Claims (4)

  1. imagen1
    REIVINDICACIONES
    1. Un procedimiento para codificar coeficientes de transformada, que comprende:
    5 codificar coeficientes de transformada de un bloque de coeficientes de transformada según un orden de exploración predeterminado, y codificar, en dicho bloque, grupos de coeficientes de transformada que comprenden un número fijado de coeficientes de transformada hasta que se haya codificado el último grupo del bloque de coeficientes de transformada; almacenar un mapa obtenido de coeficientes de transformada distintos de cero, valores absolutos de coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero; y
    cuando se codifica el último grupo, después de obtener un mapa de significancia de coeficientes de transformada distintos de cero codificados en el último grupo, escribir en un flujo de bits el mapa de significancia almacenado de coeficientes de transformada distintos de cero y el mapa de coeficientes de
    15 transformada distintos de cero codificados en el último grupo; después de obtener valores absolutos de coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero codificados en el último grupo, escribir en el flujo de bits los valores absolutos almacenados de coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero y los valores absolutos de coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero codificados en el último grupo,
    donde el orden de exploración para codificar un mapa de significancia es el mismo que el orden de exploración en los procesos de codificación de niveles y de codificación de signos,
    25 donde el bloque de coeficientes de transformada es un bloque 8x8 de coeficientes de transformada y 16 coeficientes de transformada se exploran para cada grupo,
    donde las siguientes operaciones se realizan en secuencia:
    (1) Tomar los 4x4 puntos superiores izquierdos de una posición en el dominio de frecuencia, codificar un mapa de significancia según el orden de exploración predeterminado de los 4x4 puntos, y almacenar el mapa de significancia codificado en la memoria intermedia; codificar un mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de coeficientes distintos de cero en secuencia, y almacenar los niveles y signos obtenidos
    35 en la memoria intermedia;
    (2)
    Tomar los 4x4 puntos superiores derechos de una posición en el dominio de frecuencia, codificar un mapa de significancia según el orden de exploración predeterminado de los 4x4 puntos, y almacenar el mapa de significancia codificado en la memoria intermedia; codificar un mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de coeficientes distintos de cero en secuencia, y almacenar los niveles y signos obtenidos en la memoria intermedia;
    (3)
    Tomar los 4x4 puntos inferiores izquierdos de una posición en el dominio de frecuencia, codificar
    45 un mapa de significancia según el orden de exploración predeterminado de los 4x4 puntos, y almacenar el mapa de significancia codificado en la memoria intermedia; codificar un mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de coeficientes distintos de cero en secuencia, y almacenar los niveles y signos obtenidos en la memoria intermedia;
    (4) Tomar los 4x4 puntos inferiores derechos de una posición en el dominio de frecuencia y codificar un mapa de significancia según el orden de exploración predeterminado de los 4x4 puntos; codificar la información de mapa de significancia de la memoria intermedia y la información de mapa de significancia obtenida de los 16 últimos coeficientes en un flujo de bits; codificar un mapa de
    55 coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de coeficientes distintos de cero en secuencia, y codificar la información de niveles y signos de la memoria intermedia y los niveles y signos obtenidos de los 16 últimos coeficientes en el flujo de bits.
  2. 2. Un procedimiento para descodificar coeficientes de transformada, que comprende:
    analizar coeficientes de transformada de un flujo de bits según un orden de exploración predeterminado para obtener un mapa de significancia de coeficientes de transformada distintos de cero (301), en el que el orden de exploración predeterminado es el mismo que el orden de exploración predeterminado en el procedimiento
    65 según la reivindicación 1; y analizar, según el orden de exploración predeterminado, un mapa de coeficientes de transformada mayores que 1, valores absolutos de coeficientes de transformada mayores que 1 y signos positivos y negativos de coeficientes de transformada distintos de cero del flujo de bits, y analizar un número fijado de coeficientes de transformada del flujo de bits (302);
    imagen2
    5 donde se usa un bloque 8x8 de coeficientes de transformada,
    donde las siguientes operaciones se realizan en secuencia:
    (1) Leer el flujo de bits; analizar valores numéricos del mapa de significancia de los 16 primeros puntos según el orden de exploración predeterminado de 4x4 puntos, y almacenar los valores numéricos en un subbloque superior izquierdo del mapa; analizar valores numéricos del mapa de significancia de 16 puntos siguientes según el orden de exploración predeterminado de 4x4 puntos, y almacenar los valores numéricos en un subbloque superior derecho del mapa; analizar valores numéricos del mapa
    15 de significancia de 16 puntos siguientes según el orden de exploración predeterminado de 4x4 puntos, y almacenar los valores numéricos en un subbloque inferior izquierdo del mapa; y analizar valores numéricos del mapa de significancia de los 16 últimos puntos según el orden de exploración predeterminado de 4x4 puntos, y almacenar los valores numéricos en un subbloque inferior derecho del mapa;
    (2) Leer el flujo de bits y analizar, según el orden de exploración predeterminado de los 4x4 puntos, el mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de todos los coeficientes distintos de cero de los 16 primeros coeficientes, y usar los resultados como coeficientes en la posición del subbloque superior izquierdo;
    25
    (3)
    Leer el flujo de bits y analizar, según el orden de exploración predeterminado de los 4x4 puntos, el mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de todos los coeficientes distintos de cero de los 16 coeficientes siguientes, y usar los resultados como coeficientes en la posición del subbloque superior derecho;
    (4)
    Leer el flujo de bits y analizar, según el orden de exploración predeterminado de los 4x4 puntos, el mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de todos los coeficientes distintos de cero de los 16 coeficientes siguientes, y usar los resultados como coeficientes en la posición del subbloque inferior izquierdo;
    35
    (5) Leer el flujo de bits y analizar, según el orden de exploración predeterminado de los 4x4 puntos, el mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de todos los coeficientes distintos de cero de los 16 últimos coeficientes, y usar los resultados como coeficientes en la posición del subbloque inferior derecho.
  3. 3. Un aparato para codificar coeficientes de transformada, que comprende:
    una unidad de codificación (401), configurada para: codificar coeficientes de transformada de un bloque de coeficientes de transformada según un orden de exploración predeterminado, y codificar, en dicho bloque, 45 grupos de coeficientes de transformada que comprenden un número fijado de coeficientes de transformada en cada grupo hasta que se haya codificado el último grupo del bloque de coeficientes de transformada; cuando se está codificando el último grupo, después de obtener un mapa de significancia de coeficientes de transformada distintos de cero codificados en el último grupo, escribir en un flujo de bits un mapa almacenado de coeficientes de transformada distintos de cero y el mapa de significancia de coeficientes de transformada distintos de cero codificados en el último grupo; y tras obtener valores absolutos de coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero codificados en el último grupo, escribir en el flujo de bits valores absolutos almacenados de coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero y los valores absolutos de coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero
    55 codificados en el último grupo; y
    una unidad de almacenamiento (402), configurada para almacenar el mapa de coeficientes de transformada distintos de cero, valores absolutos de coeficientes de transformada y signos positivos y negativos de coeficientes de transformada distintos de cero obtenidos por la unidad de codificación;
    donde el orden de exploración para codificar un mapa de significancia es el mismo que el orden de exploración en los procesos de codificación de niveles y de codificación de signos;
    donde el bloque de coeficientes de transformada es un bloque 8x8 de coeficientes de transformada y 16 65 coeficientes de transformada se exploran para cada grupo,
    imagen3
    donde el aparato está configurado para realizar las siguientes operaciones en secuencia:
    (1) Tomar los 4x4 puntos superiores izquierdos de una posición en el dominio de frecuencia, codificar un mapa de significancia según el orden de exploración predeterminado de los 4x4 puntos, y
    5 almacenar el mapa de significancia codificado en la memoria intermedia; codificar un mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de coeficientes distintos de cero en secuencia, y almacenar los niveles y signos obtenidos en la memoria intermedia;
    (2) Tomar los 4x4 puntos superiores derechos de una posición en el dominio de frecuencia, codificar un mapa de significancia según el orden de exploración predeterminado de los 4x4 puntos, y almacenar el mapa de significancia codificado en la memoria intermedia; codificar un mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de coeficientes distintos de cero en secuencia, y almacenar los niveles y signos obtenidos
    15 en la memoria intermedia;
    (3)
    Tomar los 4x4 puntos inferiores izquierdos de una posición en el dominio de frecuencia, codificar un mapa de significancia según el orden de exploración predeterminado de los 4x4 puntos, y almacenar el mapa de significancia codificado en la memoria intermedia; codificar un mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de coeficientes distintos de cero en secuencia, y almacenar los niveles y signos obtenidos en la memoria intermedia;
    (4)
    Tomar los 4x4 puntos inferiores derechos de una posición en el dominio de frecuencia y codificar
    25 un mapa de significancia según el orden de exploración predeterminado de los 4x4 puntos; codificar la información de mapa de significancia de la memoria intermedia y la información de mapa de significancia obtenida de los 16 últimos coeficientes en un flujo de bits; codificar un mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de coeficientes distintos de cero en secuencia, y codificar información de niveles y signos de la memoria intermedia y los niveles y signos obtenidos de los 16 últimos coeficientes en el flujo de bits.
  4. 4. Un aparato para descodificar coeficientes de transformada, que comprende:
    una unidad de descodificación (501), configurada para analizar coeficientes de transformada de un flujo de
    35 bits según un orden de exploración predeterminado para obtener un mapa de significancia de coeficientes de transformada distintos de cero, donde el orden de exploración predeterminado es el mismo que el orden de exploración predeterminado del aparato según la reivindicación 3, analizar, según el orden de exploración predeterminado, un mapa de coeficientes de transformada mayores que 1, valores absolutos de coeficientes de transformada mayores que 1, y signos positivos y negativos de coeficientes de transformada distintos de cero del flujo de bits, y analizar un número fijado de coeficientes de transformada del flujo de bits;
    donde se usa un bloque 8x8 de coeficientes de transformada,
    donde las siguientes operaciones se realizan en secuencia: 45
    (1) Leer el flujo de bits; analizar valores numéricos del mapa de significancia de los 16 primeros puntos según el orden de exploración predeterminado de 4x4 puntos, y almacenar los valores numéricos en un subbloque superior izquierdo del mapa; analizar valores numéricos del mapa de significancia de 16 puntos siguientes según el orden de exploración predeterminado de 4x4 puntos, y almacenar los valores numéricos en un subbloque superior derecho del mapa; analizar valores numéricos del mapa de significancia de 16 puntos siguientes según el orden de exploración predeterminado de 4x4 puntos, y almacenar los valores numéricos en un subbloque inferior izquierdo del mapa; y analizar valores numéricos del mapa de significancia de los 16 últimos puntos según el orden de exploración predeterminado de 4x4 puntos, y almacenar los valores numéricos en un subbloque inferior derecho
    55 del mapa;
    (2)
    Leer el flujo de bits y analizar, según el orden de exploración predeterminado de los 4x4 puntos, el mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de todos los coeficientes distintos de cero de los 16 primeros coeficientes, y usar los resultados como coeficientes en la posición del subbloque superior izquierdo;
    (3)
    Leer el flujo de bits y analizar, según el orden de exploración predeterminado de los 4x4 puntos, el mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de todos los coeficientes distintos de cero de los 16 coeficientes siguientes, y
    65 usar los resultados como coeficientes en la posición del subbloque superior derecho; (4) Leer el flujo de bits y analizar, según el orden de exploración predeterminado de los 4x4 puntos, el mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de todos los coeficientes distintos de cero de los 16 coeficientes siguientes y usar los resultados como coeficientes en la posición del subbloque inferior izquierdo;
    imagen4
    5
    (5) Leer el flujo de bits y analizar, según el orden de exploración predeterminado de los 4x4 puntos, el mapa de coeficientes mayores que 1, valores absolutos de coeficientes mayores que 1 y signos positivos y negativos de todos los coeficientes distintos de cero de los 16 últimos coeficientes, y usar los resultados como coeficientes en la posición del subbloque inferior derecho.
    10
ES11860213.5T 2011-03-10 2011-11-22 Procedimiento de codificación, procedimiento de descodificación y equipos para coeficientes de transformada Active ES2623202T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201110057694.9A CN102685503B (zh) 2011-03-10 2011-03-10 变换系数的编码方法、变换系数的解码方法,和装置
CN201110057694 2011-03-10
PCT/CN2011/082597 WO2012119463A1 (zh) 2011-03-10 2011-11-22 变换系数的编码方法、变换系数的解码方法,和装置

Publications (1)

Publication Number Publication Date
ES2623202T3 true ES2623202T3 (es) 2017-07-10

Family

ID=46797463

Family Applications (2)

Application Number Title Priority Date Filing Date
ES16196991T Active ES2732009T3 (es) 2011-03-10 2011-11-22 Procedimiento y aparato para codificar y descodificar coeficientes de transformada
ES11860213.5T Active ES2623202T3 (es) 2011-03-10 2011-11-22 Procedimiento de codificación, procedimiento de descodificación y equipos para coeficientes de transformada

Family Applications Before (1)

Application Number Title Priority Date Filing Date
ES16196991T Active ES2732009T3 (es) 2011-03-10 2011-11-22 Procedimiento y aparato para codificar y descodificar coeficientes de transformada

Country Status (17)

Country Link
US (2) US9571836B2 (es)
EP (2) EP3211897B1 (es)
JP (1) JP5881747B2 (es)
KR (2) KR101654123B1 (es)
CN (1) CN102685503B (es)
AU (2) AU2011361374B2 (es)
BR (1) BR112013023141B8 (es)
CA (1) CA2829494C (es)
DK (1) DK3211897T3 (es)
ES (2) ES2732009T3 (es)
HU (1) HUE043337T2 (es)
PL (1) PL3211897T3 (es)
PT (1) PT3211897T (es)
RU (2) RU2565505C2 (es)
SI (1) SI3211897T1 (es)
TR (1) TR201907869T4 (es)
WO (1) WO2012119463A1 (es)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
FR2972588A1 (fr) 2011-03-07 2012-09-14 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
US9338449B2 (en) 2011-03-08 2016-05-10 Qualcomm Incorporated Harmonized scan order for coding transform coefficients in video coding
FR2977111A1 (fr) * 2011-06-24 2012-12-28 France Telecom Procede de codage et decodage d'images, dispositif de codage et decodage et programmes d'ordinateur correspondants
US9491469B2 (en) 2011-06-28 2016-11-08 Qualcomm Incorporated Coding of last significant transform coefficient
US9247257B1 (en) * 2011-11-30 2016-01-26 Google Inc. Segmentation based entropy encoding and decoding
US9774856B1 (en) 2012-07-02 2017-09-26 Google Inc. Adaptive stochastic entropy coding
US9509998B1 (en) 2013-04-04 2016-11-29 Google Inc. Conditional predictive multi-symbol run-length coding
US20140341302A1 (en) * 2013-05-15 2014-11-20 Ce Wang Slice level bit rate control for video coding
US9392288B2 (en) 2013-10-17 2016-07-12 Google Inc. Video coding using scatter-based scan tables
EP3484149B1 (en) * 2015-06-23 2020-11-11 MediaTek Singapore Pte Ltd. Method and apparatus for transform coefficient coding of non-square blocks
CN110650343A (zh) 2018-06-27 2020-01-03 中兴通讯股份有限公司 图像的编码、解码方法及装置、电子设备及系统

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6690307B2 (en) 2002-01-22 2004-02-10 Nokia Corporation Adaptive variable length coding of digital video
DE60328761D1 (de) 2002-04-02 2009-09-24 Nokia Corp Codierung von transformationskoeffizienten in bild-/videocodierern- und/oder decodierern
JP3966461B2 (ja) * 2002-08-09 2007-08-29 株式会社リコー 電子カメラ装置
US6795584B2 (en) * 2002-10-03 2004-09-21 Nokia Corporation Context-based adaptive variable length coding for adaptive block transforms
JP2006054846A (ja) 2004-07-12 2006-02-23 Sony Corp 符号化方法、符号化装置、復号方法、復号装置およびそれらのプログラム
US8311119B2 (en) 2004-12-31 2012-11-13 Microsoft Corporation Adaptive coefficient scan order
US20070071090A1 (en) * 2005-06-21 2007-03-29 National Chiao Tung University Method for performing context adaptive binary arithmetic coding with stochastic bit reshuffling for fine granularity scalability
US8599925B2 (en) 2005-08-12 2013-12-03 Microsoft Corporation Efficient coding and decoding of transform blocks
CN100403801C (zh) * 2005-09-23 2008-07-16 联合信源数字音视频技术(北京)有限公司 一种基于上下文的自适应熵编/解码方法
CN100488254C (zh) * 2005-11-30 2009-05-13 联合信源数字音视频技术(北京)有限公司 一种基于上下文的熵编码方法及解码方法
WO2007079782A1 (en) 2006-01-13 2007-07-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Quality scalable picture coding with particular transform coefficient scan path
US7884742B2 (en) * 2006-06-08 2011-02-08 Nvidia Corporation System and method for efficient compression of digital data
CN102547277B (zh) 2007-01-18 2014-12-03 弗劳恩霍夫应用研究促进协会 产生质量可缩放视频数据流的设备及其方法
CN101039430B (zh) * 2007-05-08 2011-01-12 清华大学 一种视频编码中对残差矩阵的快速扫描方法
US8488668B2 (en) 2007-06-15 2013-07-16 Qualcomm Incorporated Adaptive coefficient scanning for video coding
US8483282B2 (en) 2007-10-12 2013-07-09 Qualcomm, Incorporated Entropy coding of interleaved sub-blocks of a video block
KR101375668B1 (ko) 2008-03-17 2014-03-18 삼성전자주식회사 변환 계수의 부호화, 복호화 방법 및 장치
US8179974B2 (en) * 2008-05-02 2012-05-15 Microsoft Corporation Multi-level representation of reordered transform coefficients
CN102187670B (zh) 2008-10-15 2014-05-14 法国电信公司 通过前向移动期间的补偿来预测图像
CN113573075A (zh) 2010-04-13 2021-10-29 Ge视频压缩有限责任公司 显著性图和变换系数块的编码
CN101938657B (zh) * 2010-10-07 2012-07-04 西安电子科技大学 高效视频编码中编码单元自适应划分方法
US9338449B2 (en) * 2011-03-08 2016-05-10 Qualcomm Incorporated Harmonized scan order for coding transform coefficients in video coding

Also Published As

Publication number Publication date
US9571836B2 (en) 2017-02-14
TR201907869T4 (tr) 2019-06-21
AU2011361374B2 (en) 2015-05-07
AU2011361374A1 (en) 2013-10-17
PL3211897T3 (pl) 2019-09-30
US20140010312A1 (en) 2014-01-09
HUE043337T2 (hu) 2019-08-28
RU2013145307A (ru) 2015-04-20
EP2677750A1 (en) 2013-12-25
AU2015210374A1 (en) 2015-09-03
JP5881747B2 (ja) 2016-03-09
EP3211897B1 (en) 2019-04-03
CA2829494A1 (en) 2012-09-13
ES2732009T3 (es) 2019-11-20
US20170111659A1 (en) 2017-04-20
RU2565505C2 (ru) 2015-10-20
BR112013023141A2 (pt) 2016-12-13
BR112013023141B1 (pt) 2020-05-05
AU2015210374B2 (en) 2017-06-01
EP2677750A4 (en) 2014-08-27
WO2012119463A1 (zh) 2012-09-13
EP2677750B1 (en) 2017-02-01
RU2618905C1 (ru) 2017-05-11
JP2014511639A (ja) 2014-05-15
KR20130128463A (ko) 2013-11-26
KR101654123B1 (ko) 2016-09-05
EP3211897A1 (en) 2017-08-30
KR20160105934A (ko) 2016-09-07
BR112013023141B8 (pt) 2020-05-19
PT3211897T (pt) 2019-06-11
CN102685503A (zh) 2012-09-19
CA2829494C (en) 2017-06-27
KR101688452B1 (ko) 2016-12-22
US10165305B2 (en) 2018-12-25
DK3211897T3 (da) 2019-06-24
CN102685503B (zh) 2014-06-25
SI3211897T1 (sl) 2019-06-28

Similar Documents

Publication Publication Date Title
ES2623202T3 (es) Procedimiento de codificación, procedimiento de descodificación y equipos para coeficientes de transformada
US9743080B2 (en) Encoding or decoding method and apparatus
ES2673939T3 (es) Codificación de la posición de un último coeficiente significativo dentro de un bloque de vídeo en base a un orden de exploración para el bloque en codificación de vídeo
ES2742027T3 (es) Omitir binarios para la codificación de índices de referencia en la codificación de vídeo
JP6231109B2 (ja) コンテキスト適応型、マルチレベル有意性コーディングに関するコンテキスト導出
ES2700523T3 (es) Optimización de contexto para la codificación de la posición del último coeficiente significativo
RU2565877C2 (ru) Способ и устройство для определения соответствия между синтаксическим элементом и кодовым словом для кодирования переменной длины
BR112014010326B1 (pt) Codificação de vídeo intramodo
CN104093018A (zh) 变换系数的编码方法、变换系数的解码方法,和装置
CN104093020A (zh) 变换系数的编码方法、变换系数的解码方法,和装置
JP6509916B2 (ja) 連結されたrom−ramテーブルに基づいて算術コーディングを遂行する方法及び装置