ES2828048T3 - Procedimiento de codificación y procedimiento de decodificación - Google Patents

Procedimiento de codificación y procedimiento de decodificación Download PDF

Info

Publication number
ES2828048T3
ES2828048T3 ES17159161T ES17159161T ES2828048T3 ES 2828048 T3 ES2828048 T3 ES 2828048T3 ES 17159161 T ES17159161 T ES 17159161T ES 17159161 T ES17159161 T ES 17159161T ES 2828048 T3 ES2828048 T3 ES 2828048T3
Authority
ES
Spain
Prior art keywords
weighting factor
chroma
value
luma
denominator
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
ES17159161T
Other languages
English (en)
Inventor
Akiyuki Tanizawa
Takeshi Chujoh
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Application granted granted Critical
Publication of ES2828048T3 publication Critical patent/ES2828048T3/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/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using 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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods 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 pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/186Methods 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 colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • H04N19/45Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder performing compensation of the inverse transform mismatch, e.g. Inverse Discrete Cosine Transform [IDCT] mismatch
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Color Television Systems (AREA)
  • Error Detection And Correction (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)

Abstract

Un aparato (800) electrónico, que comprende un módulo (801) decodificador configurado para: decodificar un denominador para un factor de ponderación de luma de una imagen objetivo a partir de datos codificados que comprenden una secuencia de bits de vídeo codificado usando predicción ponderada, en el que el denominador para el factor de ponderación de luma representa precisión de punto fijo del factor de ponderación de luma; decodificar un primer valor de diferencia que es igual a un valor de una diferencia entre un denominador para un factor de ponderación de croma de la imagen objetivo a partir de los datos codificados y el denominador para el factor de ponderación de luma, en el que el denominador para el factor de ponderación de croma representa precisión de punto fijo del factor de ponderación de croma; derivar el denominador para el factor de ponderación de croma añadiendo el denominador para el factor de ponderación de luma y el primer valor de diferencia; derivar un primer valor de referencia del factor de ponderación de luma de acuerdo con el denominador para el factor de ponderación de luma, en el que el primer valor de referencia es igual a un valor obtenido mediante el desplazamiento a la izquierda de "1" en al menos un dígito binario especificado por el denominador para el factor de ponderación de luma; decodificar un valor de diferencia del factor de ponderación de luma a partir de los datos codificados, en el que el valor de diferencia del factor de ponderación de luma es igual a un valor de una diferencia entre el factor de ponderación de luma y el primer valor de referencia; derivar el factor de ponderación de luma añadiendo el primer valor de referencia y el valor de diferencia del factor de ponderación de luma; derivar un valor de referencia del factor de ponderación de croma de acuerdo con el denominador para el factor de ponderación de croma, en el que el valor de referencia del factor de ponderación de croma es igual a un valor obtenido mediante el desplazamiento a la izquierda de "1" en al menos un dígito binario especificado por el denominador para el factor de ponderación de croma; decodificar un valor de diferencia del factor de ponderación de croma a partir de los datos codificados, en el que el valor de diferencia del factor de ponderación de croma es igual a un valor de una diferencia entre el factor de ponderación de croma y el valor de referencia del factor de ponderación de croma; y derivar el factor de ponderación de croma añadiendo el valor de referencia del factor de ponderación de croma y el valor de diferencia del factor de ponderación de croma.

Description

