ES2930636T3 - Procedimiento de codificación de una imagen digital, procedimiento de decodificación, dispositivos y programas de ordenadores asociados - Google Patents

Procedimiento de codificación de una imagen digital, procedimiento de decodificación, dispositivos y programas de ordenadores asociados Download PDF

Info

Publication number
ES2930636T3
ES2930636T3 ES16741084T ES16741084T ES2930636T3 ES 2930636 T3 ES2930636 T3 ES 2930636T3 ES 16741084 T ES16741084 T ES 16741084T ES 16741084 T ES16741084 T ES 16741084T ES 2930636 T3 ES2930636 T3 ES 2930636T3
Authority
ES
Spain
Prior art keywords
block
transform
sublist
representative
transformed
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
ES16741084T
Other languages
English (en)
Inventor
Pierrick Philippe
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.)
Fondation B Com
Original Assignee
Fondation B Com
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 Fondation B Com filed Critical Fondation B Com
Application granted granted Critical
Publication of ES2930636T3 publication Critical patent/ES2930636T3/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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]

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)

Abstract

La invención se refiere a un método para codificar una imagen digital, estando dividida dicha imagen (Ik) en una pluralidad de bloques de píxeles que son procesados en un orden predefinido, incluyendo dicho método los siguientes pasos, los cuales se realizan para un bloque actual, teniendo dimensiones predeterminadas: predecir (T1) los valores del bloque actual a partir de al menos un bloque previamente procesado según un modo de predicción seleccionado entre una pluralidad de modos predeterminados; calcular (T2) un bloque residual (R) restando los valores predichos de los valores originales del bloque actual; obtener (T3) un bloque residual transformado (RT) aplicando una transformada a los píxeles del bloque residual, incluyendo dicho bloque residual transformado coeficientes, perteneciendo la transformada a una lista predeterminada de transformadas; codificar (T9) el bloque residual transformado; según la invención, el método incluye una etapa (T6) de cálculo de al menos una característica que representa al menos un coeficiente residual transformado del bloque actual; un paso (T7) de determinar una pieza inicial de datos de identificación que representa una sublista de al menos una transformada asociada con dicha al menos una característica calculada, y verificar que la transformada aplicada pertenece a la sublista identificada por la pieza inicial de datos. (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCIÓN
Procedimiento de codificación de una imagen digital, procedimiento de decodificación, dispositivos y programas de ordenadores asociados
1. Campo de la invención
El campo de la invención es el de la compresión de señal, en particular, de una imagen digital o de una secuencia de imágenes digitales, dividida en bloques de píxeles.
La invención se refiere a la señalización de una transformada aplicada a un bloque de píxeles, en un contexto de competencia de transformadas. Particularmente, la invención se refiere a un procedimiento de codificación según la reivindicación 1, un dispositivo de codificación según la reivindicación 8, un procedimiento de decodificación según la reivindicación 9, un dispositivo de decodificación según la reivindicación 11, un terminal de usuario según la reivindicación 12 y unos programas de ordenador según las reivindicaciones 13-14.
La codificación/decodificación de imágenes digitales se aplica, en concreto, a imágenes procedentes de al menos una secuencia de vídeo que comprende:
- imágenes procedentes de una misma cámara y que se suceden temporalmente (codificación/decodificación de tipo 2D),
- imágenes procedentes de diferentes cámaras orientadas según vistas diferentes (codificación/decodificación de tipo 3D),
- componentes de textura y de profundidad correspondientes (codificación/decodificación de tipo 3D), - etc.
La presente invención se aplica de manera similar a la codificación/decodificación de imágenes de tipo 2D o 3D. La invención puede, en concreto, pero no exclusivamente, aplicarse a la codificación de vídeo implementada en los codificadores de vídeo actuales a Vc (para "Advanced Video Coding", "Codificación de vídeo avanzada", en inglés) y HEVC (para "High Efficiency Video Coding", "Codificación de vídeo de alta eficiencia", en inglés) y sus extensiones (MVC, 3d-AVC, MV-HEVC, 3D-HEVC, etc.) y a la decodificación correspondiente.
2. Presentación de la técnica anterior
Se considera un esquema de compresión convencional de una imagen digital, según el que la imagen se divide en bloques de píxeles. Un bloque actual a codificar, que constituye una unidad de codificación inicial, generalmente, se corta en un número variable de subbloques según un modo de corte predeterminado.
En relación con la Figura 1, se considera una secuencia de imágenes digitales li, I2, Ik, con K número entero distinto de cero. Una imagen k se corta en unidades de codificación iniciales o CTU (para "Coding Tree Unit", "Unidad de árbol de codificación" en inglés) según la terminología del estándar HEVC, tal como se especifica en el documento "ISO/lEC 23008-2:2013 - High efficiency coding and media delivery in heterogeneous environments -- Part 2: High efficiency video coding", "ISO/lEC 23008-2:2013 - Codificación de alta eficiencia y entrega de medios en entornos heterogéneos -- Parte 2: Codificación de vídeo de alta eficiencia", Organización Internacional de Normalización, publicado en noviembre de 2013. Los codificadores estándar proponen, generalmente, una partición regular, que se basa en bloques cuadrados o rectangulares, llamados CU (para "Coding Units", "Unidades de codificación", en inglés) de tamaño fijo. La partición se hace siempre a partir de la unidad de codificación inicial, no hecha particiones y la partición final se calcula, luego, se señala a partir de esta base neutra. El documento ARRUFAT ADRiA ET AL: "Rate-distortion optimised transform competition for intra coding in HEVC", "Competencia de transformada optimizada de velocidad-distorsión para codificación intra en HEVC", 07-12-2014, divulga la señalización explícita de la transformada aplicada al bloque de residuo. El documento ANG JANGBYUNG ET AL: "Fast transform unit decisión for HeVc ", "Decisión de unidad de transformada rápida para HEVC", 2013 6o CONGRESO INTERNACIONAL DE PROCESAMIENTO DE IMÁGENES Y SEÑALES (CISP), IEEE, vol. i, 16 de diciembre de 2013 (2013-12-16), divulga la determinación de tamaño de la transformada aplicada a partir de una característica representativa de al menos un valor de coeficiente de residuo transformado.
Cada CU experimenta una operación de codificación o de decodificación que consiste en una sucesión de operaciones, que comprenden de manera no exhaustiva una predicción, un cálculo de residuo, una transformación, una cuantificación y una codificación entrópica. Esta sucesión de operaciones se conoce por la técnica anterior y se presenta en relación con la Figura 2.
El primer bloque CTU a procesar se selecciona como bloque actual c. Por ejemplo, se trata del primer bloque (en el orden lexicográfico). Este bloque incluye NxN píxeles, con N número enteró distinto de cero, por ejemplo, igual a 64 según el estándar HEVC.
En el transcurso de una etapa El, se determina una predicción Pr del bloque original b. Se trata de un bloque de predicción construido por medios conocidos, típicamente por compensación de movimiento (bloque procedente de una imagen de referencia anteriormente decodificada) o por predicción intra (bloque construido a partir de los píxeles decodificados que pertenecen a la imagen ID). La información de predicción relacionada con Pr se codifica en el flujo binario TB o archivo comprimido FC. Se supone, en el presente documento, que hay P modos de predicción posibles mi, m2,..., mp, con P número entero distinto de cero. Por ejemplo, el modo de predicción elegido para el bloque actual c es el modo mp. Algunos modos de predicción están asociados a una predicción de tipo Intra, otros a una predicción de tipo INTER.
En el transcurso de una etapa E2, se forma un residuo original R, por sustracción R = c-Pr de la predicción Pr del bloque actual c al bloque actual c.
En E3, se identifica una transformada a aplicar al residuo obtenido R.
La etapa de transformación juega un papel crucial en tal esquema de codificación de vídeo: en efecto, es la que concentra la información antes de la operación de cuantificación. De ello resulta que un conjunto de píxeles residuales antes de codificación se ve representado en un escaso número de coeficientes de frecuencia distintos de cero que representan la misma información. De este modo, en lugar de transmitir un gran número de coeficientes, solo se necesitará un pequeño número para reconstruir con fidelidad un bloque de píxeles.
En codificación de imagen y vídeo, generalmente, se utilizan transformadas de bloques (4x4, 8x8, etc.), ortogonales o cuasiortogonales. Las transformadas más empleadas se basan en bases de coseno. La DCT está, de este modo, presente en la mayor parte de los estándares para la imagen y el vídeo. Recientemente, el estándar HEVC ha introducido, igualmente, la DST (para "Discrete Sine Transform", "Transformada de seno discreta", en inglés) para la codificación de residuos particulares en el caso de bloques de tamaño 4x4.
De hecho, se emplean aproximaciones de estas transformadas, efectuándose los cálculos en números enteros. En general, las bases de transformadas se aproximan al número entero más cercano, con una precisión dada (generalmente, de 8 bits).
A título de ejemplo, se presenta en relación con las Figuras 3A y 3B, las transformadas utilizadas por el estándar HEVC en bloques de tamaño 4x4: Se trata de las transformadas DcT y DST. Los valores presentados en esta tabla deben dividirse por 128 para encontrar las transformaciones cuasiortonormales.
Más recientemente, se ha introducido la noción de competencia de transformadas. Para un tamaño de bloque y un modo de predicción dados, el codificador tiene la elección entre T transformadas, con T número entero distinto de cero, generalmente, superior o igual a 2. De la misma manera que para la partición de un bloque, las aplica cada una a su vez al bloque actual, luego, las evalúa según un criterio de velocidad-distorsión. La transformada elegida es la que obtiene los mejores rendimientos:
El estándar HEVC prevé, para los bloques 4x4, la elección entre una transformación de tipo DST o una ausencia de transformada "Transform Skip" (es decir, que los coeficientes residuales no experimentan una transformada).
En la publicación de A. Arrufat et al, titulada "Rate-distortion optimised transform competition for intra coding in HEVC", "Competencia de transformada optimizada de velocidad-distorsión para codificación intra en HEVC", publicada en las Actas de la conferencia IEEE Visual Communication on Image Processing, en diciembre de 2014, que se celebró en La Valeta, Malta, pág. 73, el codificador tiene la elección entre múltiples transformadas. Por ejemplo, se proponen 5 transformadas para los bloques de tamaño 4x4 y 17 transformadas para los bloques de tamaño 8x8. La etapa E3 identifica, por lo tanto, una transformada de entre las disponibles en función del tamaño del bloque actual.
En el transcurso de una etapa E4, el residuo R se transforma en un bloque de residuo transformado, llamado RT, por la transformada identificada. Se trata, por ejemplo, de una transformada de tipo bloque (comúnmente DCT, incluso DST, incluso transformaciones adaptadas) o de una transformada ondícula, todas conocidas por el experto en la materia y, en concreto, implementadas en los estándares JPEG/MPEG para la DCT/DST y JPEG2000 para la transformada ondícula.
En E5, de forma conocida en el estado de la técnica, estos coeficientes se escanean en un orden predeterminado para constituir un vector monodimensional RQ[j], donde el índice j varía de 0 a N0-1, con N0 número entero igual al número de píxeles del bloque c. El índice j se llama frecuencia del coeficiente RQ[j]. Convencionalmente, estos coeficientes se escanean por orden globalmente creciente o decreciente de valores de frecuencia, por ejemplo, según un recorrido en zigzag, que se conoce por el estándar de codificación de imágenes fijas JPEG.
En E6, el residuo transformado RT se cuantifica por medios convencionales de cuantificación, por ejemplo, escalar o vectorial, en un bloque de residuo cuantificado RQ que comprende tantos coeficientes como píxeles contiene el bloque de residuo rQ, por ejemplo, No, con No número entero distinto de cero.
Durante una etapa E7, la información relativa a los coeficientes del bloque de residuo RQ se llega a codificar por codificación entrópica, por ejemplo, según una técnica de codificación de Huffman o de codificación aritmética. Esta información comprende al menos la amplitud de los coeficientes, su signo y una señalización de la transformada aplicada al bloque por el codificador. Par amplitud, se entiende, en el presente documento, el valor absoluto del coeficiente. Convencionalmente, se puede codificar para cada coeficiente una información representativa del hecho de que el coeficiente es distinto de cero. A continuación, para cada coeficiente distinto de cero, se codifican una o varias informaciones relativas a la amplitud. Se obtienen las amplitudes codificadas CA. Los signos de los coeficientes distintos de cero también se codifican. En general, simplemente se codifican por un bit 0 o 1, correspondiendo cada valor a una polaridad dada. Tal codificación obtiene unos rendimientos eficaces, ya que, por el hecho de la transformación, los valores de las amplitudes a codificar son en gran mayoría distintos de cero.
En lo que se refiere a la transformada aplicada, en el caso del estándar HEVC, se indica al decodificador por un bit, llamado transform_skip_flag, la transformada inversa a aplicar de entre las dos alternativas DST o ausencia de transformada.
En el caso de la publicación de A. Arrufat et al, se la señala al decodificador por un enfoque indicador más señalización explícita: el codificador señala por un indicador (indicador en posición 0) si la transformada es una transformada de tipo HEVC (según el tamaño, se trata de una DCT o de una DST) o una transformación particular (indicador en posición 1). Si el indicador indica una transformación particular, el índice de la transformación particular utilizada se señala al decodificador en un código de longitud fija (2 para los bloques 4x4 y 4 para los bloques 8x8, con el fin de señalar respectivamente las 4 y 16 transformaciones particulares posibles).
Gracias al aumento del número de transformadas, se mejora el rendimiento de codificación, ya que cada transformada se adapta a la estadística de un tipo dado de señal de residuo. Unas ganancias en las señales de tipo texto y gráfico se informan por la técnica de "transform skip", "salto de transformada" y en señales de cualquier naturaleza (imágenes que contienen textos, gráficos sintéticos o que representan escenas naturales filmadas) por la técnica presentada en la publicación A. Arrufat.
En E8, el codificador evalúa la transformada aplicada, bajo control de un criterio de velocidad de distorsión, a partir del residuo codificado.
Las etapas anteriores El a E8 aplicadas al bloque actual c se repiten para las T transformadas disponibles en el codificador.
En E9, una vez que se han aplicado todas las transformadas disponibles, se ponen en competencia según un criterio de velocidad-distorsión y, finalmente, se retiene la transformada que obtiene el mejor resultado según este criterio. En E10, Ios datos codificados relativos al bloque actual se insertan en el flujo binario TB.
Los otros bloques de la imagen 11 se procesan de la misma forma, lo mismo para las siguientes imágenes de la secuencia.
3. Inconvenientes de la técnica anterior
Los inconvenientes de la técnica anterior son Ios siguientes:
• la multiplicación del número de transformadas induce una señalización incrementada para indicar la transformada elegida por el codificador al decodificador.
• este coste incrementado de señalización, que se tiene en cuenta durante la competencia entre transformadas, tiene impacto en Ios rendimientos de compresión.
4. Objetivos de la invención
La invención viene a mejorar la situación.
La invención tiene como objetivo, en concreto, paliar estos inconvenientes de la técnica anterior.
Más precisamente, un objetivo de la invención es proponer una solución que mejora Ios rendimientos de compresión de un codificador de imágenes digitales, reduciendo el volumen de datos transmitidos, sin requerir un aumento significativo de Ios recursos de cálculo y de memoria.
5. Exposición de la invención
Estos objetivos, así como otros que se pondrán de manifiesto en la continuación, se logran con la ayuda de un procedimiento de codificación de una imagen digital, dividiéndose dicha imagen en una pluralidad de bloques de píxeles procesados en un orden definido, comprendiendo dicho procedimiento las siguientes etapas, implementadas para un bloque actual, de dimensiones predeterminadas:
- Predicción de Ios valores del bloque actual a partir de al menos un bloque anteriormente procesado según un modo de predicción elegido de entre una pluralidad de modos predeterminados,
- Cálculo de un bloque de residuo por sustracción de Ios valores predichos a Ios valores originales del bloque actual,
- Obtención de un bloque de residuo transformado por aplicación de una transformada a píxeles del bloque de residuo, comprendiendo dicho bloque de residuo transformado coeficientes, perteneciendo la transformada a una lista predeterminada de transformadas; y - Codificación del bloque de residuo transformado.
Según la invención, el procedimiento comprende una etapa de cálculo de al menos una característica representativa de al menos un coeficiente de residuo transformado del bloque actual y una etapa de determinación de un dato inicial de identificación representativo de una sublista de al menos una transformada asociada a dicha al menos una característica calculada.
Con la invención, se determina en el codificador una sublista de transformadas probables para el bloque actual, a partir de al menos una característica de la señal residual transformada. Tal sublista constituye un subconjunto de la lista de transformadas disponibles para el codificador y presenta un número de elementos inferior al de esta lista. En efecto, el inventor ha constatado una relación entre Ios valores de algunas características de la señal residual transformada del bloque actual y la transformada que se ha aplicado a este bloque. Dicho de otro modo, la señal residual del bloque porta una información sobre la transformada que se le ha aplicado. Por lo tanto, el inventor ha establecido la posibilidad de identificar una o varias transformadas que presentan una fuerte probabilidad de seleccionarse por el codificador para el procesamiento de este bloque, a partir de una o varias características de la señal residual.
Esta determinación se basa en valores que un decodificador extrae del flujo binario. Por ejemplo, se trata de Ios valores de Ios coeficientes transformados que el codificador ha codificado e insertado en el flujo binario. Pueden o no haber experimentado una etapa de cuantificación. Se supone que el decodificador dispone de Ios medios para reproducir el cálculo de la o de las características de la señal residual a partir de Ios datos que lee en el flujo binario y la determinación del dato inicial representativo de la sublista de transformadas, de forma análoga a la del codificador.
Se comprende que, en un contexto de competencia de transformadas, según el que el codificador aplica al bloque actual la transformada que conduce a Ios mejores rendimientos desde un punto de vista de velocidad de distorsión, el hecho de predecir una sublista de transformadas que tienen una fuerte probabilidad de seleccionarse por el codificador, permite reducir la cantidad de información a señalar en el flujo binario para permitir que el decodificador identifique la transformada aplicada.
Por lo tanto, la invención se basa en un enfoque completamente nuevo e inventivo de la competencia de transformadas que consiste, por una parte, en determinar, para un bloque actual, una sublista de transformadas probables, cuyo conocimiento está compartido por el codificador y el decodificador y, por otra parte, realizar esta determinación en función de información intrínseca a la señal residual transformada del bloque actual, transmitida en el flujo binario y, por lo tanto, disponible al nivel del decodificador.
Contrariamente a la técnica anterior que señala la transformada utilizada por un indicador de tipo de transformada (HEVC u otro), luego, por una señalización explícita de un identificador de la transformada utilizada cuando no pertenece al tipo HEVC, la invención permite prescindir de una señalización sistemática, puesto que propone señalar la transformada aplicada al bloque actual en función del dato inicial de identificación que el decodificador tiene Ios medios para determinar de forma idéntica al codificador.
Si la transformada aplicada corresponde a la transformada única de la sublista predicha, el codificador potencialmente no tiene ninguna señalización a transmitir al decodificador. La invención permite, de este modo, disminuir el coste de señalización asociado a la elección de una transformada y, por lo tanto, ya sea mejorar la calidad de la secuencia de imágenes codificada para una velocidad dada, ya sea bajar la velocidad de codificación para una calidad dada por la ganancia en velocidad de señalización que aporta.
Cuando el dato inicial representa una sola transformada, se puede limitar la señalización a una marca, por ejemplo, igual a cero para indicar que la transformada aplicada corresponde al dato inicial determinado o a 1 para indicar lo contrario. En el caso de un decodificador simplificado que no buscaría una transformada que no corresponda al dato inicial determinado, se puede decidir no señalar nada en absoluto
Según un aspecto de la invención, el procedimiento comprende una etapa de codificación de un dato complementario al dato inicial de identificación de transformadas.
Cuando la sublista de transformadas comprende más de un elemento, un dato complementario se codifica e inserta en el flujo binario, para precisar al decodificador cómo explotar la sublista que ha determinado para el bloque actual.
Según otro aspecto de la invención, el dato complementario comprende un índice de posición de la transformada en la sublista determinada.
Cuando la transformada aplicada al bloque actual forma parte de la sublista determinada, el índice de posición permite que el decodificador identifique la transformada de la sublista que el codificador ha aplicado al bloque actual. Se comprende que, si la sublista es corta, el índice de posición se puede codificar en pocos bits.
Esta indicación la porta ventajosamente un bit de valor 0. En el caso opuesto, el identificador complementario lo portará un bit de valor 1, completado por la señalización explícita de la transformada aplicada. En la medida en que el dato inicial, representativo de la sublista SL, ha predicho correctamente la transformada, la señalización complementaria no incluye, por lo tanto, más que un bit. Según otro aspecto de la invención, cuando la transformada aplicada no pertenece a la sublista determinada, el índice de posición toma un valor de escape y el dato complementario comprende, además, el identificador de la transformada aplicada.
Cuando la transformada aplicada no está seleccionada en la sublista predicha, es necesario señalar un identificador completo de la transformada realmente aplicada por el codificador.
Una ventaja de la invención es que, si las sublistas están constituidas de forma pertinente y comprenden las transformadas susceptibles de obtener los mejores rendimientos, entonces, esta situación sigue siendo excepcional. Se observará, además, que cuando el codificador implementa una competencia de transformadas, generalmente, selecciona la mejor transformada según un criterio de velocidad-distorsión que ventajosamente tiene en cuenta el coste de señalización de cada una de las transformadas en competencia. De esta manera, no seleccionará una transformada fuera de sublista más que si sus rendimientos compensan el sobrecoste de señalización.
Según otro aspecto de la invención, dicha al menos una característica representativa de al menos un valor de coeficiente del bloque de residuo transformado pertenece al grupo que comprende al menos:
- una posición del último coeficiente de residuo cuantificado significativo;
- una lista de las posiciones de los coeficientes de residuos significativos;
- una suma de los cuadrados de los coeficientes de residuos cuantificados;
- una suma de los valores absolutos de los coeficientes de residuos cuantificados;
- un valor representativo de una evolución de los cuadrados de los coeficientes de residuos cuantificados;
- un valor representativo de una evolución de los valores absolutos de los coeficientes de residuos cuantificados; - un valor representativo de una densidad de probabilidad de los coeficientes de residuos cuantificados.
Estas características pueden considerarse individualmente o en combinación. El principio de la invención es asociar a un valor o un rango de valores de una o varias características de la señal residual cuantificada del bloque actual, que sean suficientemente distintivas para permitir aislar una o varias transformadas más probables para este bloque. Según también otro aspecto de la invención, la etapa de determinación comprende la lectura en una memoria del dato inicial de identificación determinado, estando dicho dato asociado a dicha al menos una característica de al menos un valor de un coeficiente de residuo cuantificado del bloque actual. Las sublistas de transformadas probables están predeterminadas. Una ventaja de este modo de realización es ser simple y poco costoso en recursos de cálculo.
Según también otro aspecto de la invención, habiéndose asignado previamente una puntuación a una transformada para al menos una característica de al menos un valor de un coeficiente de residuo cuantificado del bloque actual, la etapa de determinación constituye la sublista a partir de las transformadas de la lista cuya puntuación es superior a un umbral predeterminado.
Ventajosamente, a una transformada dada se asigna una puntuación en función de al menos un valor de al menos una característica de la señal de residuo cuantificada del bloque y, para el bloque actual, se construye dinámicamente una sublista de las transformadas cuyas puntuaciones son superiores a un umbral predeterminado. Por ejemplo, las puntuaciones se han establecido a partir de estadísticas de rendimientos de transformadas calculadas para un conjunto de secuencias de pruebas. A partir de tales estadísticas, se pueden determinar valores de probabilidades de que una transformada particular sea la de más rendimiento para un bloque para el que al menos una característica particular de la señal residual cuantificada toma un valor particular.
Una ventaja es constituir la sublista mejor adaptada posible al bloque actual.
De forma alternativa, las transformadas se ordenan según valores de puntuación decrecientes y la sublista se forma a partir de un número predeterminado de transformadas que han obtenido las puntuaciones más elevadas. Una ventaja es que las sublistas formadas son de tamaño fijo.
Según también otro aspecto de la invención, la etapa de determinación del dato inicial de identificación de transformadas inserta en la sublista la transformada aplicada a al menos un bloque vecino ya procesado.
Se puede considerar ventajosamente tomar en cuenta otros criterios, además de las características de la señal de residuo cuantificada, para constituir una sublista de transformadas probables para el bloque actual. Una opción es tener en cuenta las transformadas aplicadas a bloques vecinos del bloque actual ya procesados. A continuación, se puede elegir añadir las transformadas utilizadas por los vecinos a la sublista o bien no conservar más que las transformadas comunes.
El procedimiento que se acaba de describir en sus diferentes modos de realización se implementa ventajosamente por un dispositivo de codificación de una imagen digital según la invención. Tal dispositivo comprende al menos las siguientes unidades, adecuadas para implementarse para un bloque actual, de dimensiones predeterminadas: - Predicción de los valores del bloque actual a partir de al menos un bloque anteriormente procesado según un modo de predicción elegido de entre una pluralidad de modos predeterminados,
- Cálculo de un bloque de residuo por sustracción de los valores predichos a los valores originales del bloque actual,
- Obtención de un bloque de residuo transformado por aplicación de una transformada a píxeles del bloque de residuo, comprendiendo dicho bloque de residuo transformado coeficientes, perteneciendo la transformada a una lista de transformadas predeterminadas; y
- Codificación del bloque de residuo transformado.
Según la invención, tal dispositivo comprende, además, una unidad de cálculo de al menos una característica representativa de al menos un coeficiente de residuo transformado del bloque actual y una unidad de determinación de un dato inicial de identificación representativo de una sublista de al menos una transformada asociada a dicha al menos una característica calculada.
Por supuesto, el dispositivo de codificación según la invención puede disponerse para implementar, de forma independiente o en combinación, el conjunto de los modos de realización que se acaban de describir para el procedimiento de codificación.
En particular, según un aspecto de la invención, comprende una unidad de codificación de un dato complementario al dato inicial determinado.
Correlativamente, la invención se refiere a un procedimiento de decodificación de una imagen digital a partir de un flujo binario que comprende datos codificados representativos de dicha imagen, dividiéndose dicha imagen en una pluralidad de bloques procesados en un orden definido, comprendiendo dicho procedimiento las siguientes etapas, implementadas para un bloque, denominado bloque actual:
- Predicción del bloque actual a partir de al menos un bloque anteriormente procesado;
- Decodificación de los valores codificados de los coeficientes del bloque de residuo transformado extraídos del flujo binario;
- obtención de un bloque de residuo por aplicación al bloque de residuo transformado de la transformada inversa identificada, perteneciendo dicha transformada inversa a una lista predeterminada de transformadas inversas; - Reconstrucción del bloque decodificado a partir del bloque de residuo y de la predicción del bloque actual;
Según la invención, dicho procedimiento comprende una etapa de cálculo de al menos una característica representativa de al menos un coeficiente de residuo transformado del bloque actual, una etapa de determinación de un dato inicial de identificación de transformadas asociado a dicha al menos una característica calculada y una etapa de reconstrucción de un identificador de la transformada inversa aplicada al menos a partir del dato inicial determinado.
Tal procedimiento reproduce las etapas de cálculo de características de la señal residual transformada y de determinación de un dato inicial de identificación de transformadas que se acaban de describir para el codificador. Para hacer esto, explota la información de la que dispone, a saber, aquella que extrae del flujo binario, como, por ejemplo, la señal de residuo transformada, cuantificada o no, del bloque actual, la información y las reglas que ha almacenado previamente en memoria, que le permiten determinar la misma sublista que el codificador para el bloque actual.
A continuación, reconstruye el identificador de la transformada aplicada por el codificador al bloque actual al menos a partir del conocimiento de esta sublista. Cuando las sublistas tienen como mucho un elemento, el dato inicial de identificación puede ser suficiente para reconstruir el identificador de la transformada aplicada. Se puede considerar un tipo de decodificador dispuesto para aplicar sistemáticamente la transformada representada por el dato DI.
Según un aspecto de la invención, el procedimiento comprende una etapa de decodificación de un dato complementario al dato de Identificación determinado.
También se puede considerar otro tipo de decodificador dispuesto para explotar tal señalización complementaria, Ventajosamente, la decodificación de este dato complementario precisa la información contenida en la sublista de transformadas, En particular, puede indicar al decodificador si la transformada aplicada se encuentra bien en la sublista representada por el dato DI,
Según otro aspecto de la invención, el dato complementario comprende un índice de posición de la transformada utilizada en la sublista determinada,
Cuando la transformada aplicada por el codificador está comprendida en la sublista, si esta sublista comprende más de un elemento, la señalización se limita a indicar la posición de la transformada, Según también otro aspecto, el dato complementario comprende un código de escape y un identificador de la transformada aplicada,
Cuando la transformada aplicada por el codificador al bloque actual no está comprendida en la sublista, es necesario señalar completamente la transformada,
El procedimiento que se acaba de describir en sus diferentes modos de realización se implementa ventajosamente por un dispositivo de decodificación de una imagen digital según la invención, Tal dispositivo comprende al menos las siguientes unidades, adecuadas para implementarse para un bloque, denominado bloque actual:
- Predicción del bloque actual a partir de al menos un bloque anteriormente procesado;
- Decodificación de los valores codificados de los coeficientes del bloque de residuo transformado extraídos del flujo binario
- obtención de un bloque de residuo por aplicación al bloque de residuo transformado de una transformada inversa, perteneciendo dicha transformada inversa a una lista de transformadas inversas predeterminadas; - Reconstrucción del bloque decodificado a partir del bloque de residuo y de la predicción del bloque actual; Según la invención, tal dispositivo comprende una unidad de cálculo de al menos una característica representativa de al menos un coeficiente de residuo transformado del bloque actual, una etapa de determinación de un dato inicial de identificación de transformadas asociado a dicha al menos una característica calculada y por que comprende una etapa de reconstrucción de un identificador de la transformada inversa a aplicar al menos a partir del dato inicial determinado,
Por supuesto, el dispositivo decodificación según la invención puede disponerse para implementar, de forma independiente o en combinación, el conjunto de los modos de realización que se acaban de describir para el procedimiento de decodificación,
En particular, según un aspecto de la invención, comprende una unidad de decodificación de un dato complementario al dato inicial determinado y la unidad de reconstrucción es adecuada para reconstruir el identificador de la transformada inversa a aplicar al bloque actual a partir del dato inicial y de dicho dato complementario,
La invención se refiere, además, a una señal portadora de un flujo binario y que comprende datos codificados representativos de una imagen digital, dividiéndose dicha imagen digital en bloques de píxeles procesados en un orden definido, siendo los valores de un bloque actual predichos a partir de los valores de al menos un bloque anteriormente procesado según un modo de predicción elegido de entre una pluralidad de modos predeterminados, calculándose los valores de un bloque de residuo por sustracción de los valores predichos a los valores originales del bloque actual, obteniéndose un bloque de residuo transformado por aplicación de una transformada a píxeles del bloque de residuo, comprendiendo dicho bloque de residuo transformado coeficientes, perteneciendo la transformada a una lista de transformadas predeterminada,
Según la invención, tal señal comprende un dato codificado complementario representativo de la transformada aplicada, destinado a explotarse para reconstruir un identificador de la transformada inversa a aplicar a los valores de un bloque de residuo actual, a partir de un dato inicial de identificación de transformadas, siendo dicho dato inicial representativo de una sublista de al menos una transformada de dicha lista y asociado a al menos una característica de al menos un valor del bloque de residuo transformado actual,
La invención también se refiere a un terminal de ordenador que comprende un dispositivo de codificación de una imagen digital según la invención y un dispositivo de decodificación de una imagen digital según la invención, que se acaban de describir en sus diferentes modos de realización,
La invención también se refiere a un programa de ordenador que incluye instrucciones para la implementación de las etapas de un procedimiento de codificación de una imagen digital, tal como se ha descrito anteriormente, cuando este programa se ejecuta por un procesador,
La invención también se refiere a un programa de ordenador que incluye instrucciones para la implementación de las etapas de un procedimiento de decodificación de una imagen digital tal como se ha descrito anteriormente, cuando este programa se ejecuta por un procesador.
Estos programas pueden utilizar cualquier lenguaje de programación. Pueden descargarse desde una red de comunicación y/o grabarse en un soporte legible por ordenador.
La invención está relacionada, finalmente, con soportes de grabación, legibles por un procesador, integrados o no en el dispositivo de codificación de una imagen digital y en el dispositivo de decodificación de una imagen digital según la invención, eventualmente amovible, que memoriza respectivamente un programa de ordenador que implementa un procedimiento de codificación y un programa de ordenador que implementa un procedimiento de decodificación, tales como se han descrito anteriormente.
6. Lista de las figuras
Otras ventajas y características de la invención se pondrán de manifiesto más claramente a la lectura de la siguiente descripción de un modo de realización particular de la invención, dado a título de simple ejemplo ilustrativo y no limitativo y de los dibujos adjuntos, de entre los que:
- la figura 1 (ya descrita) presenta de forma esquemática una secuencia de imágenes digitales cortadas en bloques de píxeles;
- la figura 2 (ya descrita) presenta de forma esquemática las etapas de un procedimiento de codificación de un bloque de píxeles de una imagen digital según la técnica anterior;
- las figuras 3A y 3B (ya descritas) presentan las transformadas DCT y DST implementadas por el codificador del estándar HEv C;
- la figura 4 presenta de forma esquemática las etapas de un procedimiento de codificación de una imagen digital según la invención;
- la figura 5 presenta un primer ejemplo de densidad de probabilidad de tres transformadas en función de una medición de característica de la señal residual de un bloque;
- la figura 6 presenta un ejemplo de constitución de una sublista de transformadas probables a partir de la combinación de dos características distintas de la señal residual transformada del bloque actual, según un modo de realización de la invención
- la figura 7 presenta un ejemplo de bloques vecinos ya procesados explotados para la determinación de una sublista de transformadas probables para un bloque actual, según un modo de realización de la invención;
- las figuras 8A y 8B presentan de forma esquemática ejemplos de señalización de la transformada aplicada al bloque actual por el procedimiento de codificación según la invención;
- la figura 9 presenta de forma esquemática las etapas de un procedimiento de decodificación de una imagen digital según la invención;
- la figura 10 presenta de forma esquemática la estructura de hardware de un dispositivo de codificación de una imagen digital según la invención; y
- la figura 11 presenta de forma esquemática la estructura de hardware de un dispositivo de decodificación de una imagen digital según la invención.
7. Descripción de un modo de realización particular de la invención
El principio general de la invención se basa en una predicción de la transformada aplicada a un bloque actual en función de características intrínsecas a la señal residual transformada del bloque actual y en forma de una sublista de transformadas privilegiadas y en una señalización mínima de la transformada aplicada a partir de la sublista predicha.
Se considera un vídeo original constituido por una sucesión de K imágenes li, I2,...Ik, con K número entero distinto de cero, tal como el ya presentado en relación con la Figura 1. Las imágenes están codificadas por un codificador, los datos codificados se insertan en un flujo binario TB transmitido a un decodificador mediante una red de comunicación o un archivo comprimido FC, destinado a almacenarse en un disco duro, por ejemplo. El decodificador extrae los datos codificados, luego, recibidos y decodificados por un decodificador en un orden predefinido conocido por el codificador y por el decodificador, por ejemplo, en el orden temporal Ii , luego, I2,..., luego, IK, pudiendo este orden diferir según el modo de realización.
En relación con la Figura 4, se consideran ahora las etapas de un procedimiento de codificación según un modo de realización de la invención. Las etapas T0 a T6 son similares a las etapas E0 a E6 ya descritas en relación con la Figura 2.
Una imagen lk se corta en bloques CTU de tamaño, por ejemplo, igual a 64x64 píxeles.
En el transcurso de una etapa T0, se selecciona un bloque a procesar, denominado bloque actual c. Por ejemplo, se trata de un bloque CU (para "Coding Unit", "Unidad de codificación", en inglés), cuadrado o rectangular, de dimensiones MxN, con M y N números enteros distintos de cero, obtenido por partición de un bloque CTU (para "Coding Tree Unit", "Unidad de árbol de codificación", en inglés).
En el transcurso de una etapa TI, se procede a una etapa de predicción del bloque c. Esta operación, de acuerdo con la técnica anterior, se realiza a partir de píxeles procedentes de la imagen en trascurso de codificación (codificación intra) o que se basa en una imagen ya procesada por la operación de codificación (codificación inter). Se obtiene un bloque predicho Pr.
En el transcurso de una etapa T2, se sustrae el bloque de píxeles, píxel a píxel, al bloque predicho en el transcurso de la operación anterior. Se obtiene un bloque de píxeles residuales R.
En el transcurso de una etapa T3, se identifica para el modo de predicción considerado, el tamaño de bloque y las transformadas posibles. Se designa por transformadas posibles una pluralidad de transformadas disponibles T en memoria del codificador de forma preestablecida, con T número entero distinto de cero, por ejemplo, T es igual a 32. Por ejemplo, esta pluralidad se almacena en memoria en forma de una lista predeterminada L, ordenada o no, de transformadas. Se observará que estas transformadas pueden ser predeterminadas o adaptativas.
En el transcurso de una etapa T4, para una transformada identificada Tr¡, con i número entero distinto de cero comprendido entre 0 y T-1, se procede a la transformación de la señal residual. Se obtiene una señal residual transformada RT¡.
En T5, de forma conocida en el estado de la técnica, estos coeficientes se escanean en un orden predeterminado para constituir un vector monodimensional RQ[j], donde el índice j varía de 0 a N0-1, con N0 número de píxeles en el bloque actual c. El índice j se llama frecuencia del coeficiente RQ[j]. Convencionalmente, estos coeficientes se escanean por orden globalmente creciente o decreciente de valores de frecuencia, por ejemplo, según un recorrido en zigzag, que se conoce por el estándar de codificación de imágenes fijas JPEG. Este modo de recorrido (para "scanning", "escaneo" en inglés) también puede depender de la transformada aplicada. Como el modo de recorrido influye necesariamente en el orden final de los coeficientes transformados en el vector RQ, se considera en la continuación que una transformada identificada Tr¡ en la lista L está asociada a un modo de recorrido particular. Dicho de otro modo, a la misma transformada asociada a otro modo de recorrido se le asignará otro identificador de transformada en la lista L y, por este hecho, se considerará como una transformada distinta.
En el transcurso de una etapa T6, Ios datos transformados se cuantifican según un método de cuantificación dado, escalar o vectorial conocido por el experto en la técnica, con un parámetro de cuantificación QP que regula la precisión de la aproximación realizada en esta etapa.
En el transcurso de una etapa T7, se calcula al menos una característica de la señal residual transformada cuantificada.
En T8, se determina un dato inicial de transformada representativo de al menos una transformada asociada a la o las características calculadas. Este dato inicial DI designa ventajosamente una sublista SL de transformadas de la lista L. Comprende una o varias transformadas.
Se contemplan varios modos de realización de las etapas T7 y T8 y ahora se van a detallar.
Según un primer modo de realización de la invención, se procede a la determinación de la posición del último coeficiente distinto de cero de Ios datos cuantificados residuales. A continuación, se hace corresponder, a la característica calculada, por ejemplo, la posición del último coeficiente significativo, uno dato de identificación inicial DI de transformación. Este dato inicial de identificación permite identificar la sublista de transformadas asociadas al valor de la característica calculada o a un rango de valores que comprende el valor calculado. Ventajosamente, la sublista se almacena en memoria en una tabla. La sublista puede comprender una o varias transformadas.
Según un segundo modo de realización de la invención, se procede a la determinación de las posiciones de Ios coeficientes significativos en Ios datos cuantificados residuales. Para hacer esto, se construye una palabra que contiene un '1 ' para cada coeficiente residual significativo (es decir, diferente distinto de cero) y '0' para un coeficiente cero. Por ejemplo, a un residual compuesto por Ios valores [19, 12,-4,0,18,3,0,-1,0,0] se le asignará una palabra '111011010o'. Con la ayuda de una tabla almacenada en memoria, se determina un dato de identificación inicial DI de transformación. Para una palabra de código dada, se obtiene, de este modo, una sublista de las transformaciones más verosímiles disponibles.
Según un tercer modo de realización, se procede al cálculo de un dato característico de la suma de Ios cuadrados o de Ios valores absolutos de Ios valores cuantificados residuales. Con la ayuda de una tabla o de una relación funcional de correspondencia, a partir de este dato característico se determina un dato de identificación inicial DI de transformación. Por ejemplo, Ios residuos portadores de una energía más allá de un umbral considerado identifican una o varias transformadas.
Según un cuarto modo de realización, se procede al cálculo de un valor característico de la evolución de Ios valores absolutos o de Ios cuadrados de Ios valores cuantificados residuales. Este valor característico se puede obtener sumando las diferencias en valor absoluto de Ios valores consecutivos (absolutos o al cuadrado) o sumando un indicador de crecimiento (1 si dos valores consecutivos crecen en valor absoluto, 0 si no es así). A partir del valor característico obtenido, se obtiene con la ayuda de una tabla el dato de identificación inicial de transformación. Esta tabla indicará una o varias transformadas según el valor del indicador de crecimiento calculado.
Según un quinto modo de realización, se estima una característica de la densidad de probabilidad de Ios valores residuales cuantificados. Esta densidad de probabilidad se puede obtener por una función de la relación entre suma de Ios valores absolutos y suma de Ios cuadrados de Ios valores residuales cuantificados, como se presenta en la publicación de AES de mayo de 2005 titulada "Near Optimal, Low Complexity Arithmetic Coding for Generalized Gaussian Sources" "Codificación aritmética de baja complejidad, casi óptima para fuentes gaussianas generalizadas" por Florin Ghido. Una vez estimada la densidad de probabilidad, una tabla de correspondencia permite asociarle un dato de identificación inicial DI de transformadas. Por ejemplo, una o varias transformadas dadas estarán asociadas a una densidad de probabilidad dada.
El dato de identificación inicial DI de transformada pueden incluir, de este modo, uno o varios identificadores o índices, que apuntan cada uno a una transformada particular. Ventajosamente, estos identificadores de transformadas forman una sublista SL de la lista inicial L de transformadas disponibles para el codificador y para el decodificador.
Se obtienen tablas que permiten deducir la sublista de transformadas, por ejemplo, en una fase de aprendizaje previa al procedimiento de codificación de una imagen. Por ejemplo, se utiliza un conjunto de secuencias de pruebas para calcular estadísticas de selección por el codificador de cada una de las transformadas de la lista disponible para el codificador, en función de Ios valores de características de las señales residuales transformadas de Ios bloques de la imagen. A partir de estos resultados, la probabilidad de selección de una transformada se evalúa en función de una o varias características de la señal residual cuantificada de un bloque.
De forma convencional, se mide para cada transformada la probabilidad de una característica dada que conoce la transformada. Matemáticamente esto se expresa por la probabilidad condicional. En relación con la figura 5, se presenta, a título de ejemplo, una estimación de la probabilidad de la energía del primer coeficiente transformado para 3 transformadas distintas de tamaño 8x8. Se ha trazado la densidad de probabilidad conjunta asociada a esta energía para cada uno de Ios coeficientes de un bloque. A partir de esta estimación, por el teorema de Bayes, se puede fácilmente a partir del valor de energía, determinar la probabilidad de que se haya calculado a partir de cada transformada. De este modo, si la energía del coeficiente equivale a 9, es altamente probable que la transformada utilizada sea T2, un poco menos probable que sea la transformada TI y muy poco probable que se haya empleado la transformada T0. De este modo, al nivel del codificador, se puede, a título de ejemplo, resumir esta función de probabilidad con dos umbrales que definen tres intervalos: si la energía es inferior a 11,4, entonces T2 y TI son las más probables, si está comprendida entre 11,40 y 18,10, entonces TI es probable, si es superior a 18,10, entonces TI y TO son las transformadas más probables. Se comprende que, de esta manera, la característica calculada sobre la señal residual proporciona información sobre la probabilidad de una transformada y permite constituir una sublista de transformadas probables más corta que la lista completa de las transformadas. De este modo, según el valor de energía del bloque con respecto a Ios tres intervalos anteriores, se definen tres sublistas SL1, SL2 y SL3 que comprenden las transformadas (T2,T1), (TI), (T1,T0). La asociación de sublista, característica, intervalos que se establece en una fase previa al diseño del sistema de codificación se conoce por el codificador y decodificador.
En relación con la figura 6, se presenta un ejemplo de constitución de una sublista de transformadas a partir de la combinación de dos características distintas de la señal residual del bloque actual y de una lista L de tres transformadas. En un proceso de aprendizaje previo, se miden Ios valores de transformadas elegidas por un codificador en función de una característica de energía de la señal residual transformada y de una posición del último coeficiente significativo. Este aprendizaje se realiza sobre un gran conjunto de señales de vídeo residuales. En la figura 6, se ha representado la primera característica según un primer eje y la segunda según un segundo eje y se han colocado en el plano de estos dos ejes puntos correspondientes a un par de valores de las características de la señal residual transformada de un bloque y que representa la transformada seleccionada para este bloque. Se constata que estos puntos se pueden agrupar sumariamente en zonas gruesas, materializadas en formas de elipse.
Estas elipses engloban la mayoría de Ios puntos seleccionados para una transformada, por ejemplo, pueden englobar el 90 % de Ios puntos.
Sobre esta base, se determinan dos umbrales s1, s2 que permiten formar una sublista que comprende un elemento de transformada.
Estos umbrales determinados se conocen al final de este aprendizaje y se almacenan a la vez en el codificador y en el decodificador. De este modo, la sublista de un elemento está constituida de la siguiente forma:
- A partir de la señal residual, se calcula una característica de energía, nombrada C1 ;
- A partir de la señal residual, se determina la posición del último coeficiente significativo, nombrado C2;
- Si C1>s1 y C2>s2, entonces, la sublista contiene el elemento T0;
- Si C1>s1 y C2<s2, entonces, la sublista contiene el elemento T2;
- Si C1<s1, entonces, la sublista contiene la transformada T1.
De este modo, se puede reducir una lista de tres transformadas, con la ayuda de estos dos criterios y de dos umbrales conocidos del decodificador y del codificador, a una sublista de una sola transformada.
De forma alternativa, también se puede establecer previamente, para una transformada dada de la lista L, una puntuación en función de uno o varios valores de características de la señal residual transformada de un bloque. Esta puntuación se establece ventajosamente a partir de la estimación de densidad de probabilidad conjunta anteriormente descrita. En este caso, la etapa de determinación T7 de un dato inicial DI de transformadas asociadas a este o estos valores de características, constituye dinámicamente una sublista SL de transformadas para el bloque actual, en función de las puntuaciones establecidas.
Por ejemplo, la sublista SL está constituida por las transformadas cuyas puntuaciones establecidas para el bloque actual son superiores a un umbral predeterminado. De forma alternativa, la sublista está constituida por un número predeterminado N0-SL, número entero distinto de cero, de transformadas, correspondiente a las N0-SL transformadas que ha obtenido las puntuaciones más elevadas.
Las transformadas seleccionadas para figurar en la lista SL se ordenan ventajosamente según valores de puntuaciones decrecientes. Se comprende que es necesario que el decodificador comparta el conocimiento de estas puntuaciones con el codificador, el valor del umbral a aplicar o el número N0-SL de transformadas a seleccionar y la manera de ordenar las transformadas en la sublista. De esta manera, constituirá la misma sublista SL que el codificador.
Según otro modo de realización de la invención, el procedimiento obtiene previamente un identificador TR-V de transformada aplicada a al menos un bloque ya procesado. Los bloques ya procesados se seleccionan, por ejemplo, en función del modo de predicción del bloque actual. Pueden ser vecinos del bloque actual en la imagen en transcurso o pertenecer a otras imágenes situadas en diferentes instantes. En la imagen en transcurso, estos bloques vecinos pueden ser Ios bloques situados inmediatamente por arriba, a la izquierda o por lo alto a la izquierda del bloque actual. En relación con la figura 7, se han representado a título de ejemplo Ios bloques Ba, Bb y Bc vecinos del bloque actual C.
Para la codificación inter, se trata, por ejemplo, de Ios bloques localizados en las mismas posiciones espaciales que el bloque actual o "colocalizados", con un vector de movimiento de aproximación. Estos bloques ya procesados se retienen ventajosamente cuando comparten el mismo modo de predicción que el bloque actual. Si el bloque actual está en modo Intra, entonces, Ios bloques ya procesados retenidos serán Ios bloques más cercanos que comparten el mismo modo de predicción Intra.
Ventajosamente, se considera un número predeterminado N0-DT, con N0-DT número entero distinto de cero, de bloques ya procesados. Por ejemplo, N0-DT es igual a 3. El o Ios identificadores de transformadas de Ios bloques ya procesados de este modo obtenidos se explotan para constituir una nueva sublista SL' de transformadas privilegiadas a partir de la sublista SL ya asociada a la o las características de Ios valores de Ios coeficientes del bloque actual según uno de Ios modos de realización ya descritos.
Se consideran varias formas de constituir esta nueva sublista SL'.
La sublista inicial SL' se puede completar concatenándole Ios identificadores de las transformadas aplicadas a Ios bloques ya procesados considerados.
Se puede decidir explotar un número predeterminado de identificadores de transformadas procedentes de Ios bloques ya procesados, por ejemplo, igual a tres.
Si, en relación con la Figura 7, Ios bloques Ba, Bb, Bc ya procesados considerados comparten la misma transformada (TR-v=TR-va=tr-vb=tr-vc), entonces, se añade el identificador (TR-v) de esta transformada común a la sublista SL, sí no está ya contenido en esta lista. Por ejemplo, se puede acordar insertarlo al final de la sublista. De forma alternativa, se puede decidir insertar en la sublista SL' un número predeterminado N0-DT de transformadas procedentes de los bloques ya procesados. En este caso, se puede, por ejemplo, completar el identificador único retenido (TR-v) por los identificadores de las transformadas que le anteceden y que le suceden inmediatamente en la lista inicial L de transformadas. Se trata de los valores inmediatamente por arriba (TR-v i=TR-v+1) y por debajo (TR-V2=TR-v-1 ). Se comprende que, en este caso, se considera que la lista L de transformadas disponibles para el codificador y para el decodificador, se ordena según un criterio de proximidad o de similitud de las transformadas, de tal modo que, si la transformada número TR-v está bien adaptada a un bloque, entonces, sus vecinas TR-v-1 y TR-v+1 también lo estarán relativamente bien.
Si a los N0-DT bloques ya procesados considerados se les han aplicado transformadas distintas, se puede recurrir a un voto mayoritario e insertar en la sublista SL' el identificador de la transformada más representada en los bloques ya procesados. Para completar y alcanzar el número predeterminado de identificadores de transformadas a añadir, los valores vecinos de la transformada elegida en la lista L, TR-v1 y TR-v2 tales como se han calculado más arriba, se insertarán ventajosamente.
Una alternativa consiste en insertar los identificadores de todas las transformadas aplicadas a los bloques ya procesados considerados, por ejemplo, al final de la sublista SL según un orden de recorrido de los bloques ya procesados compartido por el codificador y el decodificador, en la medida en que no figuren ya en la lista.
Se consideran, por ejemplo, tres bloques vecinos ya procesados, a los que se han aplicado dos transformadas distintas. Se insertan, por ejemplo, en la primera y dos posiciones al final de la sublista s L Ios identificadores v0 y v1 de estas transformadas y se añade, por ejemplo, el valor v2 del identificador de la transformada, calculado a partir del bloque vecino más cercano al bloque actual (inmediatamente a la izquierda estando privilegiado con respecto a un bloque más alto o perteneciente a una imagen diferente).Según una variante, se realiza la intersección de la sublista inicial SL y de la de las transformadas aplicadas a Ios bloques vecinos ya procesados. Este cruce permite reducir el tamaño de la sublista final y, por lo tanto, la señalización de la transformada aplicada al bloque actual. Este cruce se puede realizar teniendo en cuenta las probabilidades de ocurrencia de las transformadas insertadas en las sublistas.
En T9, Ios datos cuantificados se codifican por una técnica de codificación entrópica conocida, tal como, por ejemplo, una codificación de Huffman, codificación aritmética o también codificación CABAC, tal como se utiliza en el estándar HEVC.
En el transcurso de una etapa TIO, es necesario, se codifica un dato complementario del dato inicial de identificación DI de la transformada.
En un modo de realización particular de la invención, esta etapa no se implementa. Este es el caso cuando el dato inicial de transformada no comprende más que un identificador de transformada y/o cuando se ha decidido no señalar al decodificador el hecho de haber aplicado al bloque actual una transformada diferente de la predicha. Se comprende que nos colocamos, en el presente documento, en un caso simple, donde el decodificador está dispuesto para aplicar exclusivamente la transformada identificada por el dato inicial.
Una ventaja de este modo es que es simple de implementar y que no necesita una señalización.
Para Ios otros modos de realización, según Ios que las sublistas de transformadas asociadas a algunas características del bloque actual comprenden más de un elemento o bien según Ios que se desea eventualmente señalar al decodificador el hecho de que la transformada aplicada no pertenece a la sublista predicha, se implementa bien la etapa TIO.
En TIO, por lo tanto, se comienza por verificar si la transformada aplicada Tr¡ al bloque actual pertenece a la sublista SL. Sí este es el caso y si la sublista SL comprende un solo elemento, la transformada aplicada corresponde a la transformada predicha. Ventajosamente, se señala al decodificador el hecho de que el dato inicial constituye una predicción correcta de la transformada aplicada, por ejemplo, con la ayuda de un enfoque de "marca". Este consiste en codificar de forma convencional por un código binario entrópico o directo, un dato complementario DC que indica si la transformación indicada por el dato inicial DI es la de la transformación considerada (marca=0) o no (marca=l). Si la marca se pone en el valor 1, entonces, se añade a la información complementaria un código que indica el identificador, por ejemplo, en forma de un índice, de la transformación considerada en la lista de origen L, con la ayuda de un código (entrópico o no).
Una ventaja es que, si se predice bien la transformada aplicada al bloque actual, se utilizará un solo bit para señalarla, contrariamente al estado de la técnica que transmite explícitamente el identificador de la transformada. Si la sublista SL comprende varios elementos, el dato inicial de identificación DI de transformada no es suficiente para permitir que el decodificador determine la transformada aplicada por el codificador.
Según otro modo de realización de la invención, se codifica en TIO un dato complementario DC que comprende un índice de posición POS de la transformada aplicada al bloque actual en la sublista SL, SL'. Por lo tanto, se supone que la sublista está ordenada de tal modo que el codificador y el decodificador comparten el conocimiento de las posiciones de las transformadas en la sublista,
A título de ejemplo, se considera que la sublista determinada en T8 contiene las transformaciones {1,4,7}: Si la transformada aplicada es la transformada 4, se emite el indicador de posición POS = 1, codificado en binario 'Oí'. Una ventaja es que, si se predice bien la transformada aplicada al bloque actual, no se utilizarán más que pocos bits para señalarla en el flujo binario, contrariamente al estado de la técnica que transmite explícitamente su identificador completo.
Cuando la transformada aplicada no pertenece a la sublista SL, SL', el dato complementario DC comprende un código de escape seguido de un identificador completo de la transformada aplicada. Se comprende que esta señalización es necesariamente más costosa que un índice de posición POS en la sublista. Con todo, el modo de selección de la transformada por competencia garantiza que, a pesar de este sobrecoste, la transformada aplicada sea la que aporta el mejor compromiso de velocidad de distorsión.
Si, por ejemplo, la transformada considerada es la transformada 6, que no forma parte de la sublista determinada, se emite un código de escape, por ejemplo, igual a '1 í y se adjunta un código que identifica la transformada 6 en la lista de origen L, por ejemplo, OííO que representa 6 en forma binaria. Una combinación no utilizada del código del índice de posición se puede asignar al código de escape. Por ejemplo, se puede utilizar el código OíOO que representa 4 en binario. Esto tiene como objetivo reducir la longitud del código particular y, de este modo, reducir la velocidad.
Ventajosamente, a continuación, se codifica el dato complementario DC por una técnica de codificación binaria (código de longitud fija, aritmética o de Huffman), bien conocida por el experto en la materia, para minimizar el tamaño del flujo binario a transmitir al decodificador.
En el transcurso de una etapa T í í , se procede a la evaluación, para la transformada actual Tr¡, de la distorsión, por ejemplo, según una medición de error cuadrático convencional per se, introducido por el operador de cuantificación. Ventajosamente, esta etapa de evaluación también comprende:
- una evaluación del número de bits requerido para transmitir el residuo transformado y cuantificado;
- una evaluación del número de bits necesario para la señalización del índice de la transformación a partir del resultado de la codificación TIO.
En T12, se prueba si la transformada actual Tr¡ es la última de la lista L. Si no es la última, el índice i se incrementa en í y se repiten las etapas T3 a T í í
Si la transformada Tr¡ es la última de la lista, se pasa a la etapa de selección T13 de una configuración a emitir. Por configuración se entiende el conjunto de residuo cuantificado y codificado de forma entrópica/señalización del índice de transformación por el código complementario. Para realizar esta selección, se procede de conformidad con las técnicas conocidas, a la construcción de un Lagrangiano para cada transformación que pondera la distorsión correspondiente y el conjunto de velocidad que porta el residuo/señalización complementaria. La selección conserva la transformada que presenta el Lagrangiano mínimo.
En una etapa T14, el residuo seleccionado y los datos complementarios codificados asociados a la transformación aplicada al bloque actual se insertan en un flujo binario.
El flujo binario TB se puede enviar, a continuación, con destino a un decodificador en forma de una señal
En relación con las Figuras 8A y 8B, se presentan ejemplos de señalización de transformada aplicada al bloque c según un modo de realización de la invención. En relación con la Figura 8A, se considera un primer ejemplo en el que la transformada aplicada Tr¡ al bloque c está comprendida en la sublista determinada SL, SL'. Se trata de la transformada Trí que ocupa la primera posición de la sublista determinada SL, SL' para el bloque c. Según la invención, la señalización se limita a un dato complementario DC que representa un índice de posición POS de TRí en la sublista. Por ejemplo, para esta sublista de tres elementos, este índice se puede codificar en 2 bits por el valor Oí. Por supuesto, como ya se ha aludido, también se pueden elegir códigos de longitud variable, tales como códigos de Huffman u otro codificador entrópico, conocidos por el experto en la materia.
En relación con la Figura 8B, se considera un segundo ejemplo según el que la transformada aplicada Tr¡ al bloque c no está comprendida en la sublista determinada SL, SL'. Dicho de otro modo, la predicción de la transformada no es correcta. Por ejemplo, la transformada aplicada es Tr6. En este caso, el dato complementario señalado comprende un código de escape, que toma, por ejemplo, el valor 11 seguido de un código del identificador completo de la transformada Tr6.
Como se ha descrito anteriormente, la señalización del identificador de la transformada aplicada en función de la sublista determinada SL, SL' se puede someter a una codificación de tipo entrópico con vistas a mejorar los rendimientos de compresión.
El flujo binario TB producido por el procedimiento de codificación según la invención se transmite, por ejemplo, en forma de una señal a un decodificador por mediación de una red de telecomunicación. Esta señal se recibe por un decodificador,
Se supone que el flujo binario TB se ha recibido por un dispositivo de decodificación que implementa un procedimiento de decodificación según la invención. Este procedimiento de decodificación se va a describir ahora en relación con la Figura 9.
En DO, se comienza por seleccionar como bloque actual C' el primer bloque a procesar. Por ejemplo, se trata del primer bloque (en el orden lexicográfico). Este bloque incluye MxN píxeles, con M y N números enteros distintos de cero.
Como se ha descrito para el procedimiento de codificación, el bloque C' considerado puede ser un bloque CTU o un subbloque CU obtenido por corte del bloque CTU o también un bloque o subbloque de residuo obtenido por sustracción de una predicción del bloque actual al bloque actual.
En el transcurso de una etapa DI, Ios datos codificados relativos al bloque actual C' se leen y decodifican. Los datos codificados, comprenden parámetros de codificación, tales como, por ejemplo, el modo de predicción utilizado o una señalización de un identificador de la transformada aplicada al bloque actual y Ios valores relativos a las amplitudes y a Ios signos de Ios coeficientes de residuos cuantificados del bloque actual.
Cuando el modo de predicción determinado indica que el codificador ha hecho una predicción, el bloque actual se predice en D2, según el modo de predicción determinado a partir de un bloque ya procesado. Se obtiene un bloque predicho Pr'.
En el transcurso de una etapa D3, se decodifican Ios datos leídos representativos de Ios valores cuantificados, residuales del bloque actual (valores y signos de Ios coeficientes), en forma de un vector de valores RQ'. Se comprende que se trata de la operación inversa a la de codificación entrópica anteriormente descrita en relación con el procedimiento de codificación.
En el transcurso de una etapa D4, se procede al cálculo de al menos una característica de Ios valores cuantificados decodificados. Este cálculo, realizado de conformidad con el efectuado en el codificador, toma en cuenta un criterio de cálculo basado en el residual cuantificado transmitido.
En D5, se determina una sublista SL, SL' de transformadas asociadas al o a Ios valores de características calculados.
Se consideran varios modos de realización de estas etapas D4 y D5. Corresponden a Ios ya descritos en relación con la Figura 4 para las etapas T6 y T7 del procedimiento de codificación. Son combinables entre .
• en un primer modo de realización, se procede a la determinación de la posición del último coeficiente distinto de cero de Ios datos cuantificados del bloque actual. A partir de esta posición, se hace corresponder, con la ayuda de una tabla almacenada en memoria Mi, un dato de identificación inicial DI de transformación que comprende una o varias transformadas. De forma alternativa, la característica calculada corresponde al número de coeficientes significativos. A título de ejemplo, la tabla podrá, en este caso, asociar a un número umbral de coeficientes significativos dado una o varias transformadas predeterminadas.
• en un segundo modo de realización, se procede a la determinación de las posiciones de Ios coeficientes significativos en Ios datos cuantificados del bloque actual. Para hacer esto, se construye una palabra que contiene un 'i ' para cada coeficiente significativo (es decir, diferente distinto de cero) y '0' para un coeficiente cero. Por ejemplo, a una señal compuesta por Ios valores [19,12,-4,0,18,3,0,-1,0,0] se le asignará una palabra 'i 110110100'. Con la ayuda de una tabla almacenada en memoria, se determina un dato de identificación inicial de transformación. Una palabra de código dada identifica una sublista SL de las transformadas más verosímiles disponibles.
• en un tercer modo de realización, se procede al cálculo de un dato característico de la suma de Ios cuadrados o de Ios valores absolutos de Ios valores cuantificados de Ios coeficientes. Con la ayuda de una tabla o de una relación funcional de correspondencia entre, por ejemplo, intervalos de valores de la característica y del dato inicial de identificación DI de transformadas preestablecidas, se determina a partir de este dato característico el dato de identificación inicial DI de transformación correspondiente a una sublista SL de transformadas bien adaptadas al valor de esta característica. Se observará que la característica en cuestión representa una energía portada por los coeficientes del bloque actual C'. Por ejemplo, los residuos portadores de una energía más allá de un umbral considerado identificarán una sublista SL1, mientras que aquellos cuya energía es inferior a este umbral identificarán otra SL2.
• en un cuarto modo de realización, se procede al cálculo de un valor característico de la evolución de los valores absolutos o de los cuadrados de los valores cuantificados. Este valor característico se puede obtener sumando las diferencias en valor absoluto de los valores consecutivos (absolutos o al cuadrado) o sumando un indicador de crecimiento (1 si dos valores consecutivos crecen en valor absoluto, 0 si no es así). A partir del valor característico obtenido, se obtiene con la ayuda de una tabla el dato de identificación inicial de transformación correspondiente a una sublista de transformadas bien adaptada.
• en un quinto modo de realización, se estima una característica de la densidad de probabilidad de los valores cuantificados. Esta densidad de probabilidad se puede obtener por una función de la relación entre suma de los valores absolutos y suma de los cuadrados de los valores cuantificados, como se presenta en la publicación de AES de mayo de 2005 titulada "Near Optimal, Low Complexity Arithmetic Coding for Generalized Gaussian Sources" "Codificación aritmética de baja complejidad, casi óptima para fuentes gaussianas generalizadas" por Florin Ghido. Una vez estimada la densidad de probabilidad, una tabla de correspondencia permite asociarle un dato de identificación inicial de transformada representativo de una sublista predeterminada. Por ejemplo, a un valor de densidad de probabilidad dado estará asociada una transformada dada.
Estos modos de realización aportan diferentes compromisos de precisión de identificación de la transformada/complejidad de cálculo de la identificación.
Ventajosamente, las tablas que permiten acceder a la o las transformadas de las sublistas se proporcionan al decodificador en una etapa previa.
Según otro modo de realización de la invención, la etapa de determinación D5 del dato inicial DI de transformación o sublista SL se implementa dinámicamente, de forma similar a la descrita anteriormente para el procedimiento de codificación, a partir de puntuaciones previamente asociadas a cada transformada de la lista L de transformadas disponibles para el codificador y para el decodificador para algunos valores de características de los datos residuales del bloque. Se almacenan en memoria del decodificador, por ejemplo, en una tabla que asocia una puntuación a una transformada para un valor o un rango de valores de una o varias características de la señal residual del bloque a procesar.
Según también otro modo de realización, la etapa D5 comprende, además, una inserción en la sublista SL' de un número predeterminado N0-DT de transformadas procedentes de bloques ya procesados. Entonces, se procede de forma análoga a la de la codificación, de tal modo que la sublista final SL' sea idéntica al decodificador y al codificador.
Dos casos son posibles en este momento:
Según un primer caso, las sublistas determinadas en D5 no comprenden cada una más que un solo identificador de transformada y el decodificador no espera una señalización complementaria. En el transcurso de una etapa D7, reconstruye el identificador de la transformada inversa a aplicar a partir de la sola información dada por el dato inicial determinado DI en D5.
Según un segundo caso, el decodificador está configurado para ir a buscar una señalización complementaria de la transformada a aplicar en el flujo binario. En el transcurso de una etapa D6, decodifica un dato complementario DC al dato inicial determinado DI.
La sublista determinada SL puede comprender uno o varios elementos.
Si comprende un solo elemento, el dato complementario DC indica si la predicción de la transformada es correcta, es decir, si hay que aplicar la transformada de la sublista determinada al bloque actual.
Si la sublista de transformadas para el bloque actual comprende varios elementos, el decodificador conoce el orden y el número de transformadas que comprende y la forma en que el codificador ha señalado el dato complementario en el flujo binario.
Decodifica en D6 el dato complementario DC leído en el flujo binario TB y determina si comprende un índice de posición de la transformada a aplicar en la sublista o un código de escape destinado a indicar que la transformada aplicada por el codificador no pertenece a la sublista determinada.
Si el dato complementario DC comprende un código de escape, también comprende un identificador completo de la transformada aplicada, colocado a continuación del código de escape.
Si el identificador inicial DI de transformada no está asociado más que a un solo valor, entonces, el dato complementario DC indica si la elección retenida por el identificador inicial es correcta,
Si el identificador inicial de transformada incluye varios valores, entonces, el identificador complementario indicará, de entre los valores posibles, la transformada a utilizar. El identificador podrá indicar si la elección retenida por el codificador no forma parte de los valores indicados por el identificador de transformada inicial. A este respecto, el identificador complementario incluirá un código binario (codificado en forma entrópica o no) que especifica el índice de transformada seleccionada por el codificador.
A título de ejemplo, se considera un identificador inicial de transformada que incluye los valores (1,3,9) que considera que las transformadas (1,3,9) del modo de predicción considerado son verosímiles. El identificador complementario, codificado en 2 bits, indicará por el valor '00' la transformación 1, por el valor '01' la transformación 3 y por '10' la transformación 9. Si el identificador complementario porta el valor '11', entonces, el identificador complementario se complementará por un código complementario que especificará la transformada retenida, de entre las provistas para el modo de predicción considerado, excluyendo las tres apuntadas por el identificador inicial. En D8, Ios datos del bloque actual C' se descuantifican.
En D9, se realiza una reorganización de Ios datos del vector monodimensional de residuo en el bloque actual, según un proceso inverso al recorrido del bloque actual descrito en la etapa T5 de la Figura 4.
En una etapa DIO, se aplica a Ios datos descuantificados, la transformada correspondiente al índice de transformada reconstruido en D6. Esta transformación corresponde a la transformada inversa de la realizada en el codificador. Entonces, se obtiene una señal residual r' en el campo espacial.
En una etapa D11, se reconstruye el bloque de píxeles c' de la imagen decodificada a partir del bloque obtenido r' y se le integra en la imagen ID en transcurso de decodificación. Como el bloque es un bloque de residuo, se le añade una predicción PD' del bloque actual obtenida a partir de una imagen de referencia anteriormente procesada.
En el transcurso de una etapa D12, se llega a probar si el bloque actual es el último bloque a procesar el decodificador, teniendo en cuenta el orden de recorrido definido anteriormente. Si , el procedimiento de decodificación ha terminado su procesamiento. Si no, la siguiente etapa es la etapa de selección D13 del siguiente bloque y las etapas de decodificación D1 a D12 anteriormente descritas se repiten para el siguiente bloque seleccionado.
Se observará que la invención que se acaba de describir, se puede implementar por medio de componentes de software y/o de hardware. En este contexto, Ios términos "módulo" y "entidad", utilizados en este documento, pueden corresponder ya sea a un componente de software, ya sea a un componente de hardware, ya sea también a un conjunto de componentes de hardware y/o de software, adecuados para implementar la o las funciones descritas para el módulo o la entidad en cuestión.
En relación con la figura 10, ahora se presenta un ejemplo de estructura de hardware simplificada de un dispositivo de codificación 1OO de una imagen digital según la invención. El dispositivo 1OO implementa el procedimiento de codificación según la invención que se acaba de describir en sus diferentes modos de realización, en relación con la Figura 4.
Por ejemplo, el dispositivo 1OO comprende una unidad de procesamiento 11O, equipada con un procesador |j1 y pilotada por un programa de ordenador Pg1 120, almacenado en una memoria 130 y que implementa el procedimiento de según la invención.
En la inicialización, las instrucciones de código del programa de ordenador Pg1120 se cargan, por ejemplo, en una memoria RAM antes de ejecutarse por el procesador de la unidad de procesamiento 11O. El procesador de la unidad de procesamiento 11O implementa las etapas del procedimiento descrito anteriormente, según las instrucciones del programa de ordenador 12o.
En este ejemplo de realización de la invención, el dispositivo 1OO comprende al menos una unidad PRED del bloque actual, una unidad de obtención RES de un residuo del bloque actual por sustracción de la predicción al bloque actual.
Comprende, además, una pluralidad de unidades dispuestas para implementarse varias veces para un mismo bloque, para poner en competencia la pluralidad de transformadas disponibles para el codificador. Se trata, en concreto, de una unidad de identificación de una transformada ID-TRANS a aplicar al bloque actual c a partir de una lista L de transformadas disponibles para el codificador y, por ejemplo, almacenada en forma de una tabla en una memoria, por ejemplo, la memoria 130, de una unidad de transformación TRANS de frecuencia de un bloque actual en un bloque transformado C con la ayuda de la transformada identificada, de una unidad de cuantificación CUANT del bloque transformado, de una unidad ESCAN de recorrido en un orden predeterminado para constituir un vector monodimensional RQ'[j], de una unidad de codificación COD RQ del vector monodimensional cuantificado y de una unidad de evaluación EVAL de la transformada aplicada Tri según un criterio de velocidad-distorsión. El dispositivo de codificación según la invención comprende, además, una unidad de selección SEL de la mejor transformada a partir de los resultados obtenidos por la unidad EVAL para las transformadas evaluadas. Los datos codificados a partir de la transformada seleccionada se insertan, a continuación, en el flujo binario TB.
Según la invención, el dispositivo comprende, además, una unidad de cálculo CÁLC de al menos una característica de la señal de residuo del bloque actual, una unidad de determinación DET de un dato inicial de identificación de una sublista de transformadas asociadas a la al menos una característica calculada y una unidad de verificación de la pertenencia de la transformada aplicada a la sublista determinada. Opcionalmente, el dispositivo comprende una unidad de codificación del identificador de la transformada seleccionada COD TR-ID que comprende la codificación de un dato complementario del dato inicial de identificación. Esta unidad está dispuesta para implementarse, si es necesario, al menos en función de la pertenencia de la transformada aplicada a la sublista de transformadas determinada. Por ejemplo, el dato inicial de identificación de transformadas que comprende una sublista SL de transformadas se almacena en forma de una tabla en una memoria, por ejemplo, la memoria 130 o un enlace hacia esta sublista.
Estas unidades están pilotadas por el procesador |j1 de la unidad de procesamiento 110.
De forma ventajosa, el dispositivo 100 se puede integrar en un terminal de usuario TU. Entonces, el dispositivo 100 está dispuesto para cooperar al menos con un módulo de emisión/recepción E/R de datos del terminal TU, por mediación del que el flujo binario TB o el archivo comprimido FC se transmite mediante una red de telecomunicaciones a un dispositivo de decodificación;
En relación con la Figura 11, se presenta un ejemplo de estructura de hardware simplificada de un dispositivo de decodificación según la invención. Por ejemplo, el dispositivo de decodificación 200 comprende una unidad de procesamiento 210, equipada con un procesador j 2 y pilotada por un programa de ordenador Pg2220, almacenado en una memoria 230 y que implementa el procedimiento de decodificación según la invención, que se acaba de describir en sus diferentes modos de realización, en relación con la Figura 9.
En la inicialización, las instrucciones de código del programa de ordenador Pg2220 se cargan, por ejemplo, en una memoria RAM antes de ejecutarse por el procesador de la unidad de procesamiento 210. El procesador de la unidad de procesamiento 210 implementa las etapas del procedimiento descrito anteriormente, según las instrucciones del programa de ordenador 22o.
En este ejemplo de realización de la invención, el dispositivo 200 comprende al menos una unidad de lectura GET de datos codificados en el flujo binario para el bloque actual, que comprende los parámetros de codificación y los valores de los coeficientes de residuos cuantificados, una unidad de decodificación DEC RES de los coeficientes del bloque actual transformado cuantificado a partir de los datos obtenidos, una unidad de descuantificación DESc UANT de los coeficientes decodificados, una unidad de reorganización ESCAN-1 de los datos del vector monodimensional de residuo en el bloque actual, una unidad de transformación inversa TRANS-1 del bloque de residuo actual transformado, una unidad de reconstrucción RECONST del bloque actual a partir del residuo y de la predicción del bloque.
Ventajosamente, el dispositivo comprende una unidad de cálculo CÁLC de al menos una característica de la señal de residuo cuantificada del bloque actual y una unidad de determinación DET de un dato inicial de identificación DI de una sublista de al menos una transformada asociada a dicha al menos una característica calculada. Por ejemplo, un dato inicial de identificación de transformadas comprende una sublista SL de transformadas, que se almacena en forma de una tabla en una memoria, por ejemplo, la memoria 230 o bien comprende un enlace hacia una memoria esta sublista.
Estas dos unidades son similares a la de un dispositivo de codificación según la invención. El dispositivo de decodificación 200 según la invención comprende, además, una unidad de reconstrucción de un identificador de la transformada aplicada REC TR-ID al bloque actual, al menos a partir del dato inicial DI. Según un modo de realización de la invención, el dispositivo 2o0 comprende, además, una unidad de decodificación DEC DC de un dato complementario CD leído en el flujo binario. Este dato complementario se explota por la unidad de reconstrucción para determinar el identificador de la transformada inversa REC TR-ID a aplicar al bloque actual a partir del conocimiento de la sublista de transformadas, como se ha descrito anteriormente en relación con la Figura 9.
Estas unidades están pilotadas por el procesador j2 de la unidad de procesamiento 210.
De forma ventajosa, el dispositivo 200 se puede integrar en un terminal de usuario TU'. El dispositivo 200 está, entonces, dispuesto para cooperar al menos con el siguiente módulo del terminal TU':
- Un módulo de emisión/recepción E/R de datos, por mediación del que se recibe el flujo binario TB o el archivo comprimido FC de una red de telecomunicaciones;
- Un dispositivo de reproducción DISP de imágenes, por ejemplo, una pantalla de terminal, por mediación del que se reproduce a un usuario la imagen digital decodificada o la sucesión de imágenes decodificadas.
De forma ventajosa, un terminal de usuario TU, TU' puede integrar a la vez un dispositivo de codificación 100 y un dispositivo de decodificación 200 según la invención.
No hace falta decir que los modos de realización que se han descrito más arriba se han dado a título puramente indicativo y de ninguna manera limitativo. La invención se define por las reivindicaciones adjuntas.

Claims (14)

REIVINDICACIONES
1. Procedimiento de codificación de una imagen digital, dividiéndose dicha imagen (lk) en una pluralidad de bloques de píxeles procesados en un orden definido, comprendiendo dicho procedimiento las siguientes etapas, implementadas para un bloque actual, de dimensiones predeterminadas:
- predicción (TI) de los valores del bloque actual a partir de al menos un bloque anteriormente procesado según un modo de predicción elegido de entre una pluralidad de modos predeterminados,
- cálculo (T2) de un bloque de residuo (R) por sustracción de los valores predichos a los valores originales del bloque actual,
- obtención (T3) de un bloque de residuo transformado (RT) por aplicación de una transformada a píxeles del bloque de residuo, comprendiendo dicho bloque de residuo transformado coeficientes, perteneciendo la transformada a una lista predeterminada (L) de transformadas disponibles; y
- codificación (T9) del bloque de residuo transformado;
caracterizado por que el procedimiento comprende una etapa de cálculo (T7) de al menos una característica representativa de al menos un valor de coeficiente del bloque de residuo transformado, una etapa de determinación (T8), a partir de dicha al menos una característica calculada, de un dato inicial de identificación (DI) representativo de una sublista predeterminada (SL), comprendiendo la sublista (SL) al menos una transformada de la lista (L) de transformadas disponibles, perteneciendo dicha al menos una característica representativa de al menos un valor de coeficiente del bloque de residuo transformado al grupo que comprende al menos uno de los siguientes elementos: - una posición del último coeficiente de residuo cuantificado significativo;
- una lista de las posiciones de los coeficientes de residuos significativos;
- un valor representativo de una evolución de los cuadrados de los coeficientes de residuos cuantificados;
- un valor representativo de una evolución de los valores absolutos de los coeficientes de residuos cuantificados; - un valor representativo de una densidad de probabilidad de los coeficientes de residuos cuantificados y una etapa de verificación de una pertenencia de la transformada aplicada al bloque actual a la sublista identificada por el dato inicial.
2. Procedimiento de codificación de una imagen digital según la reivindicación 1, caracterizado por que comprende una etapa de codificación de un dato complementario (DC) del dato inicial de identificación (DI) de transformadas.
3. Procedimiento de codificación de una imagen digital según la reivindicación 2, caracterizado por que, cuando la transformada aplicada pertenece a la sublista determinada y la sublista comprende un número de transformadas superior o igual a dos, el dato complementario (DC) comprende un índice de posición (POS) de la transformada en la sublista determinada (SL, SL').
4. Procedimiento de codificación de una imagen digital según la reivindicación 2, caracterizado por que, cuando la transformada aplicada no pertenece a la sublista determinada, el índice de posición toma un valor de escape (ESC) y el dato complementario (DC) comprende, además, un identificador de la transformada aplicada (TR-ID).
5. Procedimiento de codificación de una imagen digital según una de las reivindicaciones anteriores, caracterizado por que la etapa de determinación (T7) comprende la lectura en una memoria del dato inicial de identificación determinado, estando dicho dato asociado a dicha al menos una característica de al menos un valor de coeficiente del bloque de residuo transformado.
6. Procedimiento de codificación de una imagen digital según una de las reivindicaciones anteriores, caracterizado por que, habiéndose asignado previamente una puntuación a una transformada para al menos una característica de al menos un valor de coeficiente del bloque de residuo transformado, la etapa de determinación de un dato inicial constituye la sublista (SL) a partir de las transformadas de la lista (L) cuya puntuación es superior a un umbral predeterminado.
7. Procedimiento de codificación de una imagen digital según una de las reivindicaciones anteriores, caracterizado por que la etapa de determinación del dato inicial de identificación inserta en la sublista (SL') la transformada aplicada a al menos un bloque ya procesado.
8. Dispositivo de codificación (100) de una imagen digital, dividiéndose dicha imagen (lk) en una pluralidad de bloques de píxeles procesados en un orden definido, comprendiendo dicho dispositivo las siguientes unidades, adecuadas para implementarse para un bloque actual (c), de dimensiones predeterminadas:
- una unidad de predicción (PRED) de los valores del bloque actual a partir de al menos un bloque anteriormente procesado según un modo de predicción elegido de entre una pluralidad de modos predeterminados,
- una unidad de cálculo (RES) de un bloque de residuo (R) por sustracción de los valores predichos a los valores originales del bloque actual,
- una unidad de obtención (TRANS) de un bloque de residuo transformado (RT) por aplicación de una transformada a píxeles del bloque de residuo, comprendiendo dicho bloque de residuo transformado coeficientes, perteneciendo la transformada a una lista (L) de transformadas predeterminadas disponibles; y
- codificación (COD RQ) del bloque de residuo transformado;
caracterizado por que el dispositivo comprende, además, una unidad de cálculo (CÁLC) de al menos una característica representativa de al menos un valor de coeficiente del bloque de residuo transformado y una unidad de determinación (DeT), a partir de dicha al menos una característica calculada, de un dato inicial de identificación (DI) representativo de una sublista predeterminada (SL), comprendiendo la sublista (SL) al menos una transformada de la lista (L) de transformadas disponibles, perteneciendo dicha al menos una característica representativa de al menos un valor de coeficiente del bloque de residuo transformado al grupo que comprende al menos uno de los siguientes elementos:
- una posición del último coeficiente de residuo cuantificado significativo;
- una lista de las posiciones de los coeficientes de residuos significativos;
- un valor representativo de una evolución de los cuadrados de los coeficientes de residuos cuantificados;
- un valor representativo de una evolución de los valores absolutos de los coeficientes de residuos cuantificados; - un valor representativo de una densidad de probabilidad de los coeficientes de residuos cuantificados, y por que comprende una unidad de verificación de una pertenencia de la transformada aplicada al bloque actual a la sublista identificada por el dato inicial.
9. Procedimiento de decodificación de una imagen digital a partir de un flujo binario que comprende datos codificados representativos de dicha imagen, dividiéndose dicha imagen (Ik) en una pluralidad de bloques procesados en un orden definido, comprendiendo dicho procedimiento las siguientes etapas, implementadas para un bloque (C'), denominado bloque actual:
- predicción (D2) del bloque actual a partir de al menos un bloque anteriormente procesado;
- decodificación (D3) de valores codificados de coeficientes de un bloque de residuo transformado extraídos del flujo binario (TB);
- obtención (D9) un bloque de residuo por aplicación al bloque de residuo transformado de una transformada inversa identificada de entre una lista predeterminada de transformadas inversas;
- reconstrucción (DIO) del bloque decodificado a partir del bloque de residuo y de la predicción del bloque actual; estando dicho procedimiento caracterizado por que comprende una etapa de cálculo (D4) de al menos una característica representativa de al menos un valor de coeficiente del bloque de residuo transformado, una etapa de determinación (D5), a partir de dicha al menos una característica calculada, de un dato inicial de identificación (DI) representativo de una sublista predeterminada (SL), comprendiendo la sublista (SL) al menos una transformada de la lista (L) de transformadas disponibles, perteneciendo dicha al menos una característica representativa de al menos un valor de coeficiente del bloque de residuo transformado al grupo que comprende al menos uno de los siguientes elementos:
- una posición del último coeficiente de residuo cuantificado significativo;
- una lista de las posiciones de los coeficientes de residuos significativos;
- una suma de los cuadrados de los coeficientes de residuos cuantificados;
- una suma de los valores absolutos de los coeficientes de residuos cuantificados;
- un valor representativo de una evolución de los cuadrados de los coeficientes de residuos cuantificados;
- un valor representativo de una evolución de los valores absolutos de los coeficientes de residuos cuantificados; - un valor representativo de una densidad de probabilidad de los coeficientes de residuos cuantificados, y una etapa de reconstrucción (DIO) de un identificador de la transformada inversa a aplicar al bloque de residuo transformado al menos a partir del dato inicial determinado.
10. Procedimiento de decodificación de una imagen digital según la reivindicación 9, caracterizado por que comprende, además, una etapa de decodificación de un dato complementario del dato inicial y por que la etapa de reconstrucción del identificador de la transformada inversa a aplicar tiene en cuenta dicho dato complementario.
11. Dispositivo de decodificación (2OO) de una imagen digital a partir de un flujo binario que comprende datos codificados representativos de dicha imagen, dividiéndose dicha imagen en una pluralidad de bloques procesados en un orden definido, comprendiendo dicho dispositivo las siguientes unidades, implementadas para un bloque, denominado bloque actual:
- una unidad de predicción (PRED') del bloque actual a partir de al menos un bloque anteriormente procesado; - una unidad de decodificación (DEC RES) de valores codificados de coeficientes de un bloque de residuo transformado extraídos del flujo binario (TB);
- una unidad de obtención (t Ra NS-1 ) de un bloque de residuo por aplicación al bloque de residuo transformado de una transformada inversa, perteneciendo dicha transformada inversa a una lista de transformadas inversas predeterminadas;
- una unidad de reconstrucción (RECONST) del bloque decodificado a partir del bloque de residuo y de la predicción del bloque actual;
estando dicho dispositivo caracterizado por que comprende una unidad de cálculo (CÁLC) de al menos una característica representativa de al menos un valor de coeficiente del bloque de residuo transformado, una unidad de determinación (DeT), a partir de dicha al menos una característica calculada, de un dato inicial de identificación (DI) representativo de una sublista predeterminada (SL), comprendiendo la sublista (SL) al menos una transformada de la lista (L) de transformadas disponibles, perteneciendo dicha al menos una característica representativa de al menos un valor de coeficiente del bloque de residuo transformado al grupo que comprende al menos uno de los siguientes elementos:
- una posición del último coeficiente de residuo cuantificado significativo;
- una lista de las posiciones de los coeficientes de residuos significativos;
- una suma de los cuadrados de los coeficientes de residuos cuantificados;
- una suma de los valores absolutos de los coeficientes de residuos cuantificados;
- un valor representativo de una evolución de los cuadrados de los coeficientes de residuos cuantificados;
- un valor representativo de una evolución de los valores absolutos de los coeficientes de residuos cuantificados; - un valor representativo de una densidad de probabilidad de los coeficientes de residuos cuantificados y por que comprende una unidad de reconstrucción de un identificador de la transformada inversa (REC TR-ID) a aplicar al bloque de residuo transformado al menos a partir del dato inicial determinado.
12. Terminal de usuario (TU) caracterizado por que comprende un dispositivo de codificación de una imagen digital según la reivindicación 8 y un dispositivo de decodificación de una imagen digital según la reivindicación 11.
13. Programa de ordenador que comprende instrucciones para la implementación del procedimiento de codificación de una imagen digital según una de las reivindicaciones 1 a 7, cuando se ejecuta por un procesador.
14. Programa de ordenador que comprende instrucciones para la implementación del procedimiento de decodificación de una imagen digital según una de las reivindicaciones 9 y 10, cuando se ejecuta por un procesador.
ES16741084T 2015-06-29 2016-06-16 Procedimiento de codificación de una imagen digital, procedimiento de decodificación, dispositivos y programas de ordenadores asociados Active ES2930636T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1556016A FR3038196A1 (fr) 2015-06-29 2015-06-29 Procede de codage d'une image numerique, procede de decodage, dispositifs et programmes d'ordinateurs associes
PCT/FR2016/051456 WO2017001741A1 (fr) 2015-06-29 2016-06-16 Procédé de codage d'une image numérique, procédé de décodage, dispositifs, et programmes d'ordinateurs associés

Publications (1)

Publication Number Publication Date
ES2930636T3 true ES2930636T3 (es) 2022-12-20

Family

ID=55178029

Family Applications (1)

Application Number Title Priority Date Filing Date
ES16741084T Active ES2930636T3 (es) 2015-06-29 2016-06-16 Procedimiento de codificación de una imagen digital, procedimiento de decodificación, dispositivos y programas de ordenadores asociados

Country Status (9)

Country Link
US (2) US10924737B2 (es)
EP (2) EP3314897B1 (es)
JP (2) JP6873930B2 (es)
KR (1) KR102684586B1 (es)
CN (2) CN112804529B (es)
ES (1) ES2930636T3 (es)
FR (1) FR3038196A1 (es)
PL (1) PL3314897T3 (es)
WO (1) WO2017001741A1 (es)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3407607A1 (en) * 2017-05-24 2018-11-28 Thomson Licensing Method and device for encoding and reconstructing a point cloud
CN112106373A (zh) * 2018-03-28 2020-12-18 韩国电子通信研究院 用于图像编/解码的方法和装置及存储比特流的记录介质
BR112021005238A2 (pt) * 2018-09-20 2021-06-15 Nokia Technologies Oy um método e um aparelho para codificação e decodificação de material de imagem/vídeo digital
FR3086485A1 (fr) * 2018-09-21 2020-03-27 Orange Procedes et dispositifs de codage et de decodage d'un flux de donnees representatif d'au moins une image.
CN110072113B (zh) * 2019-05-17 2023-03-10 华侨大学 一种基于贝叶斯决策的3d-hevc深度图帧间快速算法
CN114079772B (zh) * 2020-08-21 2023-04-07 腾讯科技(深圳)有限公司 视频解码方法、装置、计算机可读介质及电子设备
US11683490B2 (en) * 2020-09-10 2023-06-20 Tencent America LLC Context adaptive transform set
CN112543337B (zh) * 2020-09-27 2023-05-02 腾讯科技(深圳)有限公司 视频解码方法、装置、计算机可读介质及电子设备
CN113592966B (zh) * 2021-08-04 2024-04-30 上海哔哩哔哩科技有限公司 图像处理方法及装置、电子设备和存储介质
US11856227B2 (en) * 2022-05-26 2023-12-26 Mediatek Inc. Transform architecture in video encoding systems

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3887178B2 (ja) * 2001-04-09 2007-02-28 株式会社エヌ・ティ・ティ・ドコモ 信号符号化方法及び装置並びに復号方法及び装置
BR122019021946B1 (pt) * 2007-06-29 2024-02-06 Velos Media International Limited Dispositivo de codificação de imagem para codificar imagens de entrada e dispositivo de decodificação de imagem para decodificar dados de imagens codificados
JP5215165B2 (ja) * 2008-12-24 2013-06-19 株式会社情報システム総合研究所 画像圧縮装置、および画像圧縮方法
JP2012516626A (ja) * 2009-01-27 2012-07-19 トムソン ライセンシング ビデオ符号化およびビデオ復号における変換の選択のための方法および装置
WO2010116869A1 (ja) * 2009-04-08 2010-10-14 シャープ株式会社 動画像符号化装置および動画像復号装置
US8451903B2 (en) * 2009-05-14 2013-05-28 Massachusetts Institute Of Technology Selecting transforms for compressing visual data
CN102045560B (zh) * 2009-10-23 2013-08-07 华为技术有限公司 一种视频编解码方法及设备
KR20110071231A (ko) * 2009-12-21 2011-06-29 엠텍비젼 주식회사 부호화 방법, 복호화 방법 및 장치
US10142630B2 (en) * 2010-12-10 2018-11-27 Texas Instruments Incorporated Mode adaptive intra prediction smoothing in video coding
US10499059B2 (en) * 2011-03-08 2019-12-03 Velos Media, Llc Coding of transform coefficients for video coding
KR101943049B1 (ko) * 2011-06-30 2019-01-29 에스케이텔레콤 주식회사 영상 부호화/복호화 방법 및 장치
CN103096053B (zh) * 2011-11-04 2015-10-07 华为技术有限公司 一种变换模式的编解码方法和装置
AU2012200319B2 (en) * 2012-01-19 2015-11-26 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding the significance map for residual coefficients of a transform unit
FR3014278A1 (fr) * 2013-11-29 2015-06-05 Orange Procede de codage et de decodage d'images, dispositif de codage et de decodage d'images et programmes d'ordinateur correspondants
US9602826B2 (en) * 2014-06-27 2017-03-21 Massachusetts Institute Of Technology Managing transforms for compressing and decompressing visual data
US10306229B2 (en) * 2015-01-26 2019-05-28 Qualcomm Incorporated Enhanced multiple transforms for prediction residual
KR101534033B1 (ko) * 2015-03-02 2015-07-10 에스케이텔레콤 주식회사 주파수 마스크 테이블을 이용한 주파수변환 블록 부호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치

Also Published As

Publication number Publication date
JP2018524923A (ja) 2018-08-30
CN112804529A (zh) 2021-05-14
US11451777B2 (en) 2022-09-20
JP2021114786A (ja) 2021-08-05
JP6873930B2 (ja) 2021-05-19
CN107710763A (zh) 2018-02-16
JP7110441B2 (ja) 2022-08-01
CN112804529B (zh) 2024-02-23
KR102684586B1 (ko) 2024-07-12
US10924737B2 (en) 2021-02-16
US20210136382A1 (en) 2021-05-06
WO2017001741A1 (fr) 2017-01-05
KR20180021879A (ko) 2018-03-05
PL3314897T3 (pl) 2023-01-16
EP4102840A1 (fr) 2022-12-14
CN107710763B (zh) 2021-02-02
EP3314897B1 (fr) 2022-09-07
EP3314897A1 (fr) 2018-05-02
US20180199037A1 (en) 2018-07-12
FR3038196A1 (fr) 2016-12-30

Similar Documents

Publication Publication Date Title
ES2930636T3 (es) Procedimiento de codificación de una imagen digital, procedimiento de decodificación, dispositivos y programas de ordenadores asociados
KR102517346B1 (ko) 변환 계수의 엔트로피 부호화/복호화 방법 및 장치
RU2761510C1 (ru) Кодирование коэффициентов преобразования
EP3514969B1 (en) Methods and devices using direct coding in point cloud compression
ES2816059T3 (es) Procedimiento y aparato para la codificación de vídeo, correspondiente procedimiento para la decodificación de vídeo, vídeo acompañado de decodificación aritmética y señalización de coeficiente significativo en dos dimensiones
JP6438986B2 (ja) 変換係数ブロック復号装置および方法、ならびに変換係数ブロック符号化装置および方法
ES3047693T3 (en) Video coding using mapped transforms and scanning modes
ES2811038T3 (es) Procedimiento y aparato para codificar vídeo y aparato para decodificar vídeo considerando un orden de omisión y de división
CN104796712B (zh) 视频的解码方法
CN110213580B (zh) 编码器和解码器
ES2710807A2 (es) Metodo y aparato para procesar senales de video
CN104429067A (zh) 通过预测当前块的划分进行视频编码的方法、解码方法、编码和解码装置及其相应的计算机程序
RU2776254C1 (ru) Кодирование коэффициентов преобразования
RU2827975C2 (ru) Кодирование коэффициентов преобразования
CN113316937A (zh) 处理视频信号的方法和设备
HK40013779B (en) Encoder and decoder