DESCRIPCIÓN
Procedimiento de codificación y procedimiento de decodificación
Campo
Una realización de la presente invención se refiere a un procedimiento de codificación y un procedimiento de decodificación.
Antecedentes
En los últimos años, se recomienda un procedimiento de codificación de una imagen con eficacia de codificación notablemente mejorada como ITU-T REC. H.264 e ISO/IEC 14496-10 (en lo sucesivo, denominados como "H.264") en cooperación con ITU-T (Sector de Normalización de Telecomunicaciones de la Unión Internacional de Telecomunicaciones) e ISO (Organización Internacional para la Normalización)/IEC (Comisión Internacional Electrotécnica).
En H.264, se desvela un sistema de codificación de inter-predicción en el que se elimina redundancia en la dirección de tiempo para conseguir eficacia de codificación alta haciendo una predicción de compensación de movimiento de precisión fraccional usando una imagen codificada como una imagen de referencia.
Además, se propone un sistema en el que se codifica una imagen en movimiento que incluye un efecto de desvanecimiento o disolución con eficacia más alta que la de un sistema de codificación de inter-predicción de acuerdo con ISO/IEC MPEG (Grupo de Expertos de Imágenes en Movimiento)-1,2, 4. En este sistema, se hace una predicción de compensación de movimiento de precisión fraccional para una imagen de movimiento introducida que tiene luminancia y dos diferencias de color como fotogramas para predecir un cambio en el brillo en la dirección de tiempo. A continuación, usando un índice que representa una combinación de una imagen de referencia, un factor de ponderación para cada luminancia y dos diferencias de color, y una compensación para cada luminancia y dos diferencias de color, una imagen prevista se multiplica por el factor de ponderación, y la compensación se añade a la misma.
Lista de citas
Referencia de patente
Referencia de patente 1: Publicación de Patente Japonesa Abierta a Inspección Pública n.° 2004-7377
El documento EP 2375 754 se refiere a un codificador de vídeo y decodificador para codificar y decodificar de manera predictiva datos de vídeo. En una realización, se asigna un vector de movimiento a cada segmento de un macrobloque y un único conjunto de parámetros de ponderación para todos los segmentos del macrobloque. En una realización alternativa, un macrobloque se divide en un primer conjunto de segmentos y se asigna un vector de movimiento a cada segmento, el macrobloque se divide en un segundo conjunto de segmentos y se asigna un parámetro de ponderación a cada segmento en el que el primer conjunto de segmentos es diferente del segundo conjunto de segmentos.
Sumario
Problema técnico
Sin embargo, en la tecnología convencional como se ha descrito anteriormente, puesto que el índice se codifica manteniéndose como valores directos, se reduce la eficacia de codificación. Un objeto a resolverse por la presente invención es proporcionar un procedimiento de codificación y un procedimiento de decodificación que pueden mejorar la eficacia de codificación.
Solución al problema
En una realización, se proporciona un aparato electrónico como se indica en la reivindicación 1. En una realización adicional, se proporciona un procedimiento de decodificación como se proporciona en la reivindicación 9.
Breve descripción de los dibujos
La Figura 1 es un diagrama de bloques que ilustra un ejemplo de un dispositivo de codificación de acuerdo con una primera realización.
La Figura 2 es un diagrama explicativo que ilustra un ejemplo de una secuencia de codificación prevista para un bloque de píxeles de acuerdo con la primera realización.
La Figura 3a es un diagrama que ilustra un ejemplo del tamaño de bloque de un bloque de árbol de codificación de acuerdo con la primera realización.
La Figura 3B es un diagrama que ilustra un ejemplo específico del bloque de árbol de codificación de acuerdo con la primera realización.
La Figura 3C es un diagrama que ilustra un ejemplo específico del bloque de árbol de codificación de acuerdo con la primera realización.
La Figura 3D es un diagrama que ilustra un ejemplo específico del bloque de árbol de codificación de acuerdo con la primera realización.
La Figura 4 es un diagrama de bloques que ilustra un ejemplo de una unidad de generación de imagen prevista de acuerdo con la primera realización.
La Figura 5 es un diagrama que ilustra un ejemplo de la relación entre vectores de movimiento para una predicción de movimiento compensado en una predicción bidireccional de acuerdo con la primera realización.
La Figura 6 es un diagrama de bloques que ilustra un ejemplo de una unidad de compensación de movimiento de múltiples fotogramas de acuerdo con la primera realización.
La Figura 7 es un diagrama explicativo que ilustra un ejemplo de precisión de punto fijo de un factor de ponderación de acuerdo con la primera realización.
La Figura 8A es un diagrama que ilustra un ejemplo de información de parámetro de WP de acuerdo con la primera realización.
La Figura 8B es un diagrama que ilustra un ejemplo de la información de parámetro de WP de acuerdo con la primera realización.
La Figura 9 es un diagrama que ilustra un ejemplo de sintaxis de acuerdo con la primera realización.
La Figura 10 es un diagrama que ilustra un ejemplo de una sintaxis de conjunto de parámetros de instantánea de acuerdo con la primera realización.
La Figura 11 es un diagrama que ilustra un ejemplo de una sintaxis de encabezamiento de corte de acuerdo con la primera realización.
La Figura 12 es un diagrama que ilustra un ejemplo de una sintaxis de tabla de pesos de predicción de acuerdo con la primera realización.
La Figura 13 es un diagrama que ilustra un ejemplo de una configuración de sintaxis que representa explícitamente un procedimiento de predicción de acuerdo con la primera realización.
La Figura 14 es un diagrama de flujo que ilustra un ejemplo del procedimiento de predicción de precisión de punto fijo de acuerdo con la primera realización.
La Figura 15 es un diagrama de flujo que ilustra un ejemplo del procedimiento de restauración de precisión de punto fijo de acuerdo con la primera realización.
La Figura 16 es un diagrama de flujo que ilustra un ejemplo de un procedimiento de predicción de factor de ponderación de acuerdo con la primera realización.
La Figura 17 es un diagrama de flujo que ilustra un ejemplo de un procedimiento de restauración de factor de ponderación de acuerdo con la primera realización.
La Figura 18 es un diagrama de flujo que ilustra otro ejemplo de un procedimiento de predicción de factor de ponderación de acuerdo con la primera realización.
La Figura 19 es un diagrama de flujo que ilustra otro ejemplo de un procedimiento de restauración de factor de ponderación de acuerdo con la primera realización.
La Figura 20 es un diagrama de flujo que ilustra un ejemplo de un procedimiento de predicción de una señal de diferencia de color de acuerdo con la primera realización.
La Figura 21 es un diagrama de flujo que ilustra un ejemplo de un procedimiento de restauración de una señal de diferencia de color de acuerdo con la primera realización.
La Figura 22 es un diagrama de flujo que ilustra otro ejemplo de un procedimiento de predicción de un factor de ponderación de acuerdo con la primera realización.
La Figura 23 es un diagrama de flujo que ilustra otro ejemplo del procedimiento de restauración de un factor de ponderación de acuerdo con la primera realización.
La Figura 24 es un diagrama de bloques que ilustra un ejemplo de la configuración de un dispositivo de decodificación de acuerdo con una segunda realización.
Descripción de realizaciones
En lo sucesivo, se describirán realizaciones en detalle con referencia a los dibujos adjuntos. Un dispositivo de codificación y un dispositivo de decodificación de acuerdo con cada realización presentada a continuación pueden implementarse por hardware tal como un chip de LSI (Integración a Gran Escala), un DSP (Procesador de Señales Digitales), o un FPGA (Campo de Matriz de Puertas Programables). Además, un dispositivo de codificación y un dispositivo de decodificación de acuerdo con cada realización presentada a continuación pueden implementarse haciendo que un ordenador ejecute un programa, en otras palabras, por software. En la descripción presentada a continuación, un término "imagen" puede sustituirse de manera apropiada por un término tal como un "vídeo", un "píxel", una "señal de imagen", una "instantánea" o "datos de imagen".
Primera realización
En una primera realización, se describirán un dispositivo de codificación que codifica una imagen en movimiento.
La Figura 1 es un diagrama de bloques que ilustra un ejemplo de la configuración de un dispositivo 100 de codificación de acuerdo con una primera realización.
El dispositivo 100 de codificación divide cada fotograma o cada campo que configura una imagen de entrada en una pluralidad de bloques de píxeles y realiza codificación prevista de los bloques de píxeles divididos usando parámetros de codificación introducidos de una unidad 111 de control de codificación, generando de esta manera una imagen prevista. A continuación, el dispositivo 100 de codificación genera un error de predicción restando la imagen prevista de la imagen de entrada dividida en la pluralidad de píxeles, genera datos codificados realizando transformación ortogonal, y cuantificación, y a continuación codificación por entropía para el error de predicción generado, y emite los datos codificados generados.
El dispositivo 100 de codificación realiza codificación prevista aplicando de manera selectiva una pluralidad de modos de predicción que son diferentes entre sí en al menos uno del tamaño de bloque del bloque de píxeles y el procedimiento de generación de una imagen prevista. El procedimiento de generación de una imagen prevista puede dividirse de manera amplia en dos tipos que incluyen una inter-predicción en la que se realiza una predicción en un fotograma objetivo de codificación y una inter-predicción en la que se realiza una predicción de movimiento compensado usando uno o más fotogramas de referencia de diferentes puntos de tiempo. La intra-predicción también se denomina una predicción de pantalla interna, una predicción de fotograma interno o similares, y la inter-predicción se denomina también una predicción inter-pantalla, una predicción inter-fotograma, una predicción de movimiento compensado o similares.
La Figura 2 es un diagrama explicativo que ilustra un ejemplo de una secuencia de codificación prevista para un bloque de píxeles de acuerdo con la primera realización. En el ejemplo ilustrado en la Figura 2, el dispositivo 100 de codificación realiza codificación prevista del lado izquierdo superior hacia el lado derecho inferior en el bloque de píxeles. Por lo tanto, en un fotograma objetivo del procedimiento de codificación f, en el lado izquierdo y el lado superior del bloque de píxeles objetivo de codificación c, se ubican los bloques de píxeles p que se han completado para codificarse. En lo sucesivo, para la simplificación de la descripción, aunque se supone que el dispositivo 100 de codificación realiza codificación prevista en el orden ilustrado en la Figura 2, el orden en la codificación prevista no está limitado a lo mismo.
El bloque de píxeles representa una unidad para procesar una imagen y, por ejemplo, un bloque que tiene un tamaño de M x N (en este punto, M y N son números naturales), un bloque de árbol de codificación, un macro bloque, un subbloque, un píxel, o similares corresponden a lo mismo. En la descripción presentada a continuación, básicamente, el bloque de píxeles se usa como el significado de un bloque de árbol de codificación pero puede usarse como un significado diferente. Por ejemplo, en la descripción de una unidad de predicción, un bloque de píxeles se usa como el significado de un bloque de píxeles de la unidad de predicción. Un bloque puede denominarse como una unidad o similares. Por ejemplo, un bloque de codificación puede denominarse como una unidad de codificación.
La Figura 3A es un diagrama que ilustra un ejemplo del tamaño de un bloque de árbol de codificación de acuerdo con la primera realización. El bloque de árbol de codificación, típicamente, es un bloque de píxeles de 64 x 64 como se ilustra en la Figura 3A. Sin embargo, el bloque de árbol de codificación no está limitado a lo mismo si no que puede ser un bloque de píxeles de 32 x 32, un bloque de píxeles de 16 x 16, un bloque de píxeles de 8 x 8, un bloque de píxeles de 4 x 4, o similares. En este punto, el bloque de árbol de codificación puede no ser un cuadrado si no que, por ejemplo, puede ser un bloque de píxeles de un tamaño de M x N (en este punto, M t N).
Las Figuras 3B a 3D son diagramas que representan ejemplos específicos del bloque de árbol de codificación de acuerdo con la primera realización. La Figura 3B representa un bloque de árbol de codificación que tiene un tamaño de bloque de 64 x 64 (N = 32). En este punto, N representa el tamaño de un bloque de árbol de codificación de referencia. El tamaño de un caso donde se divide el bloque de árbol de codificación se define como N, y el tamaño de un caso donde no se divide el bloque de árbol de codificación se define como 2N. La Figura 3C representa un bloque de árbol de codificación obtenido dividiendo el bloque de árbol de codificación ilustrado en la Figura 3B en un árbol cuádruple. El bloque de árbol de codificación, como se ilustra en la Figura 3C, tiene una estructura de árbol cuádruple. En un caso donde se divide el bloque de árbol de codificación, como se ilustra en la Figura 3C, los números están fijados a cuatro bloques de píxeles después de la división en el orden de exploración en Z.
Además, dentro de cada número del árbol cuádruple, el bloque de árbol de codificación puede dividirse adicionalmente en un árbol cuádruple. Por consiguiente, el bloque de árbol de codificación puede dividirse de una manera jerárquica. En un caso de este tipo, la profundidad de la división se define como profundidad. La Figura 3D representa uno de los bloques de árbol de codificación obtenido dividiendo el bloque de árbol de codificación ilustrado en la Figura 3B en un árbol cuádruple, y el tamaño de bloque del mismo es 32 x 32 (N = 16). La profundidad del bloque de árbol de codificación ilustrado en la Figura 3B es "0", y la profundidad del bloque de árbol de codificación ilustrado en la Figura 3D es "1". Además, un bloque de árbol de codificación que tiene una unidad más grande se denomina un bloque de árbol de codificación grande, y una señal de imagen de entrada se codifica en una unidad de este tipo en el orden de exploración por filas.
En la descripción presentada a continuación, el bloque objetivo codificado o el bloque de árbol de codificación de una imagen de entrada pueden denominarse como un bloque objetivo de predicción o un bloque de píxeles de predicción. Además, la unidad de codificación no está limitada al bloque de píxeles, si no que puede usarse a al menos uno de un fotograma, un campo, un corte, una línea y un píxel como la unidad de codificación.
El dispositivo 100 de codificación, como se ilustra en la Figura 1, incluye: una unidad 101 de resta; una unidad 102 de transformación ortogonal; una unidad 103 de cuantificación; una unidad 104 de cuantificación inversa; una unidad 105 de transformación ortogonal inversa; una unidad 106 de adición; una unidad 107 de generación de imagen prevista; una unidad 108 de ajuste de índice; una unidad 109 de evaluación de movimiento; y una unidad 110 de codificación. Además, la unidad 111 de control de codificación ilustrada en la Figura 1 controla el dispositivo 100 de codificación y, por ejemplo, puede implementarse usando una CPU (Unidad de Procesamiento Central) o similares.
La unidad 101 de resta obtiene un error de predicción restando una correspondiente imagen prevista de una imagen de entrada dividida en bloques de píxeles. La unidad 101 de resta emite el error de predicción para introducirse a la unidad 102 de transformación ortogonal.
La unidad 102 de transformación ortogonal realiza una transformación ortogonal tal como una transformada de coseno discreta (DCT) o una transformada de seno discreta (DST) para el error de predicción introducido de la unidad 101 de resta, obteniendo de esta manera un coeficiente de transformación. La unidad 102 de transformación ortogonal emite el coeficiente de transformación para introducir a la unidad 103 de cuantificación.
La unidad 103 de cuantificación realiza un procedimiento de cuantificación para el coeficiente de transformación introducido de la unidad 102 de transformación ortogonal, obteniendo de esta manera un coeficiente de transformación de cuantificación. Más específicamente, la unidad 103 de cuantificación realiza cuantificación basándose en un parámetro de cuantificación designado por la unidad 111 de control de codificación e información de cuantificación tal como una matriz de cuantificación. Descrita en más detalle, la unidad 103 de cuantificación obtiene el coeficiente de transformación de cuantificación dividiendo el coeficiente de transformación entre un tamaño de paso de cuantificación derivado basándose en la información de cuantificación. El parámetro de cuantificación representa la perfección de la cuantificación. La matriz de cuantificación se usa para ponderar la perfección de la cuantificación para cada componente del coeficiente de transformación. La unidad 103 de cuantificación emite el coeficiente de transformación de cuantificación para introducirse a la unidad 104 de cuantificación inversa y a la unidad 110 de codificación.
La unidad 104 de cuantificación inversa realiza un procedimiento de cuantificación inversa para el coeficiente de transformación de cuantificación introducido de la unidad 103 de cuantificación, obteniendo de esta manera un coeficiente de transformación de restauración. Más específicamente, la unidad 104 de cuantificación inversa realiza cuantificación inversa basándose en la información de cuantificación usada por la unidad 103 de cuantificación. Descrita en detalle, la unidad 104 de cuantificación inversa obtiene un coeficiente de transformación de restauración multiplicando el coeficiente de transformación de cuantificación por el tamaño de paso de cuantificación derivado basándose en la información de cuantificación. Además, la información de cuantificación usada por la unidad 103 de cuantificación se carga de una memoria interna, que no se ilustra en la figura, de la unidad 111 de control de codificación y se usa. La unidad 104 de cuantificación inversa emite el coeficiente de transformación de restauración para introducirse a la unidad 105 de transformación ortogonal inversa.
La unidad 105 de transformación ortogonal inversa realiza una transformación ortogonal inversa tal como una transformación inversa de coseno discreta (IDCT) o una transformación inversa de seno discreta (IDST) para el coeficiente de transformación de restauración introducido de la unidad 104 de cuantificación inversa, obteniendo de esta manera un error de predicción de restauración. En este punto, la transformación ortogonal inversa realizada por la unidad 105 de transformación ortogonal inversa corresponde a una transformación ortogonal realizada por la unidad 102 de transformación ortogonal. La unidad 105 de transformación ortogonal inversa emite el error de predicción de restauración para introducirse a la unidad 106 de adición.
La unidad 106 de adición añade el error de predicción de restauración introducido de la unidad 105 de transformación ortogonal inversa y una correspondiente imagen prevista, generando de esta manera una imagen decodificada local. La unidad 106 de adición emite la imagen decodificada local para introducirse a la unidad 107 de generación de imagen prevista.
La unidad 107 de generación de imagen prevista almacena la imagen decodificada local introducida de la unidad 106 de adición en una memoria (no ilustrada en la Figura 1) para una imagen de referencia y emite la imagen de referencia almacenada en la memoria para introducirse a la unidad 109 de evaluación de movimiento. Además, la unidad 107 de generación de imagen prevista genera una imagen prevista realizando una predicción de movimiento compensado ponderado basándose en la información de movimiento e información de parámetro de WP introducida de la unidad 109 de evaluación de movimiento. La unidad 107 de generación de imagen prevista emite la imagen prevista para introducirse a la unidad 101 de resta y la unidad 106 de adición.
La Figura 4 es un diagrama de bloques que ilustra un ejemplo de la configuración de la unidad 107 de generación de imagen prevista de acuerdo con la primera realización. La unidad 107 de generación de imagen prevista, como se ilustra en la Figura 4, incluye: una unidad 201 de compensación de movimiento de múltiples fotogramas; una memoria 202; una unidad 203 de compensación de movimiento unidireccional; una unidad 204 de control de parámetro de predicción; un selector 205 de imagen de referencia; una memoria 206 de fotograma; y una unidad 207 de control de imagen de referencia.
La memoria 206 de fotograma almacena la imagen decodificada local introducida de la unidad 106 de adición como una imagen de referencia bajo el control de la unidad 207 de control de imagen de referencia. La memoria 206 de fotograma incluye una pluralidad de conjuntos de memoria FM1 a FMN (en este punto, N > 2) usada para almacenar temporalmente la imagen de referencia.
La unidad 204 de control de parámetro de predicción prepara una pluralidad de combinaciones de cada uno de un número de imagen de referencia y un parámetro de predicción como una tabla basándose en la información de movimiento introducida de la unidad 109 de evaluación de movimiento. En este punto, la información de movimiento representa información de un vector de movimiento que representa la desviación de un movimiento que se usa para la predicción de movimiento compensado, el número de imagen de referencia, y un modo de predicción tal como una predicción unidireccional/bidireccional. El parámetro de predicción representa información relacionada con el vector de movimiento y el modo de predicción. A continuación, la unidad 204 de control de parámetro de predicción selecciona una combinación de un número de referencia y un parámetro de predicción usados para generar una imagen prevista basándose en la imagen de entrada y emite la combinación seleccionada para permitir que el número de imagen de referencia se introduzca al selector 205 de imagen de referencia y permite que el parámetro de predicción se introduzca a la unidad 203 de compensación de movimiento unidireccional.
El selector 205 de imagen de referencia es un conmutador que cambia de terminales de salida de las memorias de fotograma FM1 a FMN, que están incluidas en la memoria 206 de fotograma, para conmutarse basándose en un número de imagen de referencia introducido de la unidad 204 de control de parámetro de predicción. Por ejemplo, cuando el número de imagen de referencia es "0", el selector 205 de imagen de referencia conecta el terminal de salida de la memoria de fotograma FM1 al terminal de salida del selector 205 de imagen de referencia, y, cuando el número de imagen de referencia es N -1 , el selector 205 de imagen de referencia conecta el terminal de salida de la memoria de fotograma FMN al terminal de salida del selector 205 de imagen de referencia. El selector 205 de imagen de referencia emite una imagen de referencia almacenada en la memoria de fotograma de la cual el terminal de salida está conectado a la misma de entre las memorias de fotograma FM1 a FMN incluidas en la memoria 206 de fotograma para introducirse a la unidad 203 de compensación de movimiento unidireccional y la unidad 109 de evaluación de movimiento.
La unidad 203 de compensación de movimiento previsto unidireccional realiza un procedimiento de predicción de movimiento compensado basándose en el parámetro de predicción introducido de la unidad 204 de control de parámetro de predicción y la imagen de referencia introducida del selector 205 de imagen de referencia, generando de esta manera una imagen prevista unidireccional.
La Figura 5 es un diagrama que ilustra un ejemplo de la relación entre vectores de movimiento para una predicción de movimiento compensado en una predicción bidireccional de acuerdo con la primera realización. En la predicción de movimiento compensado, se realiza un procedimiento de interpolación usando la imagen de referencia, y se genera una imagen prevista unidireccional basándose en desviaciones de movimientos de la imagen interpolada generada y la imagen de entrada del bloque de píxeles ubicado en la posición objetivo de codificación. En este punto, la desviación es un vector de movimiento. Como se ilustra en la Figura 5, en el corte de predicción bidireccional (corte-B), se genera una imagen prevista usando dos tipos de imágenes de referencia y un conjunto de vectores de movimiento. Como el procedimiento de interpolación, se usa un procedimiento de interpolación de precisión de 1/2 píxeles, un procedimiento de interpolación de precisión de 1/4 píxeles, o similares, y, realizando un procedimiento de filtración para la imagen de referencia, se genera un valor de la imagen interpolada. Por ejemplo, en H.264 en el que puede realizarse una interpolación de precisión de hasta 1/4 píxeles para una señal de luminancia, la desviación se representa como cuatro veces la precisión de píxel entero.
La unidad 203 de compensación de movimiento previsto unidireccional emite una imagen prevista unidireccional y almacena temporalmente la imagen prevista unidireccional en la memoria 202. En este punto, en un caso donde la información de movimiento (parámetro de predicción) representa una predicción bidireccional, la unidad 201 de compensación de movimiento de múltiples fotogramas hace una predicción ponderada usando dos tipos de imágenes previstas unidireccionales. Por consiguiente, la unidad 203 de compensación de movimiento previsto unidireccional almacena una imagen prevista unidireccional que corresponde al primer tipo en la memoria 202 y emite directamente una imagen prevista unidireccional que corresponde al segundo tipo a la unidad 201 de compensación de movimiento de múltiples fotogramas. En este punto, la imagen prevista unidireccional que corresponde al primer tipo se denominará como una primera imagen prevista, y la imagen prevista unidireccional que corresponde al segundo tipo se denominará como una segunda imagen prevista.
Además, pueden prepararse dos unidades 203 de compensación de movimiento unidireccionales y generar dos imágenes previstas unidireccionales. En un caso de este tipo, cuando la información de movimiento
(parámetro de predicción) representa una predicción unidireccional, la unidad 203 de compensación de movimiento unidireccional puede emitir directamente la primera imagen prevista unidireccional a la unidad 201 de compensación de movimiento de múltiples fotogramas para una primera imagen prevista.
La unidad 201 de compensación de movimiento de múltiples fotogramas hace una predicción ponderada usando la primera imagen prevista introducida de la memoria 202, la segunda imagen prevista introducida de la unidad 203 de compensación de movimiento previsto unidireccional, y la información de parámetro de WP introducida de la unidad 109 de evaluación de movimiento, generando de esta manera una imagen prevista. La unidad 201 de compensación de movimiento de múltiples fotogramas emite la imagen prevista para introducirse a la unidad 101 de resta y a la unidad 106 de adición.
La Figura 6 es un diagrama de bloques que ilustra un ejemplo de la configuración de la unidad 201 de compensación de movimiento de múltiples fotogramas de acuerdo con la primera realización. Como se ilustra en la Figura 6, la unidad 201 de compensación de movimiento de múltiples fotogramas incluye: una unidad 301 de compensación de movimiento por defecto; una unidad 302 de compensación de movimiento ponderado; una unidad 303 de control de parámetro de WP; y selectores 304 y 305 de WP.
La unidad 303 de control de parámetro de WP emite una bandera de aplicación de WP e información de ponderación basándose en la información de parámetro de WP introducida de la unidad 109 de evaluación de movimiento para introducir la bandera de aplicación de WP a los selectores 304 y 305 de WP e introducir la información de ponderación a la unidad 302 de compensación de movimiento ponderado.
En este punto, la información de parámetro de WP incluye información de la precisión de punto fijo del factor de ponderación, una primera bandera de aplicación de WP, un primer factor de ponderación, y una primera compensación que corresponde a la primera imagen prevista, y una segunda bandera de aplicación de WP, un segundo factor de ponderación, y una segunda compensación que corresponde a la segunda imagen prevista. La bandera de aplicación de WP es un parámetro que puede establecerse para cada correspondiente imagen de referencia y componente de señal y representa si se realiza o no una predicción de compensación de movimiento ponderado. La información de ponderación incluye información de la precisión de punto fijo del factor de ponderación, el primer factor de ponderación, la primera compensación, el segundo factor de ponderación, y la segunda compensación.
Descrita en detalle, cuando la información de parámetro de WP se introduce de la unidad 109 de evaluación de movimiento, la unidad 303 de control de parámetro de WP emite la información de parámetro de WP dividiéndose en la primera bandera de aplicación de WP, la segunda bandera de aplicación de WP, y la información de ponderación, introduciendo de esta manera la primera bandera de aplicación de Wp al selector de Wp 304, introduciendo la segunda bandera de aplicación de WP al selector de WP 305, e introduciendo la información de ponderación a la unidad 302 de compensación de movimiento ponderado.
Los selectores 304 y 305 de WP cambian los extremos de conexión de las imágenes previstas basándose en las banderas de aplicación de WP introducidas de la unidad 303 de control de parámetro de WP. En un caso donde la correspondiente bandera de aplicación de WP es "0", cada uno de los selectores 304 y 305 de WP conecta el extremo emitido del mismo a la unidad 301 de compensación de movimiento por defecto. A continuación, los selectores 304 y 305 de WP emiten la primera y segunda imágenes previstas para introducirse a la unidad 301 de compensación de movimiento por defecto. Por otra parte, en un caso donde la correspondiente bandera de aplicación de WP es "1", cada uno de los selectores 304 y 305 de WP conecta el extremo de salida de los mismos a la unidad 302 de compensación de movimiento ponderado. A continuación, los selectores 304 y 305 de WP emiten la primera y segunda imágenes previstas para introducirse a la unidad 302 de compensación de movimiento ponderado.
La unidad 301 de compensación de movimiento por defecto realiza procesamiento promedio basándose en las dos imágenes previstas unidireccionales (la primera y segunda imágenes previstas) introducidas de los selectores 304 y 305 de WP, generando de esta manera una imagen prevista. Más específicamente, en un caso donde la primera y segunda banderas de aplicación de WP son "0", la unidad 301 de compensación de movimiento por defecto realiza procesamiento promedio basándose en la expresión numérica (1).
P[x, y] = Clip1((PL0[x, y] PL1[x, y] offset2) >> (shift2))
(1)
En este punto, P[x, y] es una imagen prevista, PL0[x,y] es una primera imagen prevista, y PL1[x, y] es una segunda imagen prevista. Además, offset2 y shift2 son parámetros de un procedimiento de redondeo en el procesamiento promedio y se determinan basándose en la precisión de cálculo interno de la primera y segunda imágenes previstas. Cuando la precisión de bit de la imagen prevista es L, y la precisión de bit de la primera y segunda imágenes previstas es M (L < M), shift2 se formula mediante la expresión numérica (2), y offset2 se formula mediante la expresión numérica (3).
shift2 = (M -L 1) (2)
offset2 = (1 << (shift2 -1 ) (3)
Por ejemplo, la precisión de bit de la imagen prevista es "8", y la precisión de bit de la primera y segunda imágenes previstas es "14", shift2 = 7 basándose en la expresión numérica (2), y offset2 = (1 << 6) basándose en la expresión numérica (3).
Además, en un caso donde el modo de predicción representado por la información de movimiento (parámetro de predicción) es la predicción unidireccional, la unidad 301 de compensación de movimiento por defecto calcula una imagen prevista final usando únicamente la primera imagen prevista basándose en la expresión numérica (4).
P[x, y] = Clip1((PLX[x, y] offsetl) >> (shiftl))
(4)
En este punto, PLX[x, y] representa una imagen prevista unidireccional (primera imagen prevista), y X es un identificador que representa cualquiera de "0" o "1" como una lista de referencias. Por ejemplo, PLX[x, y] es PL0[x, y] en un caso donde la lista de referencia es "0" y es PL1[x, y] en un caso donde la lista de referencias es "1". Además, offset1 y shift1 son parámetros para un procedimiento de redondeo y se determinan basándose en la precisión de cálculo interno de la primera imagen prevista. Cuando la precisión de bit de la imagen prevista es L, y la precisión de bit de la primera imagen prevista es M, shift1 se formula mediante la expresión numérica (5), y offset1 se formula mediante la expresión numérica (6).
shift1 = (M - L) (5)
offset1 = (1 << (shift1 -1 ) (6)
Por ejemplo, en un caso donde la precisión de bit de la imagen prevista es "8", y la precisión de bit de la primera imagen prevista es "14", shift1 = 6 basándose en la expresión numérica (5), y offset1 = (1 << 5) basándose en la expresión numérica (6).
La unidad 302 de compensación de movimiento ponderado realiza compensación de movimiento ponderado basándose en las dos imágenes previstas unidireccionales (la primera y segunda imágenes previstas) introducidas de los selectores 304 y 305 de WP y la información de ponderación introducida de la unidad 303 de control de parámetro de WP. Más específicamente, la unidad 302 de compensación de movimiento ponderado realiza el procedimiento de ponderación basándose en la expresión numérica (7) en un caso donde la primera y segunda banderas de aplicación de WP son "1".
P[x, y] = Clip1(((PL0[x, y]*w0C PL1[x, y]*w1o (1 << logWDo)) >> (logWDo 1)) ((oüc + o1o 1) >> 1))
(7)
En este punto, wüc representa un factor de ponderación que corresponde a la primera imagen prevista, w-ic representa un factor de ponderación que corresponde a la segunda imagen prevista, oüc representa una compensación que corresponde a la primera imagen prevista, y o1c representa una compensación que corresponde a la segunda imagen prevista. Posteriormente, se denominarán como un primer factor de ponderación, un segundo factor de ponderación, una primera compensación y una segunda compensación respectivamente. logWDc es un parámetro que representa precisión de punto fijo de cada factor de ponderación. Además, una variable C representa un componente de señal. Por ejemplo, en el caso de una señal espacial de YUV, una señal de luminancia se representa por C = Y, una señal de diferencia de color de Cr se representa por C = Cr, y un componente de diferencia de color de Cb se representa por C = Cb.
Además, en un caso donde la precisión de cálculo de la primera y segunda imágenes previstas y la precisión de cálculo de la imagen prevista son diferentes entre sí, la unidad 302 de compensación de movimiento ponderado realiza un procedimiento de redondeo controlando logWDc, que es precisión de punto fijo, como en la expresión numérica (8).
logWD'c = logWDc offset1 (8)
El procedimiento de redondeo puede realizarse sustituyendo logWDc representado en la expresión numérica (7) con logWD'c representado en la expresión numérica (8). Por ejemplo, en un caso donde la precisión de bit de la imagen prevista es "8", y la precisión de bit de la primera y segunda imágenes previstas es "14", restableciendo logWDc, es posible realizar un procedimiento de redondeo por lotes para la precisión de cálculo similar al de shift2 representado en la expresión numérica (1).
Además, en un caso donde el modo de predicción representado por la información de movimiento (parámetro de predicción) es una predicción unidireccional, la unidad 302 de compensación de movimiento ponderado calcula una imagen prevista final usando únicamente la primera imagen prevista basándose en la expresión numérica (9).
P[x, y] = Clip1((PLX[x, y]*wxc (1 << logWDc -1)) >> (logWDc))
(9)
En este punto, PLX[x, y] representa una imagen prevista unidireccional (primera imagen prevista), wxc representa un factor de ponderación que corresponde a la predicción unidireccional, y X es un identificador que representa cualquiera de "0" o "1" como una lista de referencias. Por ejemplo, PLX[x, y] y wxc son PL0[x,y] y woc en un caso donde la lista de referencia es "0" y son PL1[x, y] y W1C en un caso donde la lista de referencia es "1".
Además, en un caso donde la precisión de cálculo de la primera y segunda imágenes previstas y la precisión de cálculo de la imagen prevista son diferentes entre sí, la unidad 302 de compensación de movimiento ponderado realiza un procedimiento de redondeo controlando logWDc, que es precisión de punto fijo, como en la expresión numérica (8), de manera similar caso de la predicción bidireccional.
El procedimiento de redondeo puede realizarse sustituyendo logWDc representado en la expresión numérica (7) con logWD'c representado en la expresión numérica (8). Por ejemplo, en un caso donde la precisión de bit de la imagen prevista es "8", y la precisión de bit de la primera imagen previstas es "14", restableciendo logWDC, es posible realizar un procedimiento de redondeo por lotes para la precisión de cálculo similar al de shift1 representado en la expresión numérica (4).
La Figura 7 es un diagrama explicativo que ilustra un ejemplo de precisión de punto fijo de un factor de ponderación de acuerdo con la primera realización y es un diagrama que ilustra un ejemplo de cambios en una imagen en movimiento que tiene un cambio de brillo en la dirección de tiempo y un valor de escala de grises. En el ejemplo ilustrado en la Figura 7, un fotograma objetivo de codificación es Frame(t), un fotograma que es un fotograma antes del objetivo de codificación en el tiempo es Frame(t -1), y un fotograma que es un fotograma después del fotograma objetivo de codificación es Frame(t 1). Como se ilustra en la Figura 7, en una imagen de desvanecimiento que cambia de blanco a negro, el brillo (valor de escala de grises) de la imagen se reduce de acuerdo con el transcurso de tiempo. El factor de ponderación representa el grado de cambio en la Figura 7, y, como es evidente de las expresiones numéricas (7) y (9), toma un valor de "1,0" en un caso donde no hay cambio en el brillo. La precisión de punto fijo es un parámetro que controla una anchura de intervalo que corresponde a un punto decimal del factor de ponderación, y el factor de ponderación es 1 << logWDC en un caso donde no hay cambio en brillo.
Además, en el caso de una predicción unidireccional, no se usan diversos parámetros (la segunda bandera de aplicación de WP, el segundo factor de ponderación, y la segunda información de compensación) que corresponden a la segunda imagen prevista y pueden establecerse a valores iniciales determinados con antelación.
Haciendo referencia de vuelta a la Figura 1, la unidad 109 de evaluación de movimiento realiza una evaluación de movimiento entre una pluralidad de fotogramas basándose en una imagen de entrada y una imagen de referencia introducida de la unidad 107 de generación de imagen prevista y emite la información de movimiento y la información de parámetro de WP, introduciendo de esta manera la información de movimiento a la unidad 107 de generación de imagen prevista y a la unidad 110 de codificación e introduciendo la información de parámetro de WP a la unidad 107 de generación de imagen prevista y a la unidad 108 de ajuste de índice.
La unidad 109 de evaluación de movimiento calcula un error, por ejemplo, calculando diferencias entre una imagen de entrada de un bloque de píxeles objetivo de predicción y una pluralidad de imágenes de referencia que corresponden a la misma posición que un punto de inicio, desplaza la posición con precisión fraccional, y calcula información de movimiento óptima usando una técnica tal como adaptación de bloque para hallar un bloque de un error mínimo o similares. En el caso de una predicción bidireccional, la unidad 109 de evaluación de movimiento realiza coincidencia de bloque que incluye una predicción de compensación de movimiento por defecto como se representa en las expresiones numéricas (1) y (4) usando la información de movimiento derivada de la predicción unidireccional, calculando de esta manera información de movimiento de la predicción bidireccional.
En este momento, la unidad 109 de evaluación de movimiento puede calcular la información de parámetro de WP realizando coincidencia de bloque que incluye una predicción de compensación de movimiento ponderado como se representa en las expresiones numéricas (7) y (9). Además, para el cálculo de la información de parámetro de WP, puede usarse un procedimiento de cálculo de un factor de ponderación o una compensación usando un gradiente de brillo de la imagen de entrada, un procedimiento de cálculo de un factor de ponderación o una compensación de acuerdo con la acumulación de un error de predicción en el momento de codificación o similares. Adicionalmente, como la información de parámetro de WP, puede usarse un valor fijo determinado con antelación para cada dispositivo de codificación.
En este punto, se describirá un procedimiento de cálculo de un factor de ponderación, la precisión de punto fijo del factor de ponderación, y una compensación de una imagen en movimiento que tiene un cambio de brillo en el tiempo con referencia a la Figura 7. Como se ha descrito anteriormente, en el cambio de imagen de desvanecimiento de blanco a negro como se ilustra en la Figura 7, el brillo (valor de escala de grises) de la imagen se reduce de acuerdo con el transcurso de tiempo. La unidad 109 de evaluación de movimiento puede calcular el factor de ponderación calculando la pendiente del mismo.
La precisión de punto fijo del factor de ponderación es información que representa la precisión de la pendiente, y la unidad 109 de evaluación de movimiento puede calcular un valor óptimo basándose en una distancia a la imagen de referencia en el tiempo y el grado de cambio del brillo de la imagen. Por ejemplo, en la Figura 7, en un caso donde el factor de ponderación entre Frame(t -1 ) y Frame(t 1) es 0,75 con precisión fraccional, puede representarse 3/4 en el caso de precisión de 1/4, y por consiguiente, la unidad 109 de evaluación de movimiento establece la precisión de punto fijo a 2 (1 << 2). Puesto que el valor de la precisión de punto fijo influencia en la cantidad de código de un caso donde se codifica el factor de ponderación, como el valor de la precisión de punto fijo, puede seleccionarse un valor óptimo en consideración de la cantidad de código y la precisión de predicción. Además, el valor de la precisión de punto fijo puede ser un valor fijo determinado con antelación.
Además, en un caso donde no se haga coincidir la pendiente, la unidad 109 de evaluación de movimiento puede calcular el valor de la compensación obteniendo un valor de corrección (cantidad de desviación) que corresponde a la intercepción de la función lineal. Por ejemplo, en la Figura 7, en un caso donde un factor de ponderación entre Frame(t - 1) y Frame(t 1) es 0,60 con precisión de punto decimal, y la precisión de punto fijo es "1" (1 << 1), hay una alta posibilidad que el factor de ponderación se establezca a "1" (que corresponde a precisión de punto decimal de 0,50 del factor de ponderación). En un caso de este tipo, puesto que la precisión de punto decimal del factor de ponderación se desvía de 0,60, que es un valor óptimo, en 0,10, la unidad 109 de evaluación de movimiento calcula un valor de corrección que corresponde al mismo basándose en un valor máximo del píxel y se establece como el valor de la compensación. En un caso donde el valor máximo del píxel es 255, la unidad 109 de evaluación de movimiento puede establecer un valor tal como 25 (255 x 0,1).
En la primera realización, aunque la unidad 109 de evaluación de movimiento se representa como una función del dispositivo 100 de codificación como un ejemplo, la unidad 109 de evaluación de movimiento no es una configuración esencial del dispositivo 100 de codificación, y, por ejemplo, la unidad 109 de evaluación de movimiento puede ser un dispositivo distinto del dispositivo 100 de codificación. En un caso de este tipo, la información de movimiento y la información de parámetro de WP calculado por la unidad 109 de evaluación de movimiento pueden calcularse en el dispositivo 100 de codificación.
La unidad 108 de ajuste de índice recibe la información de parámetro de WP introducida de la unidad 109 de evaluación de movimiento, comprueba una lista de referencias (número de lista) y una imagen de referencia (número de referencia), y emite información de índice para introducirse a la unidad 110 de codificación. La unidad 108 de ajuste de índice genera la información de índice mapeando la información de parámetro de WP introducida de la unidad 109 de evaluación de movimiento en un elemento de sintaxis que va a describirse más adelante.
Las Figuras 8A y 8B son diagramas que ilustran ejemplos de la información de parámetro de WP de acuerdo con la primera realización. Un ejemplo de la información de parámetro de WP en el momento del corte-P es como se ilustra en la Figura 8A, y un ejemplo de la información de parámetro de WP en el momento del corte-B es como se ilustra en las Figuras 8A y 8B. Un número de lista es un identificador que representa una dirección de predicción. El número de lista tiene un valor de "0" en el caso de una predicción unidireccional. Por otra parte, en el caso de una predicción bidireccional, pueden usarse dos tipos de predicción, y por consiguiente, el número de lista tiene dos valores de "0" y "1". Un número de referencia es un valor que corresponde a uno cualquiera de 1 a N representado en la memoria 206 de fotograma. Puesto que se mantiene la información de parámetro de WP para cada lista de referencia e imagen de referencia, en un caso donde hay N imágenes de referencia, son necesarias 2N piezas de información en el momento del corte-B.
Haciendo referencia de vuelta a la Figura 1, la unidad 110 de codificación realiza un procedimiento de codificación de diversos parámetros de codificación tales como el coeficiente de transformación de cuantificación introducido de la unidad 103 de cuantificación, la información de movimiento introducida de la unidad 109 de evaluación de movimiento, la información de índice introducida de la unidad 108 de ajuste de índice, y la información de cuantificación designada por la unidad 111 de control de codificación, generando de esta manera datos codificados. Como el procedimiento de codificación, por ejemplo, hay una codificación Huffman o codificación aritmética.
En este punto, los parámetros de codificación son parámetros tales como información de predicción que representa un procedimiento de predicción o similares, información relacionada con el coeficiente de transformación de cuantificación, e información relacionada con la cuantificación que son necesarios para un procedimiento de decodificación. Por ejemplo, pueden configurarse de manera que una memoria interna no ilustrada en la figura esté incluida en la unidad 111 de control de codificación, los parámetros de codificación se mantienen en la memoria interna, y se usan los parámetros de codificación de un bloque de píxeles adyacente, que se ha completado para codificarse, cuando se codifica un bloque de píxeles. Por ejemplo, en una intra-predicción de H.264, puede derivarse la información de predicción de un bloque de píxeles de la información de predicción de un bloque adyacente que se ha completado para codificarse.
La unidad 110 de codificación emite los datos codificados generados a temporización de salida apropiada gestionada por la unidad 111 de control de codificación. Se multiplexan diversas clases de información, que son datos codificados emitidos, por ejemplo, por una unidad de multiplexación no ilustrada en la figura o similares, se almacenan temporalmente en una memoria intermedia de salida no ilustrada en la figura o similares, y, a continuación, por ejemplo, se emiten a un sistema de almacenamiento (medio de almacenamiento) o un sistema de transmisión (línea de comunicación).
La unidad 110 de codificación incluye una unidad 110A de codificación por entropía y una unidad 110B de reconfiguración de índice.
La unidad 110A de codificación por entropía realiza un procedimiento de codificación tal como procedimiento de codificación de longitud variable o de codificación aritmética para información que se ha introducido. Por ejemplo, en H.264, se usa una codificación de longitud variable adaptativa basada en contexto (CAVLC), codificación aritmética binaria adaptativa basada en contexto (CABAC), o similares.
Para reducir la longitud de código de un elemento de sintaxis de la información de índice introducida de la unidad 108 de ajuste de índice, la unidad 110B de reconfiguración de índice realiza un procedimiento de predicción basándose en las características de los parámetros del elemento de sintaxis, calcula una diferencia entre el valor (valor directo) del elemento de sintaxis y un valor previsto, y emite la diferencia a la unidad 110A de codificación por entropía. Un ejemplo específico del procedimiento de predicción se describirá más adelante.
La Figura 9 es un diagrama que ilustra un ejemplo de sintaxis 500 usado por el dispositivo 100 de codificación de acuerdo con la primera realización. La sintaxis 500 ilustra la estructura de datos codificados generados codificando una imagen de entrada (datos de imagen en movimiento) usando el dispositivo 100 de codificación. Cuando se decodifican los datos codificados, un dispositivo de decodificación que va a describirse más adelante realiza un análisis de sintaxis de una imagen en movimiento haciendo referencia a una estructura de sintaxis que es la misma que la de la sintaxis 500.
La sintaxis 500 incluye tres partes que incluyen una sintaxis 501 de alto nivel, una sintaxis 502 de nivel de corte, y una sintaxis 503 de nivel de árbol de codificación. La sintaxis 501 de alto nivel incluye información de sintaxis de una capa superior que tiene un nivel superior que el corte. En este punto, el corte representa un área rectangular o un área continua incluida en un fotograma o un campo. La sintaxis 502 de nivel de corte incluye información que es necesaria para decodificar cada corte. La sintaxis 503 de nivel de árbol de codificación incluye información que es necesaria para decodificar cada árbol de codificación (en otras palabras, cada bloque de árbol de codificación). Cada una de estas partes incluye sintaxis más detallada.
La sintaxis 501 de alto nivel incluye sintaxis de una secuencia y un nivel de instantánea tal como una sintaxis 504 de conjunto de parámetros de secuencia, una sintaxis 505 de conjunto de parámetros de instantánea, y una sintaxis 506 de conjunto de parámetros de adaptación.
La sintaxis 502 de nivel de corte incluye una sintaxis 507 de encabezamiento de corte, una sintaxis 508 de tabla de peso plano, una sintaxis 509 de datos de corte y similares. La sintaxis 508 de tabla de peso plano se llama desde la sintaxis 507 de encabezamiento de corte.
La sintaxis 503 de nivel de árbol de codificación incluye una sintaxis 510 de unidad de árbol de codificación, una sintaxis 511 de unidad de transformación, una sintaxis 512 de unidad de predicción, y similares. La sintaxis 510 de unidad de árbol de codificación puede tener una estructura de árbol cuádruple. Más específicamente, la sintaxis 510 de unidad de árbol de codificación puede denominarse de manera recursiva adicionalmente como un elemento de sintaxis de la sintaxis 510 de unidad de árbol de codificación. En otras palabras, un bloque de árbol de codificación puede subdividirse en árboles cuádruples. Además, la sintaxis 511 de unidad de transformada se incluye en la sintaxis 510 de unidad de árbol de codificación. La sintaxis 511 de unidad de transformada se llama desde cada unidad de sintaxis 510 de árbol de codificación ubicada en un extremo de cola del árbol cuádruple. En la sintaxis 511 de unidad de transformada, se describe información relacionada con transformación ortogonal inversa, cuantificación y similares. En las sintaxis, puede describirse la información relacionada con la predicción de compensación de movimiento ponderado.
La Figura 10 es un diagrama que ilustra un ejemplo de la sintaxis 505 de conjunto de parámetros de instantánea de acuerdo con la primera realización. En este punto, weighted_pred_flag, por ejemplo, es un elemento de sintaxis que representa la validez o invalidez de una predicción de compensación ponderada de acuerdo con la primera realización para un corte-P. En un caso donde weighted_pred_flag es "0", la predicción de compensación de movimiento ponderado de acuerdo con la primera realización en el corte-P es inválida. Por consiguiente, la bandera de aplicación de WP incluida en la información de parámetro de WP se establece de manera constante a "0", y los extremos de salida de los selectores 304 y 305 de WP están conectados a la unidad 301 de compensación de movimiento por defecto. Por otra parte, en un caso donde weighted_pred_flag es "1", la predicción de compensación de movimiento ponderado de acuerdo con la primera realización en el corte-P es válida.
Como otro ejemplo, en un caso donde weighted_pred_flag es "1", la validez o invalidez de la predicción de compensación de movimiento ponderado de acuerdo con la primera realización puede definirse para cada área local en el corte en la sintaxis de una capa inferior (el encabezamiento de corte, el bloque de árbol de codificación, la unidad de transformación, la unidad de predicción, y similares).
Además, weighted_bipred_idc, por ejemplo, es un elemento de sintaxis que representa la validez o invalidez de una predicción de compensación ponderada de acuerdo con la primera realización para un corte-B. En un caso donde weighted_bipred_idc es "0", la predicción de compensación de movimiento ponderado de acuerdo con la primera realización en el corte-B es inválida. Por consiguiente, la bandera de aplicación de WP incluida en la información de parámetro de WP se establece de manera constante a "0", y los extremos de salida de los selectores 304 y 305 de WP están conectados a la unidad 301 de compensación de movimiento por defecto. Por otra parte, en un caso donde weighted_bipred_idc es "1", la predicción de compensación de movimiento ponderado de acuerdo con la primera realización en el corte-B es válida.
Como otro ejemplo, en un caso donde weighted_bipred_idc es "1", la validez o invalidez de la predicción de compensación de movimiento ponderado de acuerdo con la primera realización puede definirse para cada área local en el corte en la sintaxis de una capa inferior (el encabezamiento de corte, el bloque de árbol de codificación, la unidad de transformación, y similares).
La Figura 11 es un diagrama que ilustra un ejemplo de la sintaxis 507 de encabezamiento de corte de acuerdo con la primera realización. En este punto, el tipo de corte representa el tipo de corte (un corte-I, un corte-P, un corte-B, o similares) del corte. Además, pic_parameter_set_id es un identificador que representa una sintaxis 505 de conjunto de parámetros de instantánea a los que se hace referencia. num_ref_idx_active_override_flag es una bandera que representa si actualizar el número de imágenes de referencia válidas, y, en un caso donde esta bandera es "1", puede usarse num_ref_idx_l0_active_minus1 y num_ref_idx_l1_active_minus1 que definen el número de imágenes de referencia de la lista de referencias. Además, pred_weight_table() es una función que representa la sintaxis de tabla de peso de predicción usada para una predicción de compensación de movimiento ponderado, y se llama a esta función en un caso donde weighted_pred_flag es "1" en el caso de un corte-P y un caso donde weighted_bipred_idc es "1" en el caso de un corte-B.
La Figura 12 es un diagrama que ilustra un ejemplo de la sintaxis 508 de tabla de peso de predicción de acuerdo con la primera realización. En este punto, luma_log2_weight_denom representa la precisión de punto fijo del factor de ponderación de la señal de luminancia en un corte y es un valor que corresponde a logWDC representado en la expresión numérica (7) o (9). Además, chroma_log2_weight_denom representa la precisión de punto fijo del factor de ponderación de una señal de diferencia de color en un corte y es un valor que corresponde a logWDC representado en la expresión numérica (7) o (9). chroma_format_idc es un identificador que representa un espacio de color, y MONO_IDX es un valor que representa un vídeo monocromo. Además, num_ref_common_active_minus1 representa un valor que se obtiene restando uno del número de imágenes de referencia incluidas en una lista común en un corte.
luma_weight_l0 flag y luma_weight_l1_flag representa banderas de aplicación de WP de señales de luminancia que corresponden a las listas 0 y 1. En un caso donde esta bandera es "1", una predicción de compensación de movimiento ponderado de la señal de luminancia de acuerdo con la primera realización es válida para todas las áreas en el corte. Además, chroma_weight_l0_flag y chroma_weight_l1_flag representan banderas de aplicación de WP de señales de diferencia de color que corresponden a las listas 0 y 1. En un caso donde esta bandera es "1", una predicción de compensación de movimiento ponderado de una señal de diferencia de color de acuerdo con la primera realización es válida para todo el área en el corte. luma_weight_l0[i] y luma_weight_l1[i] son factores de ponderación de las señales de luminancia de orden i gestionadas por las listas 0 y 1. Además, luma_offset_l0[i] y luma_offset_l1[i] son compensaciones de las señales de luminancia de orden i gestionadas por las listas 0 y 1. Estos son valores que corresponden a wüc, w-ic, oüc, o-ic representados en la expresión numérica (7) o (9). En este punto, C = Y.
chroma_weight_l0[i][j] y chroma_weight_l1[i][j] son factores de ponderación de las señales de diferencia de color de orden i gestionadas por las listas 0 y 1. Además, chroma_offset_l0[i][j] y chroma_offset_l1[i][j] son compensaciones de las señales de diferencia de color de orden i gestionadas por las listas 0 y 1. Estos son valores que corresponden a Wüc, w-ic, oüc, o-ic representados en la expresión numérica (7) o (9). En este punto, C = Cr o Cb. Además, j representa un componente de la diferencia de color, y, por ejemplo, en el caso de una señal de YUV 4 : 2 : 0, j = 0 representa un componente Cr, y j= 1 representa un componente cb.
En este punto, se describirá un procedimiento de predicción de cada elemento de sintaxis relacionado con la predicción ponderada en la configuración de sintaxis en detalle. La predicción del elemento de sintaxis se realiza por la unidad 110B de reconfiguración de índice. La Figura 13 es un diagrama que ilustra un ejemplo de la configuración de sintaxis que representa explícitamente un procedimiento de predicción de acuerdo con la primera realización. En el ejemplo ilustrado en la Figura 13, mientras que cada elemento de sintaxis del cuál se ha introducido la predicción se indica anexando un prefijo "delta", la configuración de sintaxis básicamente tiene los mismos elementos constituyentes que la configuración de sintaxis ilustrada en la Figura 12.
En primer lugar, se describirá un procedimiento de predicción inter-señal de luma_log2_weight_denom y chroma_log2_weight_denom que representa la precisión de punto fijo del factor de ponderación. La unidad 110B de reconfiguración de índice realiza el procedimiento de predicción de inter-señal de luma_log2_weight_denom y chroma_log2_weight_denom usando la expresión numérica (10) y realiza un procedimiento de restauración usando la expresión numérica (11). En este punto, como se ilustra en las Figuras 12 y 13, puesto que se define en primer lugar luma_log2_weight_denom, chroma_log2_weight_denom se predice basándose en el valor de luma_log2_weight_denom.
delta_chroma_log2_weight_denom = (chroma_log2_weight_denom - Iuma_log2_weight_denom) (10)
chroma_log2_weight_denom = (Iuma_log2_weight_denom delta_chroma_log2_weight_denom)
(11)
La Figura 14 es un diagrama de flujo que ilustra un ejemplo del procedimiento de predicción chroma_log2_weight_denom de acuerdo con la primera realización.
En primer lugar, la unidad 110B de reconfiguración de índice deriva luma_log2_weight_denom establecido en la información de índice como un valor previsto (etapa S101).
Posteriormente, la unidad 110B de reconfiguración de índice resta luma_log2_weight_denom de chroma_log2_weight_denom (etapa S102) y establece un valor de diferencia del mismo como delta_chroma_log2_weight_denom en la información de índice (etapa S103).
La Figura 15 es un diagrama de flujo que ilustra un ejemplo del procedimiento de restauración de chroma_log2_weight_denom de acuerdo con la primera realización.
En primer lugar, la unidad 110B de reconfiguración de índice deriva luma_log2_weight_denom que ya se ha establecido en la información de índice como un valor previsto (etapa S201).
Posteriormente, la unidad 110B de reconfiguración de índice añade luma_log2_weight_denom a delta_chroma_log2_weight_denom (etapa S202) y establece un valor añadido en la información de índice como chroma_log2_weight_denom (etapa S203).
En un efecto de desvanecimiento, en general, puesto que hay un número pequeño de casos en los que los cambios en el tiempo se realizan de manera diferente para cada espacio de color, la precisión de punto fijo para cada componente de señal tiene una correlación fuerte con un componente de luminancia y un componente de diferencia de color. Por consiguiente, haciendo una predicción dentro del espacio de color como se ha descrito anteriormente, puede reducirse la cantidad de información que representa la precisión de punto fijo.
En la expresión numérica (10), aunque el componente de luminancia se resta del componente de diferencia de color, el componente de diferencia de color puede restarse del componente de luminancia. En un caso de este tipo, la expresión numérica (11) puede cambiarse de acuerdo con la expresión numérica (10).
A continuación, se describirá un procedimiento de predicción de luma_weight_lx[i] y chroma_weight_lx[i][j] que representan factores de ponderación de la luminancia y la señal de diferencia de color. En este punto, x es un identificador que representa "0" o "1". Los valores de luma_weight_lx[i] y chroma_weight_lx[i][j] aumentan o reducen de acuerdo con los valores de luma_log2_weight_denom y chroma_log2_weight_denom. Por ejemplo, en un caso donde el valor de luma_log2_weight_denom es "3", luma_weight_lx[i] es (1 << 3) en un caso donde se supone que no hay cambio en brillo. Por otra parte, en un caso donde el valor de luma_log2_weight_denom es "5", luma_weight_lx[i] es (1 << 5) en un caso donde se supone que no hay cambio en brillo.
Por consiguiente, la unidad 110B de reconfiguración de índice realiza un procedimiento de predicción con un factor de ponderación de un caso donde no hay cambio en brillo que se usa como un coeficiente de referencia (valor por defecto). Más específicamente, la unidad 110B de reconfiguración de índice realiza un procedimiento de predicción de luma_weight_lx[i] usando las expresiones numéricas (12) y (13) y realiza un procedimiento de restauración usando la expresión numérica (14). De manera similar, la unidad 110B de reconfiguración de índice realiza un procedimiento de predicción de chroma_weight_lx[i] usando las expresiones numéricas (15) y (16) y realiza un procedimiento de restauración usando la expresión numérica (17).
delta_luma_weight_lx[i] = (luma_weight_lx[i] - default_luma_weight_lx)
(12)
default_luma_weight_lx = (1 << Iuma_log2_weight_denom)
(13)
luma_weight_lx[i] = (default_luma_weight_lx delta_luma_weight_lx[i])
(14)
delta_chroma_weight_lx[i][j] = (chroma_weight_lx[i][j] - default_chroma_weight_lx)
(15)
default_chroma_weight_lx = (1 << chroma_log2_weight_denom)
(16)
chroma_weight_lx[i][j] = (default_chroma_weight_lx delta_chroma_weight_lx[i][j])
(17)
En este punto, default_luma_weight_lx, default_chroma_weight_lx son valores por defecto de un caso donde no hay cambio en brillo en el componente de luminancia y el componente de diferencia de color.
La Figura 16 es un diagrama de flujo que ilustra un ejemplo de los procedimientos de predicción de luma_weight_lx[i] de acuerdo con la primera realización.
En primer lugar, la unidad 110B de reconfiguración de índice deriva luma_log2_weight_denom establecido en la información de índice (etapa S301) y calcula default_luma_weight_lx como un valor previsto (etapa S302).
Posteriormente, la unidad 110B de reconfiguración de índice resta default-luma-weight-lx de luma_weight_lx[i] (etapa 5303) y establece un valor de diferencia del mismo en la información de índice como delta_luma_weight_lx[i] (etapa 5304) .
Repitiendo este procedimiento en correspondencia con el número de imágenes de referencia, el procedimiento de predicción puede aplicarse a luma_weight_lx[i].
La Figura 17 es un diagrama de flujo que ilustra un ejemplo del procedimiento de restauración de luma_weight_lx[i] de acuerdo con la primera realización.
En primer lugar, la unidad 110B de reconfiguración de índice deriva delta_luma_weight_lx[i] que ya se ha establecido en la información de índice (etapa S401) y calcula default_luma_weight_lx como un valor previsto (etapa S402). Posteriormente, la unidad 110B de reconfiguración de índice añade delta_luma_weight_lx[i] a default_luma_weight_lx (etapa S403) y establece un valor añadido del mismo en la información de índice como luma_weight_lx[i] (etapa S404). Aunque se ha ilustrado el diagrama de flujo para el componente de luminancia en este punto, pueden realizarse de manera similar un procedimiento de predicción y un procedimiento de restauración para el componente de diferencia de color (chroma_weight_lx[i][j]).
Una imagen que incluye un efecto de desvanecimiento se desvanece en un punto de cambio de desvanecimiento específico, y hay muchos casos donde las otras imágenes son imágenes naturales ordinarias o imágenes que no tienen efecto de desvanecimiento. En un caso de este tipo, hay muchos casos donde el factor de ponderación toma un caso donde no hay cambio en brillo. Por consiguiente, se deriva un valor inicial de un caso donde no hay cambio en brillo basándose en la precisión de punto fijo y se usa como un valor previsto, mediante el cual puede reducirse la cantidad de código del factor de ponderación.
Además, los valores predichos de los factores de ponderación (luma_weight_lx[i] y chroma_weight_lx[i][j]) de la luminancia y la señal de diferencia de color pueden derivarse basándose en otros números de referencia u otros números de POC. En un caso de este tipo, cuando un número de referencia más cerca del corte objetivo de codificación es base_idx, la unidad 110B de reconfiguración de índice realiza un procedimiento de predicción de luma_weight_lx[i] usando la expresión numérica (18) y realiza un procedimiento de restauración del mismo usando la expresión numérica (19). De manera similar, la unidad 110B de reconfiguración de índice realiza un procedimiento de predicción de chroma_weight_lx[i][j] usando la expresión numérica (20) y realiza un procedimiento de restauración del mismo usando la expresión numérica (21).
delta_luma_weight_lx[i] = (luma_weight_lx[i] - luma_weight_lx[base_idx])
(18)
luma_weight_lx[i] = (delta_luma_weight_lx[i] luma_weight_lx[base_idx])
(19)
delta_chroma_weight_lx[i][j] = (chroma_weight_lx[i][j] - chroma_weight_lx[base_idx][j])
(20) chroma_weight_lx[i][j] = (delta_chroma_weight_lx[i][j] chroma_weight_lx[base_idx][j])
(21)
En este punto, en las expresiones numéricas (18) y (20), i t base_idx. Para el factor de ponderación del número de referencia representado por base_idx, no pueden usarse las expresiones numéricas (18) y (20), y por consiguiente, pueden usarse las expresiones numéricas (12), (13), (15), y (16).
La Figura 18 es un diagrama de flujo que ilustra otro ejemplo del procedimiento de predicción de luma_weight_lx[i] de acuerdo con la primera realización.
En primer lugar, la unidad 110B de reconfiguración de índice establece baseidx que representa un número de referencia que es una referencia (etapa S501). En este punto, el valor de baseidx se supone de manera provisional que es "0".
Posteriormente, la unidad 110B de reconfiguración de índice deriva luma_weight_lx[baseidx] de la información de índice como un valor previsto basándose en baseidx (etapa S502). Además, luma_weight_lx[baseidx] de la información de índice representada por baseidx, por ejemplo, no se predice si no que se codifica como un valor directo.
Posteriormente, la unidad 110B de reconfiguración de índice resta luma_weight_lx[baseidx] de luma_weight_lx[i] (etapa S503) y establece un valor de diferencia del mismo delta_luma_weight_lx[i] en la información de índice (etapa S504).
Repitiendo este procedimiento en correspondencia con el número de imágenes de referencia, el procedimiento de predicción puede aplicarse a luma_weight_lx[i] distinto de baseidx.
La Figura 19 es un diagrama de flujo que ilustra otro ejemplo del procedimiento de restauración de luma_weight_lx[i] de acuerdo con la primera realización.
En primer lugar, la unidad 110B de reconfiguración de índice establece baseidx que representa un número de referencia que es una referencia (etapa S601). En este punto, el valor de baseidx se supone de manera provisional que es "0".
Posteriormente, la unidad 110B de reconfiguración de índice deriva luma_weight_lx[baseidx] de la información de índice como un valor previsto basándose en baseidx (etapa S602). Además, luma_weight_lx[baseidx] de la información de índice representada por baseidx, por ejemplo, no se predice si no que se codifica como un valor directo.
Posteriormente, la unidad 110B de reconfiguración de índice añade delta_luma_weight_lx[i] a luma_weight_lx[baseidx] (etapa S603) y establece un valor añadido del mismo como luma_weight_lx[i] en la información de índice (etapa S604).
Aunque se ha ilustrado el diagrama de flujo para el componente de luminancia en este punto, pueden realizarse de manera similar un procedimiento de predicción y un procedimiento de restauración para el componente de diferencia de color (chroma_weight_lx[i][j]). Además, aunque se han descrito el procedimiento de predicción y el procedimiento de restauración de luma_weight_lx[i] como un ejemplo, luma_offset_lx[i] puede predecirse y restaurarse de manera similar.
Además, los valores previstos de los factores de ponderación ((luma_weight_lx[i] y chroma_weight_lx[i][j]) de la luminancia y la señal de diferencia de color pueden derivarse usando una distancia entre el objetivo de codificación y el corte de referencia. En un caso de este tipo, la unidad 110B de reconfiguración de índice realiza un procedimiento de predicción de luma_weight_lx[i] usando la expresión numérica (22) y realiza un procedimiento de restauración del mismo usando la expresión numérica (23). De manera similar, la unidad 110B de reconfiguración de índice realiza un procedimiento de predicción de chroma_weight_lx[i][j] usando la expresión numérica (24) y realiza un procedimiento de restauración del mismo usando la expresión numérica (25).
delta_luma_weight_lx[i] = (luma_weight_lx[i] - luma_weight_lx[i -1 ])
(22)
luma_weight_lx[i] = (delta_luma_weight_lx[i] luma_weight_lx[i -1 ])
(23)
delta_chroma_weight_lx[i][j] = (chroma_weight_lx[i][j] - chroma_weight_lx[i - 1][j]) (24)
chroma_weight_lx[i][j] = (delta_chroma_weight_lx[i][j] chroma_weight_lx[i - 1][j])
(25)
En este punto, en las expresiones numéricas (22) y (24), i í 0.
Además, puesto que estos procedimientos de predicción y restauración son los mismos que aquellos del diagrama de flujo ilustrado en las Figuras 18 y 19 introduciendo el valor de orden (i -1 ) (i í 0) en baseidx, no se presentará la descripción de los mismos. Aunque se ha representado el diagrama de flujo para el componente de luminancia en este punto, el procedimiento de predicción y el procedimiento de restauración pueden realizarse de manera similar para el componente de diferencia de color (chroma_weight_lx[i][j]). Adicionalmente, aunque se han descrito el procedimiento de predicción y el procedimiento de restauración de luma_weight_lx[i] como un ejemplo, luma_offset_lx[i] puede predecirse y restaurarse también de manera similar.
Puede haber muchos casos donde, como un corte de referencia al que puede hacerse referencia mediante el corte objetivo de codificación, se establece un corte que está cerca del corte objetivo de codificación en términos de una distancia en tiempo o en espacio desde el punto de vista de la eficacia de codificación. En este punto, puesto que los cambios de luminancia de cortes que son continuos en distancia tienen una alta correlación, las correlaciones relacionadas con una distancia en el tiempo entre los factores de ponderación y las compensaciones también son altas. Por lo tanto, usando el factor de ponderación y el valor de compensación del corte de referencia que sirve como una referencia, se predicen un factor de ponderación y un valor de compensación de un corte de referencia que es diferente del mismo en el tiempo, mediante los cuales puede reducirse eficazmente la cantidad de código. Además, puesto que hay muchos casos donde cortes de referencia que son los mismos en el espacio toman factores de ponderación y valores de compensación que son iguales, introduciendo una predicción por la misma razón, puede reducirse la cantidad de código.
A continuación, se describirá un procedimiento de predicción de chroma_offset_lx[i][j] que representa una compensación de la señal de diferencia de color. En el espacio de color de YUV, un componente de diferencia de color representa un color que usa la cantidad de una desviación de un valor de mediana. Por consiguiente, la cantidad de cambio basándose en un cambio en brillo con el valor de mediana considerado puede establecerse como un valor previsto usando un factor de ponderación. Más específicamente, la unidad 110B de reconfiguración de índice realiza un procedimiento de predicción de chroma_offset_lx[i][j] usando las expresiones numéricas (26) y (27) y realiza un procedimiento de restauración usando la expresión numérica (28).
delta_chroma_offset_lx[i][j] = (chroma_offset_lx[i][j] ((MED * chroma_weight_lx[i][j]) >> chroma_log2_weight_denom) - MED) (26)
MED = (MaxChromaValue >> 1) (27)
En este punto, MaxChromaValue representa el brillo máximo en el que se obtiene una señal de color diferente. Por ejemplo, en el caso de una señal de 8 bits, MaxChromaValue es 255, y MED es 128.
chroma_offset_lx[i][j] = (delta_chroma_offset_lx[i][j] - ((MED * chroma_weight_lx[i][j]) >> chroma_log2_weight_denom) MED)
(28)
La Figura 20 es un diagrama de flujo que ilustra un ejemplo del procedimiento de predicción de chroma_offset_lx[i][j] de acuerdo con la primera realización.
En primer lugar, la unidad 110B de reconfiguración de índice deriva chroma_log2_weight_denom establecido en la información de índice (etapa S701).
Posteriormente, la unidad 110B de reconfiguración de índice deriva chroma_offset_lx[i][j] establecido en la información de índice (etapa S702).
Posteriormente, la unidad 110B de reconfiguración de índice deriva un valor de mediana de valores máximos (señales máximas) de señales de diferencia de color (etapa S703).
Posteriormente, la unidad 110B de reconfiguración de índice deriva delta_chroma_offset_lx[i][j] y establece delta_chroma_offset_lx[i][j] en la información de índice (etapa S704).
La Figura 21 es un diagrama de flujo que ilustra un ejemplo de un procedimiento de restauración de chroma_offset_lx[i][j] de acuerdo con la primera realización.
En primer lugar, la unidad 110B de reconfiguración de índice deriva chroma_log2_weight_denom que ya se ha establecido en la información de índice (etapa S801).
Posteriormente, la unidad 110B de reconfiguración de índice deriva delta_chroma_offset_lx[i][j] establecido en la información de índice (etapa S802).
Posteriormente, la unidad 110B de reconfiguración de índice deriva un valor de mediana de valores máximos (señales máximas) de señales de diferencia de color (etapa S803).
Posteriormente, la unidad 110B de reconfiguración de índice deriva chroma_offset_lx[i][j] y establece chroma_offset_lx[i][j] en la información de índice (etapa S804).
Introduciendo un valor previsto obtenido considerando la cantidad de una desviación del valor de mediana usando las características de señal de la señal de diferencia de color, la cantidad de código del valor de compensación de la señal de diferencia de color puede ser menor que un caso donde el valor de compensación se codifica directamente.
A continuación, se describirá una técnica de derivación de valores previstos del factor de ponderación y la precisión de punto fijo usando el procedimiento de derivación de parámetros de WP de una predicción ponderada implícita en una predicción ponderada definida en H.264 o similares. En la predicción ponderada implícita de H.264, se deriva un factor de ponderación de acuerdo con una distancia (una relación de tiempo del número de POC) en tiempo entre cortes de referencia (la compensación se vuelve cero). La distancia en tiempo entre los cortes de referencia se obtiene derivando distancias entre un corte objetivo de codificación y los cortes de referencia basándose en los números POC, y el factor de ponderación se determina basándose en la relación de las distancias. En este momento, la precisión de punto fijo se establece a un valor fijo de "5".
Por ejemplo, en H.264, el factor de ponderación se deriva de acuerdo con un pseudo código representado en la expresión numérica (29).
td = Clip3(-128, 127, POCA - POCB)
tb = Clip3(-128, 127, POCT - POCA)
tx = (td ! = 0) ? ((16384 abs(td/2))/td) : (0)
DistScaleFactor = Clip3(-1024, 1023, (tb * tx 32) >> 6)
implicit_luma_weight_I0[i] = 64 -(DistScaleFactor >> 2)
implicit_luma_weight_l1 [i] = DistScaleFactor >> 2 (29)
En este punto, POCA representa un número de POC de una imagen de referencia A que corresponde a Lista 1, POCB representa un número de POC de una imagen de referencia B que corresponde a Lista 0, y POCT representa un número de POC de una imagen objetivo de predicción. Además, Clip3(L, M, N) es una función para realizar un procedimiento de recorte de manera que un último argumento N no supere un intervalo de un valor mínimo L y un valor máximo M representados por los primeros dos argumentos. Una función abs() es una función para devolver un valor absoluto de un argumento. Además, td y tb representan relaciones de tiempo, td representa una diferencia entre un número de POC de una imagen de referencia que corresponde a Lista 1 y un número de POC de una imagen de referencia que corresponde a Lista 0, y tb representa una diferencia entre un número de POC de la imagen objetivo de predicción y un número de POC de la imagen de referencia que corresponde a Lista 0. Basándose en tales valores, se deriva una variable de escalamiento DistScaleFactor en la distancia del factor de ponderación. Basándose en DistScaleFactor, se derivan factores de ponderación (implicit_luma_weight_l0[i] y implicit_luma_weight_l1[i]) que corresponden a Listas 0 y 1. Además, la señal de diferencia de color se establece de manera similar. La unidad 110B de reconfiguración de índice predice la precisión de punto fijo basándose en la expresión numérica (30) usando la precisión de punto fijo implicit_log2_weight_denom derivada en este punto.
delta_luma_log2_weight_denom = (Iuma_log2_weight_denom - implicit_log2_weight_denom) (30)
Además, la precisión de punto fijo de la señal de diferencia de color puede predecirse usando la expresión numérica (30). Este valor se restaura usando la expresión numérica (31).
Iuma_log2_weight_denom = (delta_luma_log2_weight_denom implicit_log2_weight_denom)
(31)
Además, la precisión de punto fijo de la señal de diferencia de color puede restaurarse usando el mismo procedimiento representado en la expresión numérica (31).
A continuación, se describirá una ecuación para predecir el factor de ponderación. Cuando un factor de ponderación implícito es implicit_luma_weight_lx[i], la unidad 110B de reconfiguración de índice predice un factor de ponderación luma_weight_lx[i] usando la expresión numérica (32) y restaura el factor de ponderación usando la expresión numérica (33).
if(luma_log2_weight_denom > = implicit_log2_weight_denom){
norm_denom = (Iuma_log2_weight_denom - implicit_log2_weight_denom)
delta_luma_weight_lx[i] = (luma_weight_lx[i] -(implicit_luma_weight_lx[i] << norm_denom))
}
else{
norm_denom = (implicit_log2_weight_denom - Iuma_log2_weight_denom)
delta_luma_weight_lx[i] = (luma_weight_lx[i] -(implicit_luma_weight_lx[i] >> norm_denom))
} (32)
En este punto, la unidad 110B de reconfiguración de índice corrige el factor de ponderación basándose en si la predicción ponderada implícita es mayor o menor que la precisión de punto fijo y usa el factor de ponderación corregido para la predicción.
if(luma_log2_weight_denom >= implicit_log2_weight_denom){
norm_denom = (Iuma_log2_weight_denom - implicit_log2_weight_denom)
luma_weight_lx[i] = (delta_luma_weight_lx[i] (implicit_luma_weight_lx[i] << norm_denom))
}
else{
norm_denom = (implicit_log2_weight_denom - Iuma_log2_weight_denom)
luma_weight_lx[i] = (delta_luma_weight_lx[i] (implicit_luma_weight_lx[i] >> norm_denom))
} (33)
En la expresión numérica (32), aunque se representa un ejemplo del factor de ponderación del componente de luminancia, usando el mismo procedimiento para el componente de diferencia de color, puede derivarse un valor previsto.
La Figura 22 es un diagrama de flujo que ilustra otro ejemplo de un procedimiento de predicción de luma_weight_lx[i] de acuerdo con la primera realización.
En primer lugar, la unidad 110B de reconfiguración de índice deriva luma_log2_weight_denom establecido en la información de índice (etapa S901).
Posteriormente, la unidad 110B de reconfiguración de índice deriva implicit_log2_weight_denom e implicit_luma_weight_lx[i] de acuerdo con el procedimiento de derivación de una predicción ponderada implícita de H.264 (etapas S902 y S903).
Posteriormente, la unidad 110B de reconfiguración de índice determina si luma_log2_weight_denom es implicit_log2_weight_denom o mayor (etapa S904).
En un caso donde luma_log2_weight_denom es implicit_log2_weight_denom o mayor (Sí en la etapa S904), la unidad 110B de reconfiguración de índice resta implicit_log2_weight_denom de luma_log2_weight_denom (etapa S905) y desplaza implicit_luma_weight_lx[i] al lado izquierdo en una cantidad que corresponde al valor restado, derivando de esta manera un valor previsto (etapa S906).
Por otra parte, en un caso donde luma_log2_weight_denom no es implicit_log2_weight_denom o mayor (No en la etapa S904), la unidad 110B de reconfiguración de índice resta luma_log2_weight_denom de implicit_log2_weight_denom (etapa S907) y desplaza implicit_luma_weight_lx[i] al lado derecho en una cantidad que corresponde al valor restado, derivando de esta manera un valor previsto (etapa S908).
Posteriormente, la unidad 110B de reconfiguración de índice resta el valor previsto derivado de luma_weight_lx[i] (etapa S909) y establece el valor restado (valor de diferencia) en la información de índice (etapa S910).
La Figura 23 es un diagrama de flujo que ilustra otro ejemplo del procedimiento de restauración de luma_weight_lx[i] de acuerdo con la primera realización.
En primer lugar, la unidad 110B de reconfiguración de índice deriva luma_log2_weight_denom que ya se ha establecido en la información de índice (etapa S1001).
Posteriormente, la unidad 110B de reconfiguración de índice deriva implicit_log2_weight_denom e implicit_luma_weight_lx[i] de acuerdo con el procedimiento de derivación de una predicción ponderada implícita de H.264 (etapas S1002 y S1003).
Posteriormente, la unidad 110B de reconfiguración de índice determina si luma_log2_weight_denom es implicit_log2_weight_denom o mayor (etapa S1004).
En un caso donde luma_log2_weight_denom es implicit_log2_weight_denom o mayor (Sí en la etapa S1004), la unidad 110B de reconfiguración de índice resta implicit_log2_weight_denom de luma_log2_weight_denom (etapa S1005) y desplaza implicit_luma_weight_lx[i] al lado izquierdo en una cantidad que corresponde al valor restado, derivando de esta manera un valor previsto (etapa S1006).
Por otra parte, en un caso donde luma_log2_weight_denom no es implicit_log2_weight_denom o mayor (No en la etapa S1004), la unidad 110B de reconfiguración de índice resta luma_log2_weight_denom de implicit_log2_weight_denom (etapa S1007) y desplaza implicit_luma_weight_lx[i] al lado derecho en una cantidad que corresponde al valor restando, derivando de esta manera un valor previsto (etapa S1008).
Posteriormente, la unidad 110B de reconfiguración de índice añade el valor previsto derivado a delta_luma_weight_lx[i] (etapa S1009) y establece el valor añadido del mismo en la información de índice (etapa S1010).
Puede no usarse únicamente una pluralidad de los procedimientos de predicción anteriormente descritos de manera independiente sino también usarse de una manera combinada. Por ejemplo, combinando las expresiones numéricas (10), (12) y (13), (15) y (16), y (26) y (27) o similares, puede reducirse eficazmente la cantidad de código del elemento de sintaxis de la información de índice.
Como anteriormente, de acuerdo con la primera realización, la unidad 108 de ajuste de índice emite información de índice en la que se mapea la información de parámetro de WP en una configuración de sintaxis correspondiente, y la unidad 110B de reconfiguración de índice predice una representación redundante del elemento de sintaxis basándose en la información codificada con el corte. Por lo tanto, de acuerdo con la primera realización, la cantidad de código puede ser menor que la de un caso donde se codifica directamente el elemento de sintaxis (valor directo).
En este punto, basándose en el orden de definición (orden de codificación) de los elementos de sintaxis usados en el corte objetivo de codificación, derivando un valor previsto como una correlación inter-pantalla de un elemento de sintaxis que se ha completado para codificarse o derivando un valor previsto de un valor por defecto obtenido suponiendo ningún cambio en brillo, puede realizarse una predicción aprovechando las características de los elementos de sintaxis. Como resultado, se obtiene una ventaja de reducción de la tara que es necesaria para codificar el elemento de sintaxis.
Además, entre filas de la tabla de sintaxis ilustrada en las Figuras 10 a 13 de acuerdo con la primera realización como ejemplos, puede insertarse un elemento de sintaxis no definido en esta realización, o puede incluirse una descripción relacionada con el otro ramal condicional. Adicionalmente, la tabla de sintaxis puede dividirse en una pluralidad de tablas, o puede integrarse una pluralidad de las tablas de sintaxis. Además, el término de cada elemento de sintaxis representado como un ejemplo puede cambiarse de manera arbitraria.
Como se ha descrito anteriormente, el dispositivo 100 de codificación de acuerdo con la primera realización resuelve un problema de reducción de la eficacia de codificación eliminando la redundancia espacial usando correlaciones entre parámetros de información que van a codificarse. El dispositivo 100 de codificación puede reducir la cantidad de código en comparación con la de una configuración convencional en la que los elementos de sintaxis usados en la predicción de movimiento compensado ponderado se codifican directamente (valores directos).
Segunda realización
En una segunda realización, se describirá un dispositivo de decodificación que codifica datos codificados codificados por el dispositivo de codificación de acuerdo con la primera realización.
La Figura 24 es un diagrama de bloques que ilustra un ejemplo de la configuración de un dispositivo 800 de decodificación de acuerdo con la segunda realización.
El dispositivo 800 de decodificación decodifica datos codificados almacenados en una memoria intermedia de entrada no ilustrada en la figura o similares en una imagen decodificada y emite la imagen decodificada a una memoria intermedia de salida no ilustrada en la figura como una imagen de salida. Los datos codificados, por ejemplo, se emiten desde el dispositivo 100 de codificación ilustrado en la Figura 1 o similares y se introducen al dispositivo 800 de decodificación a través de un sistema de almacenamiento, un sistema de transmisión, una memoria intermedia, o similares no ilustrados en la Figura.
El dispositivo 800 de decodificación, como se ilustra en la Figura 24, incluye: una unidad 801 de decodificación, una unidad 802 de cuantificación inversa; una unidad 803 de transformación ortogonal inversa; una unidad 804 de adición; una unidad 805 de generación de imagen prevista; y una unidad 806 de ajuste de índice. La unidad 802 de cuantificación inversa, la unidad 803 de transformación ortogonal inversa, la unidad 804 de adición, y la unidad 805 de generación de imagen prevista son elementos que son sustancialmente iguales o similares a la unidad 104 de cuantificación inversa, la unidad 105 de transformación ortogonal inversa, la unidad 106 de adición, y la unidad 107 de generación de imagen prevista ilustradas en la Figura 1. Además, una unidad 807 de control de decodificación ilustrada en la Figura 24 controla el dispositivo 800 de decodificación y, por ejemplo, se realiza mediante una CPU o similares.
Para decodificar datos codificados, la unidad 801 de decodificación realiza decodificación basándose en la sintaxis para cada fotograma o cada campo. La unidad 801 de decodificación incluye una unidad 801A de decodificación por entropía y una unidad 801B de reconfiguración de índice.
La unidad 801A de decodificación por entropía realiza de manera secuencial decodificación por entropía de una cadena de código de cada sintaxis y regenera información de movimiento que incluye un modo de predicción, un vector de movimiento, y un número de referencia, información de índice usada para predecir una predicción de movimiento compensado ponderado, y parámetros de codificación de un bloque objetivo de codificación tal como un coeficiente de transformación de cuantificación y similares. En este punto, los parámetros de codificación son todos los parámetros que son necesarios para decodificar información relacionada con un coeficiente de transformación, información relacionada con cuantificación y similares además de aquellos anteriormente descritos.
Más específicamente, la unidad 801A de decodificación por entropía tiene una función para realizar un procedimiento de decodificación tal como un procedimiento de decodificación de longitud variable o un procedimiento de decodificación aritmética para introducir datos codificados. Por ejemplo, en H.264, se usa codificación de longitud variable adaptativa basada en contexto (CAVLC), codificación aritmética binaria adaptativa basada en contexto (CABAC), o similares. Un procedimiento de este tipo también se denomina un procedimiento de decodificación.
La unidad 801B de reconfiguración de índice reconfigura información de índice restaurando la información de índice decodificada. Más específicamente, para reducir la longitud de código de los elementos de sintaxis de la información de índice decodificada, la unidad 801 B de reconfiguración de índice realiza un procedimiento de predicción de acuerdo con las características de parámetros de los elementos de sintaxis, restaura los elementos de sintaxis, y reconfigura la información de índice. Un ejemplo específico del procedimiento de predicción se describirá más adelante.
La unidad 801 de decodificación emite la información de movimiento, la información de índice, y el coeficiente de transformación de cuantificación, para introducir el coeficiente de transformación de cuantificación a la unidad 802 de cuantificación inversa, introduce la información de índice a la unidad 806 de ajuste de índice, e introduce la información de movimiento a la unidad 805 de generación de imagen prevista.
La unidad 802 de cuantificación inversa realiza un procedimiento de cuantificación inversa para el coeficiente de transformación de cuantificación introducido de la unidad 801 de decodificación y obtiene un coeficiente de transformación de restauración. Más específicamente, la unidad 802 de cuantificación inversa realiza cuantificación inversa basándose en la información de cuantificación usada por la unidad 801 de decodificación. Descrito en más detalle, la unidad 802 de cuantificación inversa multiplica el coeficiente de transformación de cuantificación por un tamaño de etapa de cuantificación derivado basándose en la información de cuantificación, obteniendo de esta manera un coeficiente de transformación restaurado. La unidad 802 de cuantificación inversa emite el coeficiente de transformación restaurado para introducirse a la unidad 803 de transformación ortogonal inversa.
La unidad 803 de transformación ortogonal inversa realiza una transformación ortogonal inversa que corresponde a la transformación ortogonal realizada en el lado de codificación para el coeficiente de transformación restaurado introducido de la unidad 802 de cuantificación inversa, obteniendo de esta manera un error de predicción restaurado. La unidad 803 de transformación ortogonal inversa emite el error de predicción restaurado para introducirse a la unidad 804 de adición.
La unidad 804 de adición añade el error de predicción restaurado introducido de la unidad 803 de transformación ortogonal inversa y una correspondiente imagen prevista, generando de esta manera una imagen decodificada. La unidad 804 de adición emite la imagen decodificada para introducirse a la unidad 805 de generación de imagen prevista. Además, la unidad 804 de adición emite la imagen decodificada al exterior como una imagen de salida. Posteriormente, la imagen de salida se almacena temporalmente en una memoria intermedia de salida externa no ilustrada en la figura o similares y se emite a un sistema de dispositivo de visualización tal como una pantalla o un monitor no ilustrado en la figura o un sistema de dispositivo de vídeo, por ejemplo, a temporización de salida gestionada por la unidad 807 de control de decodificación.
La unidad 806 de ajuste de índice recibe la información de índice introducida de la unidad 801 de decodificación, convierte la información de índice en información de parámetro de WP, y emite la información de parámetro de WP para introducirse a la unidad 805 de generación de imagen prevista. Más específicamente, la unidad 806 de ajuste de índice recibe la información de índice que se ha procesado para decodificarse por la unidad 801A de decodificación por entropía y se reconfigura por la unidad 801B de reconfiguración de índice. A continuación, la unidad 806 de ajuste de índice comprueba una lista de imágenes de referencia y un número de referencia, convierte la información de índice en información de parámetro de WP, y emite la información de parámetro de WP convertida a la unidad 805 de generación de imagen prevista. La información de parámetro de WP ya se ha descrito con referencia a las Figuras 8A y 8B, y por lo tanto, no se presentará una descripción de la misma.
La unidad 805 de generación de imagen prevista genera una imagen 815 prevista usando la información de movimiento introducida de la unidad 801 de decodificación, la información de parámetro de WP introducida de la unidad 806 de ajuste de índice, y la imagen decodificada introducida de la unidad 804 de adición.
En este punto, se describirá la unidad 805 de generación de imagen prevista en detalle con referencia a la Figura 4. La unidad 805 de generación de imagen prevista, de manera similar a la unidad 107 de generación de imagen prevista, incluye: una unidad 201 de compensación de movimiento de múltiples fotogramas; una memoria 202; una unidad 203 de compensación de movimiento unidireccional; una unidad 204 de control de parámetro de predicción; un selector 205 de imagen de referencia; una memoria 206 de fotograma; y una unidad 207 de control de imagen de referencia.
La memoria 206 de fotograma almacena la imagen decodificada introducida de la unidad 106 de adición como una imagen de referencia bajo el control de la unidad 207 de control de imagen de referencia. La memoria 206 de fotograma incluye una pluralidad de conjuntos de memoria FM1 a FMN (en este punto, N > 2 ) usada para almacenar temporalmente la imagen de referencia.
La unidad 204 de control de parámetro de predicción prepara una pluralidad de combinaciones cada una de un número de imagen de referencia y un parámetro de predicción como una tabla basándose en la información de movimiento introducida de la unidad 801 de decodificación. En este punto, la información de movimiento representa información de un vector de movimiento que representa la desviación de un movimiento que se usa para la predicción de movimiento compensado, el número de imagen de referencia, y un modo de predicción tal como una predicción unidireccional/bidireccional. El parámetro de predicción representa información relacionada con el vector de movimiento y el modo de predicción. A continuación, la unidad 204 de control de parámetro de predicción selecciona una combinación de un número de imagen de referencia y un parámetro de predicción usados para generar una imagen prevista basándose en la información de movimiento y emite la combinación seleccionada para permitir el número de imagen de referencia para introducirse al selector 205 de imagen de referencia y permite que el parámetro de predicción se introduzca a la unidad 203 de compensación de movimiento unidireccional.
El selector 205 de imagen de referencia es un conmutador que cambia de terminales de salida de las memorias de fotograma FM1 a FMN, que están incluidas en la memoria 206 de fotograma, para conectarse basándose en un número de imagen de referencia introducido de la unidad 204 de control de parámetro de predicción. Por ejemplo, cuando el número de imagen de referencia es "0", el selector 205 de imagen de referencia conecta el terminal de salida de la memoria de fotograma FM1 al terminal de salida del selector 205 de imagen de referencia, y, cuando el número de imagen de referencia es N-1, el selector 205 de imagen de referencia conecta el terminal de salida de la memoria de fotograma FMN al terminal de salida del selector 205 de imagen de referencia. El selector 205 de imagen de referencia emite una imagen de referencia almacenada en la memoria de fotograma de la cual el terminal de salida está conectada al mismo de entre las memorias de fotograma FM1 a FMN incluido en la memoria 206 de fotograma para introducirse a la unidad 203 de compensación de movimiento unidireccional. En el dispositivo 800 de decodificación, la imagen de referencia no se usa por cualquier unidad distinta de la unidad 805 de generación de imagen prevista, y por consiguiente, la imagen de referencia no puede emitirse al exterior de la unidad 805 de generación de imagen prevista.
La unidad 203 de compensación de movimiento previsto unidireccional realiza un procedimiento de predicción de movimiento compensado basándose en el parámetro de predicción introducido de la unidad 204 de control de parámetro de predicción y la imagen de referencia introducida del selector 205 de imagen de referencia, generando de esta manera una imagen prevista unidireccional. La predicción de movimiento compensado ya se ha descrito con referencia a la Figura 5, y por lo tanto, no se presentará una descripción de la misma.
La unidad 203 de compensación de movimiento previsto unidireccional emite una imagen prevista unidireccional y almacena temporalmente la imagen prevista unidireccional en la memoria 202. En este punto, en un caso donde la información de movimiento (parámetro de predicción) representa una predicción bidireccional, la unidad 201 de compensación de movimiento de múltiples fotogramas hace una predicción ponderada usando dos tipos de imágenes previstas unidireccionales. Por consiguiente, la unidad 203 de compensación de movimiento previsto unidireccional almacena una imagen prevista unidireccional que corresponde al primer tipo en la memoria 202 y emite directamente una imagen prevista unidireccional que corresponde al segundo tipo a la unidad 201 de compensación de movimiento de múltiples fotogramas. En este punto, la imagen prevista unidireccional que corresponde al primer tipo se denominará como una primera imagen prevista, y la imagen prevista unidireccional que corresponde al segundo tipo se denominará como una segunda imagen prevista.
Además, pueden prepararse dos unidades 203 de compensación de movimiento unidireccionales y generar dos imágenes previstas unidireccionales. En un caso de este tipo, cuando la información de movimiento (parámetro de predicción) representa una predicción unidireccional, la unidad 203 de compensación de movimiento unidireccional puede emitir directamente la primera imagen prevista unidireccional a la unidad 201 de compensación de movimiento de múltiples fotogramas como una primera imagen prevista.
La unidad 201 de compensación de movimiento de múltiples fotogramas hace una predicción ponderada usando la primera imagen prevista introducida de la memoria 202, la segunda imagen prevista introducida de la unidad 203 de compensación de movimiento previsto unidireccional, y la información de parámetro de WP introducida de la unidad 109 de evaluación de movimiento, generando de esta manera una imagen prevista. La unidad 201 de compensación de movimiento de múltiples fotogramas emite la imagen prevista para introducirse a la unidad 804 de adición.
En este punto, se describirá la unidad 201 de compensación de movimiento de múltiples fotogramas en detalle con referencia a la Figura 6. De manera similar a la unidad 107 de generación de imagen prevista, la unidad 201 de compensación de movimiento de múltiples fotogramas incluye: una unidad 301 de compensación de movimiento por defecto; una unidad 302 de compensación de movimiento ponderado; una unidad 303 de control de parámetro de WP; y selectores 304 y 305 de WP.
La unidad 303 de control de parámetro de WP emite una bandera de aplicación de WP e información de ponderación basándose en la información de parámetro de WP introducida de la unidad 806 de ajuste de índice para introducir la bandera de aplicación de WP a los selectores 304 y 305 de WP e introducir la información de ponderación a la unidad 302 de compensación de movimiento ponderado.
En este punto, la información de parámetro de WP incluye información de la precisión de punto fijo del factor de ponderación, una primera bandera de aplicación de WP, un primer factor de ponderación, y una primera compensación que corresponde a la primera imagen prevista, y una segunda bandera de aplicación de WP, un segundo factor de ponderación, y una segunda compensación que corresponde a la segunda imagen prevista. La bandera de aplicación de WP es un parámetro que puede establecerse para cada correspondiente imagen de referencia y componente de señal y representa si se realiza o no una predicción de compensación de movimiento ponderado. La información de ponderación incluye información de la precisión de punto fijo del factor de ponderación, el primer factor de ponderación, la primera compensación, el segundo factor de ponderación, y la segunda compensación. En este punto, la información de parámetro de WP representa la misma información que la de la primera realización.
Descrita en detalle, cuando la información de parámetro de WP se introduce de la unidad 806 de ajuste de índice, la unidad 303 de control de parámetro de WP emite la información de parámetro de WP dividiéndose en la primera bandera de aplicación de WP, la segunda bandera de aplicación de WP, y la información de ponderación, introduciendo de esta manera la primera bandera de aplicación de WP al selector de W p 304, introduciendo la segunda bandera de aplicación de WP al selector de WP 305, e introduciendo la información de ponderación a la unidad 302 de compensación de movimiento ponderado.
Los selectores 304 y 305 de WP cambian los extremos de conexión de las imágenes previstas basándose en las banderas de aplicación de WP introducidas de la unidad 303 de control de parámetro de WP. En un caso donde la correspondiente bandera de aplicación de WP es "0", cada uno de los selectores 304 y 305 de WP conecta el extremo emitido del mismo a la unidad 301 de compensación de movimiento por defecto. A continuación, los selectores 304 y 305 de WP emiten la primera y segunda imágenes previstas para introducirse a la unidad 301 de compensación de movimiento por defecto. Por otra parte, en un caso donde la correspondiente bandera de aplicación de WP es "1", cada uno de los selectores 304 y 305 de WP conecta el extremo de salida de los mismos a la unidad 302 de compensación de movimiento ponderado. A continuación, los selectores 304 y 305 de WP emiten la primera y segunda imágenes previstas para introducirse a la unidad 302 de compensación de movimiento ponderado.
La unidad 301 de compensación de movimiento por defecto realiza procesamiento promedio basándose en las dos imágenes previstas unidireccionales (la primera y segunda imágenes previstas) introducidas de los selectores 304 y 305 de WP, generando de esta manera una imagen prevista. Más específicamente, en un caso donde la primera y segunda banderas de aplicación de WP son "0", la unidad 301 de compensación de movimiento por defecto realiza procesamiento promedio basándose en la expresión numérica (1).
Además, en un caso donde el modo de predicción representado por la información de movimiento (parámetro de predicción) es la predicción unidireccional, la unidad 301 de compensación de movimiento por defecto calcula una imagen prevista final usando únicamente la primera imagen prevista basándose en la expresión numérica (4).
La unidad 302 de compensación de movimiento ponderado realiza compensación de movimiento ponderado basándose en las dos imágenes previstas unidireccionales (la primera y segunda imágenes previstas) introducidas de los selectores 304 y 305 de WP y la información de ponderación introducida de la unidad 303 de control de parámetro de WP. Más específicamente, la unidad 302 de compensación de movimiento ponderado realiza el procedimiento de ponderación basándose en la expresión numérica (7) en un caso donde la primera y segunda banderas de aplicación de WP son "1".
Además, en un caso donde la precisión de cálculo de la primera y segunda imágenes previstas y la precisión de cálculo de la imagen prevista son diferentes entre sí, la unidad 302 de compensación de movimiento ponderado realiza un procedimiento de redondeo controlando logWDC, que es precisión de punto fijo, como en la expresión numérica (8).
Además, en un caso donde el modo de predicción representado por la información de movimiento (parámetro de predicción) es una predicción unidireccional, la unidad 302 de compensación de movimiento ponderado calcula una imagen prevista final usando únicamente la primera imagen prevista basándose en la expresión numérica (9).
Además, en un caso donde la precisión de cálculo de la primera y segunda imágenes previstas y la precisión de cálculo de la imagen prevista son diferentes entre sí, la unidad 302 de compensación de movimiento ponderado realiza un procedimiento de redondeo controlando logWDC, que es precisión de punto fijo, como en la expresión numérica (8), de manera similar caso de la predicción bidireccional.
La precisión de punto fijo del factor de ponderación ya se ha descrito con referencia a la Figura 7, y por lo tanto, no se presentará una descripción de la misma. Además, en el caso de una predicción unidireccional, no se usan diversos parámetros (la segunda bandera de aplicación de WP, el segundo factor de ponderación, y la segunda información de compensación) que corresponden a la segunda imagen prevista y pueden establecerse a valores iniciales determinados con antelación.
La unidad 801 de decodificación usa la sintaxis 500 representada en la Figura 9. La sintaxis 500 representa la estructura de datos codificados que es un objetivo de decodificación de la unidad 801 de decodificación. La sintaxis 500 ya se ha descrito con referencia a la Figura 9, y por lo tanto, no se presentará una descripción de la misma. Además, la sintaxis 505 de conjunto de parámetros de instantánea ya se ha descrito con referencia a la Figura 10 excepto que se usa decodificación en lugar de codificación, y por lo tanto, no se presentará una descripción de la misma. Adicionalmente, la sintaxis 507 de encabezamiento de corte ya se ha descrito con referencia a la Figura 11 excepto que se usa decodificación en lugar de codificación, y por lo tanto, no se presentará una descripción de la misma. Además, la sintaxis 508 de tabla de peso de predicción ya se ha descrito con referencia a la Figura 12 excepto que se usa decodificación en lugar de codificación, y por lo tanto, no se presentará una descripción de la misma.
En este punto, se describirá un procedimiento de predicción de cada elemento de sintaxis relacionado con la predicción ponderada en la configuración de sintaxis en detalle. La predicción del elemento de sintaxis se realiza por la unidad 801B de reconfiguración de índice. La configuración de sintaxis que representa explícitamente el procedimiento de predicción de acuerdo con la segunda realización es la misma que la de la segunda realización y es como se ilustra en la Figura 13.
En el procedimiento de predicción inter-señal de luma_log2_weight_denom y chroma_log2_weight_denom que representa la precisión de punto fijo del factor de ponderación, se realiza un procedimiento de restauración usando la expresión numérica (11). Los detalles del procedimiento de restauración son como se ilustra en la Figura 15.
En el procedimiento de predicción de luma_weight_lx[i] y chroma_weight_lx[i][j] que representa factores de ponderación de la luminancia y la señal de diferencia de color, se realiza un procedimiento de restauración usando las expresiones numéricas (14) y (17). Los detalles del procedimiento de restauración son como se ilustra en la Figura 17.
En el procedimiento de predicción en el que se derivan valores previstos de los factores de ponderación (luma_weight_lx[i] y chroma_weight_lx[i][j]) de la luminancia y la señal de diferencia de color con otros números de referencia u otros números de POC, se realiza un procedimiento de restauración usando las expresiones numéricas (19) y (21). Los detalles del procedimiento de restauración son como se ilustra en la Figura 19.
En el procedimiento de predicción en el que se derivan valores previstos de los factores de ponderación (luma_weight_lx[i] y chroma_weight_lx[i][j]) de la luminancia y la señal de diferencia de color usando una distancia entre un objetivo de codificación y el corte de referencia, se realiza un procedimiento de restauración usando las expresiones numéricas (23) y (25). Los detalles del procedimiento de restauración son los mismos que aquellos del diagrama de flujo ilustrado en la Figura 19 introduciendo el valor de orden (i-1) (i t 0) en baseidx.
En la técnica para derivar valores previstos del factor de ponderación y la precisión de punto fijo usando el procedimiento de derivación de un parámetro de WP de la predicción ponderada implícita definida en H.264 y similares, se realiza un procedimiento de restauración usando las expresiones numéricas (31) y (33). Los detalles del procedimiento de restauración son como se ilustra en la Figura 23.
Puede no usarse únicamente una pluralidad de las técnicas de predicción anteriormente descritos de manera independiente sino también usarse de una manera combinada. Por ejemplo, combinando las expresiones numéricas (11), (14), (17), y (28), es posible reducir de manera eficaz la cantidad de código de elementos de sintaxis de la información de índice.
Como anteriormente, de acuerdo con la segunda realización, el dispositivo 800 de decodificación elimina la redundancia espacial usando la correlación entre parámetros de la información que va a codificarse, mediante lo cual se resuelve un problema de reducción de la eficacia de codificación. El dispositivo 800 de decodificación puede reducir la cantidad de código en comparación con la de una configuración convencional en la que se codifican directamente los elementos de sintaxis usados en la predicción de compensación de movimiento ponderado (valores directos).
Modificación
En la primera y segunda realizaciones anteriormente descritas, se ha descrito un ejemplo en el que el fotograma se divide en bloques rectangulares, teniendo cada uno un tamaño de 16 x 16 píxeles o similares y se codifica/decodifica en orden desde un bloque superior izquierda de la pantalla hacia el bloque inferior derecho (véase la Figura 2A). Sin embargo, el orden de codificación y el orden de decodificación no están limitados a aquellos ilustrados en este ejemplo. Por ejemplo, la codificación y la decodificación puede realizarse en orden desde el lado inferior derecho hacia el lado superior izquierdo, o la codificación y la decodificación pueden realizarse para dibujar un remolino desde el centro de la pantalla hacia el extremo de la pantalla. Además, la codificación y la decodificación pueden realizarse en el orden desde el lado superior derecho hacia el lado inferior izquierdo, o la codificación y la decodificación pueden realizarse para dibujar un remolino desde el extremo de la pantalla hacia el centro de la pantalla. En un caso de este tipo, puesto que cambia la posición de un bloque de píxeles adyacente al que puede hacerse referencia de acuerdo con el orden de codificación, la posición puede cambiarse a una posición de manera apropiada usable.
En la primera y segunda realizaciones anteriormente descritas, aunque se ha presentado la descripción con el tamaño de un bloque objetivo de predicción tal como un bloque de píxeles de 4 x 4, un bloque de píxeles de 8 x 8, un bloque de píxeles de 16 x 16 o similares que se ilustran como un ejemplo, el bloque objetivo de predicción puede no tener una forma de bloque uniforme. Por ejemplo, el tamaño del bloque objetivo de predicción puede ser un bloque de píxeles de 16 x 8, un bloque de píxeles de 8 x 16, un bloque de píxeles de 8 x 4, un bloque de píxeles de 4 x 8, o similares. Además, no es necesario uniformizar todos los tamaños de bloque en un bloque de árbol de codificación, y puede mezclarse una pluralidad de tamaños de bloque diferentes entre sí. En un caso donde se mezcla una pluralidad de tamaños de bloque diferentes entre sí en un bloque de árbol de codificación, la cantidad de código para codificar o decodificar información de división aumenta de acuerdo con un aumento en el número de divisiones. Por lo tanto, se prefiere seleccionar un tamaño de bloque en consideración del equilibrio entre la cantidad de código de la información de división y la calidad de una imagen codificada o una imagen decodificada local.
En la primera y segunda realizaciones anteriormente descritas, para la simplificación, se ha presentado una descripción comprensiva para un componente de señal de color sin que se diferencien entre sí los procedimientos de predicción de la señal de luminancia y la señal de diferencia de color. Sin embargo, en un caso donde los procedimientos de predicción de la señal de luminancia y la señal de diferencia de color son diferentes entre sí, puede usarse el mismo procedimiento de predicción o procedimientos de predicción diferentes entre sí. En un caso donde se usan procedimientos de predicción diferentes entre sí para la señal de luminancia y la señal de diferencia de color, puede realizarse codificación o decodificación usando el procedimiento de predicción seleccionado para la señal de diferencia de color de manera similar a la de para la señal de luminancia.
En la primera y segunda realizaciones anteriormente descritas, para la simplificación, se ha presentado una descripción comprensiva para un componente de señal de color sin que se diferencien entre sí los procedimientos de predicción de movimiento compensado ponderado de la señal de luminancia y la señal de diferencia de color. Sin embargo, en un caso donde los procedimientos de predicción de movimiento compensado ponderado de la señal de luminancia y la señal de diferencia de color son diferentes entre sí, puede usarse el mismo procedimiento de predicción de movimiento compensado ponderado o procedimientos de predicción de movimiento compensado ponderados diferentes entre sí. En un caso donde se usan procedimientos de predicción de movimiento compensado ponderado diferentes entre sí para la señal de luminancia y la señal de diferencia de color, puede realizarse codificación o decodificación usando el procedimiento de predicción de movimiento compensado ponderado para la señal de diferencia de color se manera similar que para la señal de luminancia.
En la primera y segunda realizaciones anteriormente descritas, entre las filas de la tabla representada en la configuración de sintaxis, puede insertarse un elemento de sintaxis que no se define en esta realización, y puede incluirse una descripción relacionada con los otros ramales condicionales. Como alternativa, una tabla de sintaxis puede dividirse en una pluralidad de tablas, o las tablas de sintaxis pueden integrarse juntas. Además, puede no usarse necesariamente el mismo término, sino que puede cambiarse de manera arbitraria el término de acuerdo con una forma usada.
Como se ha descrito anteriormente, de acuerdo con cada realización, se resuelve el problema de codificación de información redundante de la configuración de sintaxis en el momento de realizar una predicción de compensación de movimiento ponderado, y se realiza el procedimiento de predicción de movimiento compensado ponderado que tiene alta eficacia. Por lo tanto, de acuerdo con cada realización, se mejora la eficacia de codificación, y se mejora la calidad de imagen subjetiva.
Por ejemplo, puede proporcionarse un programa que realiza el procedimiento de cada realización anteriormente descrita almacenándose en un medio de almacenamiento legible por ordenador. Como el medio de almacenamiento, puede usarse un medio de almacenamiento que puede almacenar un programa y puede leerse por un ordenador tal como un disco magnético, un disco óptico (un CD-ROM, un CD-R, un DVD, o similares), un disco magneto-óptico (un MO o similares), o una memoria de semiconductores independientemente de la forma de almacenamiento.
Además, el programa que realiza el procedimiento de cada realización puede almacenarse en un ordenador (servidor) conectado a una red tal como internet y puede descargarse a un ordenador (cliente) a través de la red.
Lista de signos de referencia
100 DISPOSITIVO DE CODIFICACIÓN
101 UNIDAD DE RESTA
102 UNIDAD DE TRANSFORMACIÓN ORTOGONAL
103 UNIDAD DE CUANTIFICACIÓN
104 UNIDAD DE CUANTIFICACIÓN INVERSA
105 UNIDAD DE TRANSFORMACIÓN ORTOGONAL INVERSA
106 UNIDAD DE ADICIÓN
107 UNIDAD DE GENERACIÓN DE IMAGEN PREVISTA
108 UNIDAD DE AJUSTE DE ÍNDICE
109 UNIDAD DE EVALUACIÓN DE MOVIMIENTO
110 UNIDAD DE CODIFICACIÓN
110A UNIDAD DE CODIFICACIÓN POR ENTROPÍA
110B UNIDAD DE RECONFIGURACIÓN DE ÍNDICE
111 UNIDAD DE CONTROL DE CODIFICACIÓN
201 UNIDAD DE COMPENSACIÓN DE MOVIMIENTO DE MÚLTIPLES FOTOGRAMAS
202 MEMORIA
203 UNIDAD DE COMPENSACIÓN DE MOVIMIENTO UNIDIRECCIONAL
204 UNIDAD DE CONTROL DE PARÁMETRO DE PREDICCIÓN
205 SELECTOR DE IMAGEN DE REFERENCIA
206 MEMORIA DE FOTOGRAMA
207 UNIDAD DE CONTROL DE IMAGEN DE REFERENCIA
301 UNIDAD DE COMPENSACIÓN DE MOVIMIENTO POR DEFECTO
302 UNIDAD DE COMPENSACIÓN DE MOVIMIENTO PONDERADO
303 UNIDAD DE CONTROL DE PARÁMETRO DE WP
304, 305 SELECTOR DE WP
DISPOSITIVO DE DECODIFICACIÓN
UNIDAD DE DECODIFICACIÓN A UNIDAD DE DECODIFICACIÓN POR ENTROPÍA B UNIDAD DE RECONFIGURACIÓN DE ÍNDICE UNIDAD DE CUANTIFICACIÓN INVERSA UNIDAD DE TRANSFORMACIÓN ORTOGONAL INVERSA UNIDAD DE ADICIÓN UNIDAD DE GENERACIÓN DE IMAGEN PREVISTA UNIDAD DE AJUSTE DE ÍNDICE UNIDAD DE CONTROL DE DECODIFICACIÓN

Claims (16)

REIVINDICACIONES
1. Un aparato (800) electrónico, que comprende
un módulo (801) decodificador configurado para:
decodificar un denominador para un factor de ponderación de luma de una imagen objetivo a partir de datos codificados que comprenden una secuencia de bits de vídeo codificado usando predicción ponderada, en el que el denominador para el factor de ponderación de luma representa precisión de punto fijo del factor de ponderación de luma;
decodificar un primer valor de diferencia que es igual a un valor de una diferencia entre un denominador para un factor de ponderación de croma de la imagen objetivo a partir de los datos codificados y el denominador para el factor de ponderación de luma, en el que el denominador para el factor de ponderación de croma representa precisión de punto fijo del factor de ponderación de croma;
derivar el denominador para el factor de ponderación de croma añadiendo el denominador para el factor de ponderación de luma y el primer valor de diferencia;
derivar un primer valor de referencia del factor de ponderación de luma de acuerdo con el denominador para el factor de ponderación de luma, en el que el primer valor de referencia es igual a un valor obtenido mediante el desplazamiento a la izquierda de "1" en al menos un dígito binario especificado por el denominador para el factor de ponderación de luma;
decodificar un valor de diferencia del factor de ponderación de luma a partir de los datos codificados, en el que el valor de diferencia del factor de ponderación de luma es igual a un valor de una diferencia entre el factor de ponderación de luma y el primer valor de referencia;
derivar el factor de ponderación de luma añadiendo el primer valor de referencia y el valor de diferencia del factor de ponderación de luma;
derivar un valor de referencia del factor de ponderación de croma de acuerdo con el denominador para el factor de ponderación de croma, en el que el valor de referencia del factor de ponderación de croma es igual a un valor obtenido mediante el desplazamiento a la izquierda de "1" en al menos un dígito binario especificado por el denominador para el factor de ponderación de croma;
decodificar un valor de diferencia del factor de ponderación de croma a partir de los datos codificados, en el que el valor de diferencia del factor de ponderación de croma es igual a un valor de una diferencia entre el factor de ponderación de croma y el valor de referencia del factor de ponderación de croma; y
derivar el factor de ponderación de croma añadiendo el valor de referencia del factor de ponderación de croma y el valor de diferencia del factor de ponderación de croma.
2. El aparato (800) electrónico de acuerdo con la reivindicación 1, en el que
el módulo (801) decodificador está configurado adicionalmente para:
derivar un valor de referencia de una compensación de croma de la imagen objetivo restando un valor obtenido multiplicando tanto un valor de mediana de un valor de píxel máximo para un croma por el factor de ponderación de croma como desplazando a la derecha para el al menos un dígito binario especificado por el denominador para el factor de ponderación de croma, a partir del valor de mediana;
decodificar un valor de diferencia de la compensación de croma a partir de los datos codificados, en el que el valor de diferencia de la compensación de croma es igual a un valor de una diferencia entre la compensación de croma y el valor de referencia del factor de ponderación de croma; y
derivar la compensación de croma añadiendo el valor de referencia de la compensación de croma y el valor de diferencia de la compensación de croma.
3. El aparato (800) electrónico de acuerdo con la reivindicación 1 o 2, en el que
el valor obtenido mediante el desplazamiento a la izquierda de "1" por el al menos un dígito binario especificado por el denominador para el factor de ponderación de luma es igual a un factor de ponderación de luma específico usado si la imagen objetivo no tenía diferencia en luma a partir de una imagen de referencia; y
el valor obtenido mediante el desplazamiento a la izquierda de "1" por el al menos un dígito binario especificado por el denominador para el factor de ponderación de croma es igual a un factor de ponderación de croma específico usado si la imagen objetivo no tenía diferencia en croma a partir de la imagen de referencia.
4. El aparato (800) electrónico de acuerdo con una cualquiera de las reivindicaciones 1 a 3, en el que
el módulo (801, 805) decodificador está configurado adicionalmente para:
decodificar una compensación de luma de la imagen objetivo a partir de los datos codificados;
derivar un valor de luma previsto usando al menos la multiplicación de un componente de luma de una imagen de referencia por el factor de ponderación de luma, desplazar a la derecha por el al menos un dígito binario especificado por el denominador para el factor de ponderación de luma, y la adición de la compensación de luma; y
derivar un valor de croma previsto usando la menos la multiplicación de un componente de crominancia de la imagen de referencia por el factor de ponderación de croma, desplazar a la derecha el al menos un dígito binario especificado por el denominador para el factor de ponderación de croma, y la adición de la compensación de croma.
5. El aparato (800) electrónico de acuerdo con la reivindicación 4, en el que
el módulo (801, 802, 803, 804) decodificador está configurado adicionalmente para:
decodificar un coeficiente de transformada a partir de los datos codificados;
derivar un valor de error de predicción usando al menos una transformada inversa del coeficiente de transformada; y
derivar una imagen decodificada usando al menos el valor de error de predicción, el valor de luma previsto, y el valor de croma previsto.
6. El aparato (800) electrónico de acuerdo con la reivindicación 3 o 4, en el que
el módulo (801, 805) decodificador está configurado adicionalmente para:
decodificar un vector de movimiento a partir de los datos codificados; y
determinar la imagen de referencia basándose en el vector de movimiento.
7. El aparato (800) electrónico de acuerdo con una cualquiera de las reivindicaciones 1 a 6, que comprende adicionalmente:
un módulo receptor configurado para recibir los datos codificados mediante un enlace de comunicación; y una memoria intermedia configurada para almacenar temporalmente al menos parte de los datos codificados, en el que
el módulo (801) decodificador está configurado adicionalmente para:
leer al menos parte de los datos codificados a partir de la memoria intermedia; y
decodificar parámetros en los datos codificados, y
el módulo (801) decodificador es una unidad de procesamiento central (CPU).
8. El aparato (800) electrónico de acuerdo con una cualquiera de las reivindicaciones 1 a 6, que comprende adicionalmente:
un módulo receptor configurado para recibir los datos codificados mediante un enlace de comunicación; y una memoria intermedia configurada para almacenar temporalmente al menos parte de los datos codificados, en el que
el módulo (801) decodificador está configurado adicionalmente para:
leer al menos parte de los datos codificados a partir de la memoria intermedia; y
decodificar parámetros en los datos codificados, y
el módulo (801) decodificador es un procesador de señales digitales (DSP) o un campo de matrices de puertas programables (FPGA).
9. Un procedimiento de decodificación, que comprende
introducir datos codificados que comprenden una secuencia de bits de vídeo codificado usando predicción ponderada; decodificar un denominador para un factor de ponderación de luma de una imagen objetivo a partir de los datos codificados, en el que el denominador para el factor de ponderación de luma representa precisión de punto fijo del factor de ponderación de luma;
decodificar un primer valor de diferencia que es igual a un valor de una diferencia entre un denominador para un factor de ponderación de croma de la imagen objetivo a partir de los datos codificados y el denominador para el factor de ponderación de luma, en el que el denominador para el factor de ponderación de croma representa precisión de punto fijo del factor de ponderación de croma;
derivar el denominador para el factor de ponderación de croma añadiendo el denominador para el factor de ponderación de luma y el primer valor de diferencia;
derivar un primer valor de referencia del factor de ponderación de luma de acuerdo con el denominador para el factor de ponderación de luma, en el que el primer valor de referencia es igual a un valor obtenido mediante el desplazamiento a la izquierda de "1" en al menos un dígito binario especificado por el denominador para el factor de ponderación de luma;
decodificar un valor de diferencia del factor de ponderación de luma a partir de los datos codificados, en el que el valor de diferencia del factor de ponderación de luma es igual a un valor de una diferencia entre el factor de ponderación de luma y el primer valor de referencia; derivar el factor de ponderación de luma añadiendo el primer valor de referencia y el valor de diferencia del factor de ponderación de luma;
derivar un valor de referencia del factor de ponderación de croma de acuerdo con el denominador para el factor de ponderación de croma, en el que el valor de referencia del factor de ponderación de croma es igual a un valor obtenido mediante el desplazamiento a la izquierda de "1" en al menos un dígito binario especificado por el denominador para el factor de ponderación de croma;
decodificar un valor de diferencia del factor de ponderación de croma a partir de los datos codificados, en el que el valor de diferencia del factor de ponderación de croma es igual a un valor de una diferencia entre el factor de ponderación de croma y el valor de referencia del factor de ponderación de croma; y
derivar el factor de ponderación de croma añadiendo el valor de referencia del factor de ponderación de croma y el valor de diferencia del factor de ponderación de croma.
10. El procedimiento de decodificación de acuerdo con la reivindicación 9, en el que
el procedimiento comprende adicionalmente:
derivar un valor de referencia de una compensación de croma de la imagen objetivo restando un valor obtenido multiplicando tanto un valor de mediana de un valor de píxel máximo para un croma por el factor de ponderación de croma como desplazando a la derecha para el al menos un dígito binario especificado por el denominador para el factor de ponderación de croma, a partir del valor de mediana;
decodificar un valor de diferencia de la compensación de croma a partir de los datos codificados, en el que el valor de diferencia de la compensación de croma es igual a un valor de una diferencia entre la compensación de croma y el valor de referencia del factor de ponderación de croma; y
derivar la compensación de croma añadiendo el valor de referencia de la compensación de croma y el valor de diferencia de la compensación de croma.
11. El procedimiento de decodificación de acuerdo con la reivindicación 9 o 10, en el que
el valor obtenido mediante el desplazamiento a la izquierda de "1" por el al menos un dígito binario especificado por el denominador para el factor de ponderación de luma es igual a un factor de ponderación de luma específico usado si la imagen objetivo no tiene diferencia en luma a partir de una imagen de referencia; y
el valor obtenido mediante el desplazamiento a la izquierda de "1" por el al menos un dígito binario especificado por el denominador para el factor de ponderación de croma es igual a un factor de ponderación de croma específico usado si la imagen objetivo no tiene diferencia en croma a partir de la imagen de referencia.
12. El procedimiento de decodificación de acuerdo con una cualquiera de las reivindicaciones 9 a 11, en el que el procedimiento comprende adicionalmente:
decodificar una compensación de luma de la imagen objetivo a partir de los datos codificados;
derivar un valor de luma previsto usando al menos la multiplicación de un componente de luma de una imagen de referencia por el factor de ponderación de luma, desplazar a la derecha por el al menos un dígito binario especificado por el denominador para el factor de ponderación de luma, y la adición de la compensación de luma; y
derivar un valor de croma previsto usando la menos la multiplicación de un componente de crominancia de la imagen de referencia por el factor de ponderación de croma, desplazar a la derecha el al menos un dígito binario especificado por el denominador para el factor de ponderación de croma, y la adición de la compensación de croma.
13. El procedimiento de decodificación de acuerdo con la reivindicación 12, en el que
el procedimiento comprende adicionalmente:
decodificar un coeficiente de transformada a partir de los datos codificados;
derivar un valor de error de predicción usando al menos una transformada inversa del coeficiente de transformada; y
derivar una imagen decodificada usando al menos el valor de error de predicción, el valor de luma previsto, y el valor de croma previsto.
14. El procedimiento de decodificación de acuerdo con la reivindicación 11 o 12, en el que
el procedimiento comprende adicionalmente:
decodificar un vector de movimiento a partir de los datos codificados; y
determinar la imagen de referencia basándose en el vector de movimiento.
15. El procedimiento de decodificación de acuerdo con una cualquiera de las reivindicaciones 9 a 14, en el que el procedimiento comprende adicionalmente:
recibir, por un módulo receptor, los datos codificados mediante un enlace de comunicación;
almacenar temporalmente, por una memoria intermedia, al menos parte de los datos codificados;
leer, por un módulo (801) decodificador, al menos parte de los datos codificados de la memora intermedia; y decodificar, por el módulo (801) decodificador, parámetros en los datos codificados, y
el módulo (801) decodificador es una unidad de procesamiento central (CPU).
16. El procedimiento de decodificación de acuerdo con una cualquiera de las reivindicaciones 9 a 14, en el que el procedimiento comprende adicionalmente:
recibir, por un módulo receptor, los datos codificados mediante un enlace de comunicación;
almacenar temporalmente, por una memoria intermedia, al menos parte de los datos codificados; leer, por un módulo (801) decodificador, al menos parte de los datos codificados de la memora intermedia; y decodificar, por el módulo (801) decodificador, parámetros en los datos codificados, y
el módulo (801) decodificador es un procesador de señales digitales (DSP) o un campo de matrices de puertas programables (FPGA).
ES17159161T 2011-10-17 2011-10-17 Procedimiento de codificación y procedimiento de decodificación Active ES2828048T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP17159161.3A EP3217667B1 (en) 2011-10-17 2011-10-17 Encoding method and decoding method
PCT/JP2011/073852 WO2013057783A1 (ja) 2011-10-17 2011-10-17 符号化方法及び復号方法

Publications (1)

Publication Number Publication Date
ES2828048T3 true ES2828048T3 (es) 2021-05-25

Family

ID=48140461

Family Applications (2)

Application Number Title Priority Date Filing Date
ES17159139T Active ES2848525T3 (es) 2011-10-17 2011-10-17 Aparato de decodificación y procedimiento de decodificación
ES17159161T Active ES2828048T3 (es) 2011-10-17 2011-10-17 Procedimiento de codificación y procedimiento de decodificación

Family Applications Before (1)

Application Number Title Priority Date Filing Date
ES17159139T Active ES2848525T3 (es) 2011-10-17 2011-10-17 Aparato de decodificación y procedimiento de decodificación

Country Status (23)

Country Link
US (7) US9521422B2 (es)
EP (6) EP3197164B1 (es)
KR (6) KR101822346B1 (es)
CN (5) CN103843345B (es)
AU (5) AU2011379259B2 (es)
BR (5) BR122020003031B1 (es)
CA (1) CA2847299C (es)
CY (2) CY1123691T1 (es)
DK (2) DK3217667T3 (es)
ES (2) ES2848525T3 (es)
HR (2) HRP20201778T1 (es)
HU (2) HUE052527T2 (es)
LT (2) LT3197164T (es)
MX (3) MX2014002392A (es)
PL (2) PL3197164T3 (es)
PT (2) PT3197164T (es)
RS (2) RS61015B1 (es)
RU (3) RU2586876C2 (es)
SG (1) SG11201400294SA (es)
SI (2) SI3217667T1 (es)
TW (2) TWI492635B (es)
WO (1) WO2013057783A1 (es)
ZA (1) ZA201401563B (es)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101672662B1 (ko) * 2011-06-20 2016-11-03 가부시키가이샤 제이브이씨 켄우드 화상 부호화 장치, 화상 부호화 방법 및 화상 부호화 프로그램, 또한 화상 복호 장치, 화상 복호 방법 및 화상 복호 프로그램
DK3217667T3 (da) 2011-10-17 2020-11-16 Toshiba Kk Kodningsfremgangsmåde og afkodningsfremgangsmåde
CA3160230A1 (en) 2012-06-27 2014-01-03 Kabushiki Kaisha Toshiba Video encoding and decoding using weighting factor with predetermined bit precision
US10368072B2 (en) 2015-05-29 2019-07-30 Qualcomm Incorporated Advanced arithmetic coder
KR20170058838A (ko) * 2015-11-19 2017-05-29 한국전자통신연구원 화면간 예측 향상을 위한 부호화/복호화 방법 및 장치
WO2017134957A1 (ja) * 2016-02-03 2017-08-10 シャープ株式会社 動画像復号装置、動画像符号化装置、および予測画像生成装置
CN113905238B (zh) 2016-07-05 2024-06-04 株式会社Kt 对视频进行解码或编码的方法和计算机可读介质
WO2018056763A1 (ko) * 2016-09-23 2018-03-29 엘지전자(주) 템플릿 기반 가중치를 이용하여 예측을 수행하는 방법 및 장치
AU2016425069B2 (en) * 2016-09-30 2022-03-03 Huawei Technologies Co., Ltd. Method and apparatus for image coding and decoding through inter prediction
JP7067487B2 (ja) * 2016-12-28 2022-05-16 ソニーグループ株式会社 画像処理装置および方法
CN107995490A (zh) * 2017-12-14 2018-05-04 清华大学 信号获取方法及装置
KR20230074302A (ko) * 2018-02-28 2023-05-26 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 합성된 예측 및 제한된 병합
CN108366242B (zh) * 2018-03-07 2019-12-31 绍兴文理学院 按视频内容自适应调整色度失真权重因子的视频压缩方法
US10880550B2 (en) * 2018-04-06 2020-12-29 Comcast Cable Communications, Llc Systems and methods for compressing video
CN108614778B (zh) * 2018-05-10 2022-08-16 天津大学 基于高斯过程回归的安卓App程序演化变更预测方法
CN112740704B (zh) * 2018-09-21 2024-04-16 夏普株式会社 图像解码装置以及图像编码装置
JP2020098986A (ja) * 2018-12-17 2020-06-25 キヤノン株式会社 画像符号化装置及び画像復号装置及びそれらの制御方法及びプログラム
USD944065S1 (en) * 2019-08-30 2022-02-22 American Torch Tip, Co. Push button for releasing a gooseneck in a welding torch
CN114930836B (zh) 2020-01-12 2023-12-15 华为技术有限公司 使用非矩形融合模式协调加权预测的方法和装置
US20230401501A1 (en) * 2022-06-08 2023-12-14 Procore Technologies, Inc. Determination of Insights for Construction Projects
US20230401500A1 (en) * 2022-06-08 2023-12-14 Procore Technologies, Inc. Determination of Insights for Construction Projects

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1120972B1 (en) * 1996-05-17 2003-09-03 Matsushita Electric Industrial Co., Ltd. Video decoding apparatus for decoding shape and texture signals using inter/intra modes
DE19952982B4 (de) 1999-11-03 2004-01-29 Acgt Progenomics Ag Verfahren zur gerichteten Verpackung von molekularen Substanzen in Proteinhüllen
JP2004007379A (ja) 2002-04-10 2004-01-08 Toshiba Corp 動画像符号化方法及び動画像復号化方法
CN1897706A (zh) 2002-01-18 2007-01-17 株式会社东芝 视频编码方法和装置以及视频解码方法和装置
JP4015934B2 (ja) 2002-04-18 2007-11-28 株式会社東芝 動画像符号化方法及び装置
BR0314824A (pt) 2002-10-01 2005-08-02 Thomson Licensing Sa Ponderação implìcita de imagens de referência em decodificador de vìdeo
JP2004179687A (ja) 2002-11-22 2004-06-24 Toshiba Corp 動画像符号化/復号化方法及び装置
MXPA05005988A (es) 2002-12-04 2005-08-18 Thomson Licensing Sa Codificacion de desvanecimientos de video con el uso de una prediccion ponderada.
EP1636998A2 (en) 2003-06-25 2006-03-22 Thomson Licensing Method and apparatus for weighted prediction estimation using a displaced frame differential
JP2005318297A (ja) 2004-04-28 2005-11-10 Toshiba Corp 動画像符号化・復号方法及び装置
US8731054B2 (en) * 2004-05-04 2014-05-20 Qualcomm Incorporated Method and apparatus for weighted prediction in predictive frames
CN101023673B (zh) * 2004-09-16 2011-06-08 汤姆逊许可证公司 具有利用局部亮度变化的加权预测的视频编解码器
TW200612385A (en) * 2004-10-08 2006-04-16 Mstar Semiconductor Inc Image contrast enhancing device and method thereof
US8638862B2 (en) 2005-03-18 2014-01-28 Sharp Laboratories Of America, Inc. Methods and systems for upsampling filter design
US8457203B2 (en) * 2005-05-26 2013-06-04 Ntt Docomo, Inc. Method and apparatus for coding motion and prediction weighting parameters
US20060293038A1 (en) 2005-06-23 2006-12-28 Sbc Knowledge Ventures L.P. Home cellular system
JP2007043651A (ja) 2005-07-05 2007-02-15 Ntt Docomo Inc 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号装置、動画像復号方法及び動画像復号プログラム
JP2007081518A (ja) * 2005-09-12 2007-03-29 Victor Co Of Japan Ltd 動画像符号化装置および動画像符号化方法
EP1965589A1 (en) * 2005-11-30 2008-09-03 Kabushiki Kaisha Toshiba Image encoding/image decoding method and image encoding/image decoding apparatus
US7831434B2 (en) * 2006-01-20 2010-11-09 Microsoft Corporation Complex-transform channel coding with extended-band frequency coding
EP3197157B1 (en) * 2006-01-23 2021-12-15 Max-Planck-Gesellschaft zur Förderung der Wissenschaften E.V. High dynamic range codecs
KR101406156B1 (ko) 2006-02-02 2014-06-13 톰슨 라이센싱 움직임 보상 예측을 위한 적응 가중 선택 방법 및 장치
CN101072355B (zh) * 2006-05-12 2010-07-28 中国科学院计算技术研究所 一种加权预测运动补偿方法
WO2008084817A1 (ja) * 2007-01-09 2008-07-17 Kabushiki Kaisha Toshiba 画像符号化と復号化の方法及び装置
US8619853B2 (en) * 2007-06-15 2013-12-31 Qualcomm Incorporated Separable directional transforms
CN101335902B (zh) * 2007-06-25 2010-06-02 华为技术有限公司 视频编解码中的加权预测方法和装置
US8750378B2 (en) * 2008-09-23 2014-06-10 Qualcomm Incorporated Offset calculation in switched interpolation filters
US20110007893A1 (en) 2009-07-08 2011-01-13 Berk Sunar Method and apparatus for fingerprinting and copy protecting optical recording media
EP2302933A1 (en) 2009-09-17 2011-03-30 Mitsubishi Electric R&D Centre Europe B.V. Weighted motion compensation of video
US9083984B2 (en) 2010-03-19 2015-07-14 Texas Instruments Incorporated Adaptive coding structure and adaptive FCode determination in video coding
US20110243220A1 (en) 2010-04-05 2011-10-06 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding image and method and apparatus for decoding image using adaptive coefficient scan order
EP2375754A1 (en) 2010-04-09 2011-10-12 Mitsubishi Electric R&D Centre Europe B.V. Weighted motion compensation of video
US20110261885A1 (en) 2010-04-27 2011-10-27 De Rivaz Peter Francis Chevalley Method and system for bandwidth reduction through integration of motion estimation and macroblock encoding
EP3174296A1 (en) 2011-10-17 2017-05-31 Kabushiki Kaisha Toshiba Decoding device and decoding method
DK3217667T3 (da) 2011-10-17 2020-11-16 Toshiba Kk Kodningsfremgangsmåde og afkodningsfremgangsmåde
CA3160230A1 (en) 2012-06-27 2014-01-03 Kabushiki Kaisha Toshiba Video encoding and decoding using weighting factor with predetermined bit precision

Also Published As

Publication number Publication date
DK3217667T3 (da) 2020-11-16
US11140405B2 (en) 2021-10-05
CN107071415B (zh) 2020-07-07
PT3217667T (pt) 2020-11-03
CN103843345A (zh) 2014-06-04
US9826247B2 (en) 2017-11-21
EP2770736A1 (en) 2014-08-27
KR102003180B1 (ko) 2019-07-23
US11039159B2 (en) 2021-06-15
BR122020003041B1 (pt) 2021-11-09
SG11201400294SA (en) 2014-09-26
KR101829179B1 (ko) 2018-03-29
KR101920601B1 (ko) 2018-11-20
US20200177904A1 (en) 2020-06-04
KR20180017225A (ko) 2018-02-20
MX348004B (es) 2017-05-23
EP3675498A1 (en) 2020-07-01
CA2847299A1 (en) 2013-04-25
KR20170046197A (ko) 2017-04-28
CN106899847B (zh) 2019-12-27
US20200177903A1 (en) 2020-06-04
PL3217667T3 (pl) 2020-12-14
LT3217667T (lt) 2020-11-10
HUE052527T2 (hu) 2021-05-28
EP3675499B1 (en) 2021-12-29
US20170164006A1 (en) 2017-06-08
BR122020003071B1 (pt) 2021-11-09
AU2011379259A1 (en) 2014-03-27
PT3197164T (pt) 2021-02-03
SI3217667T1 (sl) 2020-12-31
KR101624058B1 (ko) 2016-05-24
US20200177905A1 (en) 2020-06-04
KR101738289B1 (ko) 2017-05-19
RS61338B1 (sr) 2021-02-26
CN107071415A (zh) 2017-08-18
EP3197164A1 (en) 2017-07-26
US10271061B2 (en) 2019-04-23
AU2017202582B2 (en) 2018-09-27
TW201318435A (zh) 2013-05-01
HRP20210129T1 (hr) 2021-03-19
CN106899847A (zh) 2017-06-27
KR20180124162A (ko) 2018-11-20
MX2014002392A (es) 2014-06-05
ZA201401563B (en) 2015-08-26
EP3675497A1 (en) 2020-07-01
HUE053615T2 (hu) 2021-07-28
CN106791832A (zh) 2017-05-31
CN107027026B (zh) 2020-04-24
AU2015243067A1 (en) 2015-11-05
US9521422B2 (en) 2016-12-13
CY1123835T1 (el) 2022-05-27
CA2847299C (en) 2016-10-11
BR122020003031B1 (pt) 2021-11-09
BR122020003032B1 (pt) 2021-11-09
WO2013057783A1 (ja) 2013-04-25
KR20170051549A (ko) 2017-05-11
EP2770736B1 (en) 2019-06-19
PL3197164T3 (pl) 2021-04-19
HRP20201778T1 (hr) 2021-02-05
RU2681359C1 (ru) 2019-03-06
SI3197164T1 (sl) 2021-03-31
RU2586876C2 (ru) 2016-06-10
TW201540051A (zh) 2015-10-16
MX336659B (es) 2016-01-27
EP3217667A1 (en) 2017-09-13
KR20140059218A (ko) 2014-05-15
AU2015243067B2 (en) 2017-06-08
EP3675499A1 (en) 2020-07-01
US20160050428A1 (en) 2016-02-18
RS61015B1 (sr) 2020-11-30
TWI569630B (zh) 2017-02-01
KR101822346B1 (ko) 2018-01-25
DK3197164T3 (da) 2021-01-25
US20140056357A1 (en) 2014-02-27
AU2017202570A1 (en) 2017-06-01
RU2681379C1 (ru) 2019-03-06
EP2770736A4 (en) 2015-06-03
CY1123691T1 (el) 2022-03-24
BR112014004805B1 (pt) 2022-05-17
EP3675497B1 (en) 2021-12-29
EP3217667B1 (en) 2020-08-12
CN106791832B (zh) 2020-06-09
AU2017202582A1 (en) 2017-05-11
US20190191175A1 (en) 2019-06-20
AU2018286602A1 (en) 2019-02-21
KR20150123970A (ko) 2015-11-04
US10602173B2 (en) 2020-03-24
AU2018286602B2 (en) 2020-05-07
US11153593B2 (en) 2021-10-19
LT3197164T (lt) 2021-02-10
AU2011379259B2 (en) 2015-07-16
BR112014004805A2 (pt) 2017-03-28
TWI492635B (zh) 2015-07-11
RU2014107490A (ru) 2015-11-27
EP3197164B1 (en) 2020-12-09
CN107027026A (zh) 2017-08-08
AU2017202570B2 (en) 2018-09-27
ES2848525T3 (es) 2021-08-10
CN103843345B (zh) 2017-05-10

Similar Documents

Publication Publication Date Title
ES2828048T3 (es) Procedimiento de codificación y procedimiento de decodificación
JP2016096567A (ja) 復号方法、復号装置及びプログラム
JP2020058073A (ja) 符号化方法、復号方法及び符号化データ
JP2018042266A (ja) 電子機器、符号化方法及びプログラム