MX2013013483A - Metodo de decodificacion de imagenes, metodo de codificacion de imagenes, aparato de decodificacion de imagenes, aparato de codificacion de imagenes y aparato de codificacion y decodificacion de imagenes. - Google Patents

Metodo de decodificacion de imagenes, metodo de codificacion de imagenes, aparato de decodificacion de imagenes, aparato de codificacion de imagenes y aparato de codificacion y decodificacion de imagenes.

Info

Publication number
MX2013013483A
MX2013013483A MX2013013483A MX2013013483A MX2013013483A MX 2013013483 A MX2013013483 A MX 2013013483A MX 2013013483 A MX2013013483 A MX 2013013483A MX 2013013483 A MX2013013483 A MX 2013013483A MX 2013013483 A MX2013013483 A MX 2013013483A
Authority
MX
Mexico
Prior art keywords
context
block
arborescent
unit
type
Prior art date
Application number
MX2013013483A
Other languages
English (en)
Inventor
Toshiyasu Sugio
Takahiro Nishi
Youji Shibahara
Hisao Sasai
Kyoko Tanikawa
Toru Matsunobu
Original Assignee
Panasonic 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 Panasonic Corp filed Critical Panasonic Corp
Publication of MX2013013483A publication Critical patent/MX2013013483A/es

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/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
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/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/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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
    • H04N19/583Motion compensation with overlapping blocks
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/184Methods 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 bits, e.g. of the compressed video stream

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

Un método de decodificación de imágenes de acuerdo con una modalidad de la presente invención comprende: un paso de control de contexto (S204) en el cual un contexto que se utiliza para un bloque que es procesado se determina a partir de una pluralidad de contextos; y un paso de decodificación aritmética (S210) en el cual el contexto determinado se utiliza para decodificar aritméticamente una serie de bits que corresponde al bloque que es procesado. En el paso de control de contexto (S204), si la clasificación de señal de un parámetro de control es un primer tipo, el contexto se selecciona utilizando una condición por medio de la cual se emplean los parámetros de control del bloque adyacente del lado izquierdo y el bloque adyacente superior del bloque que es procesado (S206), y si la clasificación de señal del parámetro de control es un segundo tipo, el contexto se determina utilizando una condición por medio de la cual el parámetro de control del bloque superior no se emplea (S207) El segundo tipo es "mvd_10" y "mvd_11".

Description

METODO DE DECODIFICACION DE IMAGENES, METODO DE CODIFICACION DE IMAGENES, APARATO DE DECODIFICACION DE IMAGENES, APARATO DE CODIFICACION DE IMAGENES Y APARATO DE CODIFICACION Y DECODIFICACION DE IMAGENES CAMPO DE LA INVENCIÓN La presente invención se refiere a un método de decodificación de imágenes, un método de codificación de imágenes, un aparato de decodificación de imágenes, un aparato de codificación de imágenes y un aparato de codificación y decodificación de imágenes y en particular a un método de decodificación de imágenes, un método de codificación de imágenes, un aparato de decodificación de imágenes, un aparato de codificación de imágenes y un aparato de codificación y decodificación de imágenes los cuales utilizan una codificación aritmética o una decodificación aritmética.
ANTECEDENTES DE LA INVENCIÓN Las señales de imágenes naturales tienen variaciones estadísticas que muestran un comportamiento no estacionario. Uno de los métodos de codificación entrópica que utiliza las variaciones estadísticas no estacionarias es la Codificación Aritmética, Binaria, Adaptable Basada en el Contexto (CABAC, por sus siglas en inglés) (véase la NPL 1) . La CABAC se emplea como el estándar ITU-T/ISOIEC para la REF: 244796 codificación de video, H.264/AVC.
El significado de los términos utilizados en el esquema de CABAC se describirá a continuación. (1) "Adaptable Basado en el Contexto" significa la adaptación de los métodos de codificación y decodificación a las variaciones estadísticas. En otras palabras, "Adaptable Basado en el Contexto" significa la predicción de una probabilidad apropiada como una probabilidad de ocurrencia de un símbolo junto con un evento de condiciones circundantes, cuando el símbolo se codifica o decodifica. En la codificación, cuando se determina una probabilidad de ocurrencia p (x) de cada valor de un símbolo S, una probabilidad de ocurrencia condicional se aplica utilizando un evento real o una secuencia de eventos F(z) como una condición. (2) "Binario" significa la representación de un símbolo utilizando una secuencia binaria. Un símbolo representado por un multi-valor se mapea una vez en una secuencia binaria referida como "serie binaria". Una probabilidad predicha (probabilidad condicional) se conmuta y se utiliza para cada uno de los elementos de secuencia y la ocurrencia de uno de los eventos de los dos valores es representada por una secuencia de bits. Por consiguiente, la probabilidad de un valor se puede gestionar (inicializar y actualizar) utilizando una unidad (unidad de elemento binario) más pequeña que una unidad de un tipo de señal (véase la Figura 2 y otras de la NPL 1) . (3) "Aritmético" significa que la secuencia de bits se genera no con referencia a las correspondencias en una tabla sino mediante el cálculo. En el esquema de codificación que utiliza las tablas de códigos de longitud variable tal como H.263, MPEG-4 y H.264, incluso cada valor de un símbolo con una probabilidad de ocurrencia mayor que 0.5 (50%) necesita ser asociado con una secuencia binaria (secuencia de bits) . De esta manera, un valor con la probabilidad más grande necesita ser asociado con un bit para un símbolo como mínimo. En contraste, la codificación aritmética puede representar la ocurrencia de un evento con una probabilidad más alta por un número entero igual a o más pequeño que un bit. Cuando (i) existe un tipo de señal en el cual la probabilidad de ocurrencia de tener el primer valor binario como 0 excede 0.9 (90%) y (ii) un evento que tiene el primer valor binario como 0 ocurre exitosamente N veces, no hay necesidad de enviar datos de 1 bit N veces para cada valor de "0" .
Lista de Referencias Bibliografía que no es Patente [NPL 1] Detlev Marpe y colaboradores, "Context-Based Adaptive Binary Arithmetic Coding in the H.264/AVC Video Compression Standard", IEEE Transaction on circuits and systems for video technology, Vol. 13, No. 7, Julio de 2003. [NPL 2] Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 , 4th Meeting: Daegu, KR, 20-28 Enero de 2011, "WD2 : Working Draft 2 of High-Efficiency Video Coding" JCTVC-D503 http://wi.tp3. itu. int/av-arch/jctvc-site/2011_01_D_Daegu/ JCTVC-D503. doc [NPL 3] Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1./SC29/WG11 , 4th Meeting: Daegu, KR, 20-28 Enero de 2011, "Common test conditions and software reference configurations" , JCTVC-E700 [NPL 4] Gisle Bjesntegaard, "Improvements of the BD-PS R model," ITU-T SG16 Q.6 Document, VCEG-AI11, Berlín, Julio de 2008 BREVE DESCRIPCIÓN DE LA INVENCIÓN Problema Técnico En este método de codificación de imágenes y método de decodificación de imágenes, se desea que el uso de memoria (capacidad de memoria que se utiliza) se reduzca.
En este documento, la presente invención tiene como objetivo proporcionar un método de codificación de imágenes o un método de decodificación de imágenes que pueda reducir el uso de memoria.
Solución al Problema Con el propósito de alcanzar el objetivo, el método de decodificación de imágenes de acuerdo con un aspecto de la presente invención es un método de decodificación de imágenes que utiliza una decodificación aritmética, y el método incluye: determinar un contexto para el uso en un ibloque arborescente actual, de entre una pluralidad de contextos; realizar una decodificación aritmética en una secuencia de bits que corresponde al bloque arborescente actual, utilizando el contexto determinado para decodificar una secuencia binaria, la secuencia de bits se obtiene al realizar una codificación aritmética en un parámetro de control del bloque arborescente actual; y binarizar de manera inversa la secuencia binaria para decodificar el parámetro de control del bloque arborescente actual, en donde la determinación de un contexto incluye: determinar un tipo de señal del parámetro de control del bloque arborescente actual; determinar el contexto bajo una primera condición de que se utilicen los parámetros de control decodificados de bloques arborescentes adyacentes del bloque arborescente actual, cuando el tipo de señal es un primer tipo, los bloques arborescentes adyacentes son un bloque arborescente izquierdo y un bloque arborescente superior del bloque arborescente actual; y determinar el contexto bajo una segunda condición de que no se utilice el parámetro de control decodificado del bloque arborescente superior, cuando el tipo de señal es un segundo tipo diferente del primer tipo, el primer tipo es uno de "split_coding_unit_flag" y "skip_flag" y el segundo tipo es uno de "mvd_lO" y "mvd_ll" .
Efectos Ventajosos de la Invención La presente invención puede proporcionar un método de codificación de imágenes o un método de decodificación de imágenes que puede reducir el uso de. memoria.
BREVE DESCRIPCIÓN DE LAS FIGURAS La FIGURA 1 es un diagrama de bloques arborescentes funcional de un aparato de codificación de imágenes de acuerdo con la Modalidad 1.
La FIGURA 2 es un diagrama de bloques arborescentes funcional de una unidad de codificación de longitud variable de acuerdo con la Modalidad 1.
La FIGURA 3 es una tabla de un modelo de contexto de un parámetro de control de acuerdo con la Modalidad 1.
La FIGURA 4 es un diagrama de flujo que indica un método de codificación aritmética de acuerdo con la Modalidad 1.
La FIGURA 5 es un diagrama de bloques arborescentes funcional de un aparato de decodificación de imágenes de acuerdo con la Modalidad 2.
La FIGURA 6 es un diagrama de bloques arborescentes funcional de una unidad de decodificación de longitud variable de acuerdo con la Modalidad 2.
La FIGURA 7 es un diagrama de flujo que indica un método de decodificación aritmética de acuerdo con la Modalidad 2.
La FIGURA 8 es un diagrama de flujo que indica una modificación del método de decodificación aritmética de acuerdo con la Modalidad 2. i La FIGURA 9 ilustra bloques arborescentes particionados (una estructura arborescente) de acuerdo con la HEVC de acuerdo con la Modalidad 2.
La FIGURA 10 ilustra una estructura de bloques arborescentes de múltiples capas de acuerdo con la Modalidad 2.
La FIGURA 11 ilustra un método de decodificación aritmética para spl t_coding_unit_flag de acuerdo con la Modalidad 3.
La FIGURA 12A es una tabla que indica un resultado de la verificación en split_coding_unit_flag de acuerdo con la Modalidad 3.
La FIGURA 12B es una tabla que indica un resultado de la verificación en split_coding_ unit__flag de acuerdo con la Modalidad 3.
La FIGURA 13 ilustra un método de' decodificación aritmética para skip_flag de acuerdo con la Modalidad 3.
La FIGURA 14A es una tabla que indica un resultado de la verificación en skip_flag de acuerdo con la Modalidad 3.
La FIGURA 14B es una tabla que indica un resultado de la verificación en skip_flag de acuerdo con la Modalidad 3.
La FIGURA 15 es una tabla que indica un método de decodificación aritmética para mvd_10 (11, le) de acuerdo con la Modalidad 3.
La FIGURA 16A es una tabla que indica un resultado de la verificación en mvd_lO (11, le) de acuerdo con la Modalidad 3.
La FIGURA 16B es una tabla que indica un resultado de la verificación en mvd_lO (11, le) de acuerdo con la Modalidad 3.
La FIGURA 16C es una tabla que indica un modelo de contexto para mvd_lO (11, le) de acuerdo con la Modalidad 3.
La FIGURA 16D es una tabla que indica un modelo de contexto para mvd_10 (11, le) de acuerdo con la Modalidad 3.
La FIGURA 17 ilustra modelos de contexto que utilizan valores de parámetros de control que corresponden a dos bloques arborescentes adyacentes de acuerdo con las Modalidades .
La FIGURA 18 ilustra un incremento en el uso de memoria cuando se utiliza un bloque arborescente . superior de acuerdo con las Modalidades.
La FIGURA 19 ilustra una configuración completa de un sistema de provisión de contenido para implementar servicios de distribución de contenido.
La FIGURA 20 ilustra una configuración completa de un sistema de difusión digital.
La FIGURA 21 es un diagrama de bloques arborescentes que ilustra un ejemplo de una configuración de una televisión.
La FIGURA 22 es un diagrama de bloques arborescentes que ilustra un ejemplo de una configuración de una unidad de reproducción/grabación de información que lee y escribe información de o en un medio de grabación que es un disco óptico.
La FIGURA 23 ilustra un ejemplo de una configuración de un medio de grabación que es un disco óptico.
La FIGURA 24A ilustra un ejemplo de un teléfono celular.
La FIGURA 24B ilustra un diagrama de bloques arborescentes que muestra un ejemplo de una configuración del teléfono celular.
La FIGURA 25 ilustra una estructura de datos multiplexados .
La FIGURA 26 ilustra esquemáticamente como cada corriente es multiplexada en datos multiplexados.
La FIGURA 27 ilustra con mayor detalle como una corriente de video se almacena en una corriente de paquetes PES.
La FIGURA 28 ilustra una estructura de paquetes TS y paquetes fuente en los datos multiplexados.
La FIGURA 29 ilustra una estructura de datos de una PMT.
La FIGURA 30 ilustra una estructura interna de información de datos multiplexados.
La FIGURA 31 ilustra una estructura interna de información de atributos de corriente.
La FIGURA 32 ilustra pasos para identificar datos de video.
La FIGURA 33 es un diagrama de bloques arborescentes que ilustra un ejemplo de una configuración de un circuito integrado para implementar el método de codificación de imágenes en movimiento y el método de decodificación de imágenes en movimiento de acuerdo con cada una de las Modalidades .
La FIGURA 34 ilustra una configuración para conmutar entre frecuencias impulsoras.
La FIGURA 35 ilustra pasos para identificar datos de video y conmutar entre frecuencias impulsoras.
La FIGURA 36 ilustra un ejemplo de una tabla de consulta en la cual los estándares de datos de video se asocian con las frecuencias impulsoras.
La FIGURA 37A ilustra un ejemplo de una configuración para compartir un módulo de una unidad de procesamiento de señales.
La FIGURA 37B ilustra otro ejemplo de una configuración para compartir un módulo de una unidad de procesamiento de señales.
DESCRIPCIÓN DETALLADA DE LA INVENCION (Conocimiento en el cual se basa la presente invención) Los presentes inventores han descubierto los siguientes problemas.
En la Codificación de Video de Alta Eficiencia (HEVC, por sus siglas en inglés) que es un esquema de codificación de video de próxima generación, el modelo de contexto en la codificación y decodificación de varios parámetros de control está siendo estudiado (NPL 2) . El parámetro de control se incluye en una corriente de bits codificada y es un parámetro (indicador, etcétera) utilizado en el procesamiento de codificación o decodificación. Más específicamente, el parámetro de control es un elemento de sintaxis.
El modelo de contexto es información que indica (i) que condición se considera para (ii) una señal de que unidad (cada elemento de un valor múltiple, un valor binario, una secuencia binaria (serie binaria) . En este documento, "que condición" indica que condición con el número de elementos condicionales se aplica o que tipo de señal de un parámetro de control que se considera como una condición es apropiado. Como las condiciones se dividen en categorías más pequeñas, es decir, como el número de condiciones t incrementa, el número de los casos que se mantienen verdaderos para las condiciones disminuye. Como resultado, puesto que el número de entrenamientos disminuye, la precisión de la probabilidad predicha disminuye (por ejemplo, véase el "efecto de dilución" en la NPL 1) .
Adicionalmente , una disminución en el número de condiciones indica que no se considera un contexto (condiciones circundantes) y que no es adaptable a las variaciones estadísticas.
En el diseño de un modelo de contexto, después de determinar una guía para diseñar el modelo, es necesario considerar la validez del modelo al conducir verificaciones especializadas para una imagen, tal como las verificaciones de variaciones estadísticas en los detalles de una imagen y en un parámetro de control para controlar la codificación y decodificación de una imagen.
En H.264, el uso de eventos avanzados de un número limitado para codificar un símbolo es un criterio de una regla y los modelos de contexto se clasifican en cuatro tipos de diseño básicos.
El primer tipo y el segundo tipo se refieren a la codificación y decodificación de un parámetro de control.
El primer modelo de contexto utiliza valores codificados de hasta dos valores codificados adyacentes (véase la NPL 1) . Aunque la definición de los dos valores codificados, adyacentes depende de cada tipo de señal, normalmente, se utilizan valores de parámetros de control correspondientes que se incluyen en bloques arborescentes adyacentes a la izquierda y arriba del bloque arborescente arborescente actual.
El segundo tipo de modelos de contexto es un tipo para determinar un contexto basado en un bloque arborescente binario como una probabilidad de ocurrencia. Más específicamente, el segundo tipo de modelos de contexto se aplica a los parámetros de control mb_type y sub_mb_ty e .
El tercer tipo y el cuarto tipo de modelos de contexto se refieren a la codificación y decodificación de valores residuales (datos residuales) , tal como datos de imagen. El tercer tipo utiliza solo los valores codificados o decodificados pasados en el orden de exploración de coeficientes de frecuencia (o coeficientes cuantificados) . El cuarto tipo determina un contexto de acuerdo con los valores decodificados y acumulados (niveles) .
Las ventajas del principio de diseño y la implementación del modelo de transición de probabilidad en H.264, tal como el primer tipo, ya han sido estudiadas y se aplicarán a la HEVC que está siendo estudiada (véase la NPL 2) . Por ejemplo, el primer tipo (modelo de contexto que utiliza elementos de sintaxis adyacentes) está siendo estudiado para utilizarse para los parámetros de control alf_cu_flag, split_coding_unit_flag, skip_flag, merge_flag, intra_chroma_pred_mode , inter_pred_flag, ref_idx_lc, ref_idx_10, ref_idx_ll, mvd_10, mvd_ll, mvd_lc, no_residual_data_flag, cbf_luma, cbf_cb y cbf_cr (véase 9.3.3.1.1 de la NPL 2).
Sin embargo, los presentes inventores han descubierto que existe un problema en el uso de memoria en la codificación que utiliza el "modelo de contexto que utiliza los dos bloques arborescentes adyacentes" del primer tipo.
La FIGURA 17 ilustra modelos de contexto que utilizan valores de parámetros de control que corresponden a los dos bloques arborescentes adyacentes. Adicionalmente , la FIGURA 17 ilustra los modelos de contexto que utilizan los bloques arborescentes adyacentes en H. 264.
El bloque arborescente arborescente C en la FIGURA 17 incluye un valor de un parámetro de control SE que es codificado y decodificado actualmente. Cuando el valor del parámetro de control SE se codifica, se utilizan valores de parámetros de control SE del mismo tipo incluidos en el bloque arborescente arborescente superior A y el bloque arborescente arborescente izquierdo B que ya están codificados. Más específicamente, la probabilidad p(x) que indica si el valor x del parámetro de control SE del bloque arborescente arborescente C (o el primer valor binario de la serie binaria del parámetro de control SE) es 1 o 0 se predice con base en una probabilidad condicional p (xl (condición A (valor del bloque arborescente arborescente superior) y condición B (valor del bloque arborescente arborescente izquierdo)) utilizando, como condiciones, el valor del parámetro de control SE del bloque arborescente arborescente superior A y el valor del parámetro de control SE del bloque' arborescente arborescente izquierdo B.
La FIGURA 18 ilustra un incremento en el uso de memoria cuando se utiliza un bloque arborescente arborescente superior.
En la FIGURA 18, (xP, yP) es una posición de un pixel izquierdo superior de una unidad de predicción (PU, unidad de predicción de movimiento) que incluye el bloque arborescente arborescente C. En este documento, el bloque arborescente arborescente C es un bloque arborescente que incluye un parámetro de control (por ejemplo, skip_flag) que es" codificado actualmente. Adicionalmente , (xP, yA) en la FIGURA 18 es una posición de un pixel que se incluye en el bloque arborescente arborescente B y se utiliza como una condición A (valor del parámetro de control skip_flag del bloque arborescente arborescente superior) . Adicionalmente, (xL, yP) en la FIGURA 18 es una posición de un pixel que se incluye en el bloque arborescente arborescente A y se utiliza como una condición B (valor del parámetro de control skip_flag del bloque arborescente arborescente izquierdo) .
Con el propósito de codificar o decodificar el valor del parámetro de control skip_flag del bloque arborescente arborescente C, el aparato de codificación o el aparato de decodificación necesita mantener el valor de skip_flag de PU (o un resultado de la determinación de una condición) que corresponde a la posición (xP, yA) incluida en el bloque arborescente arborescente superior B y la posición (xL, yP) incluida en el bloque arborescente arborescente izquierdo A. Asumiendo que la imagen tiene una anchura horizontal de 4096 pixeles, con el propósito de codificar un parámetro de control skip_flag, es necesario mantener todos los valores de determinación incluidos! en la hilera superior (Línea L en la FIGURA 18) . En otras palabras, un parámetro de control necesita la capacidad de memoria obtenida por 4096 pixeles/tamaño de bloque.
En este documento, el bloque arborescente arborescente C que se codifica tiene tamaños variables, por ejemplo, 64 x 64, 16 x 16 o 4 x 4. Adicionalmente , el tamaño de bloque arborescente arborescente del bloque arborescente C que se codifica o decodifica posteriormente no se puede predecir cuando los bloques arborescentes en la hilera superior (Línea L) que incluyen (xP, yA) se codifican o decodifican. Esto es debido a que el tamaño de cada uno de los bloques arborescentes en la hilera inferior (hilera que incluye el bloque arborescente arborescente C) no se conoce cuando la hilera superior (hilera que incluye el bloque arborescente - arborescente A) se codifica o decodifica. De esta manera, el aparato de codificación o el aparato de decodificación necesita mantener un valor de un parámetro de control (o valor de determinación) para cada tamaño de bloque arborescente mínimo, asumiendo que el tamaño de bloque arborescente arborescente 'más pequeño de entre todos los tamaños aplicados a los parámetros de control se utiliza como el tamaño de bloque arborescente arborescente de la hilera inferior. Las posiciones de los círculos negros en la FIGURA 18 indican condiciones que tienen que ser mantenidas, aunque los valores condicionales no sean necesarios realmente cuando la hilera inferior (hilera que incluye el bloque arborescente arborescente C) se codifica y decodifica.
Adicionalmente , los dos bloques arborescentes adyacentes en la FIGURA 18 (el bloque arborescente arborescente izquierdo A y el bloque arborescente arborescente superior B) siguen el concepto de los bloques arborescentes adyacentes en H.264 y no se introduce una nueva perspectiva en la división de bloques arborescentes jerárquicos. Como se describe posteriormente, existen casos donde estos valores condicionales que son referidos en la FIGURA 18 no siempre tienen sentido para parámetros de control adaptados a la partición recursiva de bloque arborescente cuádruple que se introduce en la HEVC, debido a que los parámetros de control siguen el orden de ejecución recursivo, la profundidad jerárquica o posiciones de bloques arborescentes .
Como tal, los presentes inventores han descubierto que el uso de memoria incrementa al utilizar los valores condicionales de los bloques arborescentes superiores en la realización de la codificación o decodificación aritmética en los parámetros de control. Adicionalmente, los presentes inventores han descubierto que el uso de memoria incrementa adicionalmente en la HEVC.
En contraste, el método de decodificación de imágenes de acuerdo con un aspecto de la presente invención es un método de decodificación de imágenes que utiliza una decodificación aritmética, y el método incluye: determinar un contexto para el uso en un bloque arborescente actual, de entre una pluralidad de contextos; realizar una decodificación aritmética en una secuencia de bits que corresponde al bloque arborescente actual, utilizando el contexto determinado para decodificar una secuencia binaria, la secuencia de bits se obtiene al realizar una codificación aritmética en un parámetro de control del bloque arborescente actual; y binarizar de manera inversa la secuencia binaria para decodificar el parámetro de control del bloque arborescente actual, en donde la determinación de un contexto incluye: determinar un tipo de señal del parámetro de control del bloque arborescente actual; determinar el contexto bajo una primera condición de que se utilicen los parámetros de control decodificados de bloques arborescentes adyacentes del bloque arborescente actual, cuando el tipo de señal es un primer tipo, los bloques arborescentes adyacentes son un bloque arborescente arborescente izquierdo y un bloque arborescente arborescente superior del bloque ' arborescente actual; y determinar el contexto bajo una segunda condición de que no se utilice el parámetro de control decodificado del bloque arborescente arborescente superior, cuando el tipo de señal es un segundo tipo diferente del primer tipo, el primer tipo es uno de "split_coding_unit_flag" y "skip_flag" , y el segundo tipo es uno de "mvd_lO" y "mvd_ll" .
Con la estructura, el método de decodificación de imágenes puede reducir el uso de memoria. Más específicamente, en el método de decodificación de imágenes, puesto que el parámetro de control del bloque arborescente arborescente superior no se utiliza para un parámetro de control del segundo tipo, no hay necesidad de mantener el parámetro de control del segundo tipo del bloque arborescente arborescente superior. Con la estructura, en comparación con el caso donde el bloque arborescente arborescente izquierdo y el bloque arborescente arborescente superior se utilizan como "utilizando uniformemente un modelo de contexto con base en valores de parámetros de control de bloques arborescentes adyacentes" , el uso de memoria se puede, reducir de acuerdo con el método de decodificación de imágenes. Adicionalmente , el método de decodificación de imágenes puede reducir apropiadamente el uso de memoria del parámetro de control del segundo tipo sin, por ejemplo, dejar de evaluar una tasa de BD de una imagen .
Adicionalmente, de acuerdo con el método de decbdificación de imágenes, se puede utilizar el contexto apropiado para una estructura arborescente jerárquica que es una estructura de datos que no se considera en la H.264 convencional y es única para el nuevo estándar HEVC. Alternativamente, se puede realizar una referencia de memoria.
Adicionalmente , la segunda condición puede ser una condición de que no se utilicen los parámetros de control decodificados del bloque arborescente arborescente izquierdo y el bloque arborescente arborescente superior.
Con la estructura, el método de decodificación de imágenes puede reducir el uso de memoria al no utilizar el parámetro de control del bloque arborescente arborescente izquierdo además del parámetro de control del bloque arborescente arborescente superior.
Adicionalmente, en la determinación de un contexto, un contexto predeterminado se puede determinar bajo la segunda condición, como el contexto para el uso en la decodificación aritmética del bloque arborescente actual, cuando el tipo de señal es el segundo tipo.
Con la estructura, el método de decodificación de imágenes puede reducir la cantidad de procesamiento.
Adicionalmente, la determinación de un contexto puede incluir además: determinar si el parámetro de control decodificado del bloque arborescente actual está disponible o no en la decodificación, con base en una posición del bloque arborescente actual; y determinar el contexto bajo la segunda condición, cuando el parámetro de control decodificado del bloque arborescente arborescente superior no está disponible.
Con la estructura, el método de decodificación de imágenes puede reducir la cantidad de procesamiento.
Adicionalmente , en la determinación de un contexto, se puede determinar que el parámetro de control decodificado del bloque arborescente arborescente superior no está disponible en la decodificación, cuando el bloque arborescente actual está en un límite de corte.
Adicionalmente, en la determinación de un contexto, se puede determinar si el parámetro de control decodificado del bloque arborescente arborescente superior está disponible o no en la decodificación, de acuerdo con una profundidad jerárquica de una unidad de datos a la cual pertenece el parámetro de control del bloque arborescente actual .
Adicionalmente, el segundo tipo puede ser un parámetro de control que tiene una estructura de datos predeterminada .
Adicionalmente, la determinación de un contexto puede incluir además determinar un contexto de un parámetro de control de una segunda unidad más pequeña que una primera unidad al conmutar entre la primera condición y la segunda condición, con base en un parámetro de control de la primera unidad.
Adicionalmente, en la determinación de un contexto, una condición para determinar un contexto para "mvd_lc" se puede deducir a partir de por lo menos uno de los valores del "mvd_10" y el "mvd_ll" del bloque arborescente actual.
De esta manera, el método de decodificación de imágenes puede deducir un valor condicional de mvd_lO sin hacer referencia al valor de mvd_lc en un bloque arborescente circundante .
Adicionalmente , en la determinación de un contexto, uno de los valores condicionales de una dirección horizontal y una dirección vertical para "mvd" se puede deducir a partir del otro de los valores condicionales.
Con esta estructura, el método de decodificación de imágenes puede reducir el número de índices de contexto.
Adicionalmente, el "split_coding_unit_flag" puede indicar si el bloque arborescente actual se particiona o no en una pluralidad de bloques arborescentes, el "skip_flag" puede indicar si el bloque arborescente actual debe ser omitido o no, el "mvd_lO" puede indicar una diferencia entre un componente de vector de movimiento de una lista 0 y un valor . predicho del componente de vector de movimiento, el componente de vector de movimiento y el valor predicho se utilizan para el bloque arborescente actual, el "mvd_ll" puede indicar una diferencia entre un componente de vector de movimiento de una lista 1 y un valor predicho del componente de vector de movimiento, el componente de vector de movimiento y el valor predicho se utilizan para el bloque arborescente actual y "mvd_lc" puede indicar una diferencia entre un componente de vector de movimiento de una combinación de lista y un valor predicho del componente de vector de movimiento, el componente de vector de movimiento y el valor predicho se utilizan para el bloque arborescente actual .
Adicionalmente , los procesos de decodificación de acuerdo con un primer estándar y los procesos de decodificación de acuerdo con un segundo estándar pueden ser conmutados de acuerdo con un identificador que indica uno del primer estándar y el segundo estándar, el identificador se incluye en una señal codificada y la determinación de un contexto, la realización y la binarización de manera inversa se pueden realizar como los procesos de decodificación de acuerdo con el primer estándar, cuando el identificador indica el primer estándar.
Adicionalmente, el método de codificación de imágenes de acuerdo con un aspecto de la presente invención es un método de codificación de imágenes que utiliza una codificación aritmética, y el método incluye: binarizar un parámetro de control de un bloque arborescente actual para generar una secuencia binaria; determinar un contexto para el uso en el bloque arborescente actual, de entre una pluralidad de contextos; y realizar una codificación aritmética en la secuencia binaria utilizando el contexto determinado para generar una secuencia de bits, en donde la determinación de un contexto incluye: determinar un tipo de señal del parámetro de control del bloque arborescente actual; determinar el contexto bajo una primera condición de que se utilicen parámetros de control de bloques arborescentes adyacentes del bloque arborescente actual, cuando el tipo de señal es un primer tipo, los bloques arborescentes adyacentes son un bloque arborescente arborescente izquierdo y un bloque arborescente arborescente superior del bloque arborescente actual; y determinar el contexto bajo una segunda condición de que no se utilice el parámetro de control del bloque arborescente arborescente superior, cuando el tipo de señal es un segundo tipo diferente del primer tipo, el primer tipo es uno de "split_coding_unit_flag" y "skip_flag" y el segundo tipo es uno de "mvd_10" y "mvd_ll" .
Con la estructura, el método de codificación de imágenes puede reducir el uso de memoria. Más específicamente, en el método de codificación de imágenes, puesto que el parámetro de control del bloque . arborescente arborescente superior no se utiliza para un parámetro de control del segundo tipo, no hay necesidad de mantener el parámetro de control del segundo tipo del bloque ' arborescente arborescente superior. Con la estructura, en comparación con el caso donde el bloque arborescente arborescente izquierdo y el bloque arborescente arborescente superior se utilizan como "utilizando uniformemente un modelo de contexto con base en valores de parámetros de control de bloques arborescentes adyacentes" , el uso de memoria se puede reducir de acuerdo con el método de codificación de imágenes. Adicionalmente , el método de codificación de imágenes puede reducir apropiadamente el uso de memoria del parámetro de control del segundo tipo sin, por ejemplo, dejar de evaluar una tasa de BD de una imagen.
Adicionalmente, de acuerdo con el método de codificación de imágenes, se puede utilizar el contexto apropiado para una estructura arborescente jerárquica que es una estructura de datos que no se considera en la H.264 convencional y es único para el nuevo estándar HEVC. Alternativamente, se puede realizar una referencia de memoria .
Adicionalmente, el aparato de decodificación de imágenes de acuerdo con un aspecto de la presente invención es un aparato de decodificación de imágenes que utiliza una decodificación aritmética, y el aparato .incluye: una unidad de control de contexto configurada para determinar un contexto para el uso en un bloque arborescente actual, de entre una pluralidad de contextos; una unidad de decodificación aritmética configurada para realizar una decodificación aritmética en una secuencia de bits que corresponde al bloque arborescente actual, utilizando el contexto determinado para decodificar una secuencia binaria, la secuencia de bits se obtiene al realizar una codificación aritmética en un parámetro de control del bloque arborescente actual; y una unidad de binarización inversa configurada para binarizar de manera inversa la secuencia binaria para decodificar el parámetro de control del bloque arborescente actual, en donde la unidad de control de contexto se configura para: determinar un tipo de señal del parámetro de control del bloque arborescente actual; determinar el contexto bajo una primera condición de que se utilicen parámetros de control decodificados de bloques arborescentes adyacentes del bloque arborescente actual, cuando el tipo de señal es un primer tipo, los bloques arborescentes adyacentes son un bloque arborescente arborescente izquierdo y un bloque arborescente arborescente superior del bloque arborescente actual; y determinar el contexto bajo una segunda condición de que no se utilice el parámetro de control decodificado del bloque arborescente arborescente superior, cuando el tipo de señal es un segundo tipo diferente del primer tipo, el primer tipo es uno de "split_coding_unit_flag" y "skip_flag" y el segundo tipo es uno de "mvd_l0" y "mvd_ll" .
Con la configuración, el aparato de decodificación de imágenes puede reducir el uso de memoria.
Adicionalmente , el aparato de codificación de imágenes de acuerdo con un aspecto de la presente invención es un aparato de codificación de imágenes que utiliza una codificación aritmética, y el aparato incluye: una unidad de binarización configurada para binarizar un parámetro de control de un bloque arborescente actual para generar una secuencia binaria; una unidad de control de contexto configurada para determinar un contexto para el uso en el bloque arborescente actual, de entre una pluralidad de contextos; y una unidad de codificación aritmética configurada para realizar una codificación aritmética en la secuencia binaria utilizando el contexto determinado para generar una secuencia de bits, en donde la unidad de control de contexto se configura para: determinar un tipo de señal del parámetro de control del bloque arborescente actual; determinar el contexto bajo una primera condición de que se utilicen parámetros de control de bloques arborescentes adyacentes del bloque arborescente actual, cuando el tipo de señal es un primer tipo, los bloques arborescentes adyacentes son un bloque arborescente arborescente izquierdo y un bloque arborescente arborescente superior del bloque arborescente actual; y determinar el contexto bajo una segunda condición de que no se utilice el parámetro de control del bloque arborescente arborescente superior, cuando el tipo de señal es un segundo tipo diferente del primer tipo, el primer tipo es uno de "split_coding_unit_flag" y "skip_flag" y el segundo tipo es uno de "mvd_l0" y "mvd_ll" .
Con la configuración, el aparato de codificación de imágenes pueden reducir el uso de memoria.
Adicionalmente, el aparato de codificación y decodificación de imágenes de acuerdo con un aspecto de la presente invención es un aparato de codificación y decodificación de imágenes que incluye el aparato de decodificación de imágenes y el aparato de codificación de imágenes.
Los aspectos generales o específicos pueden ser implementados por un sistema, un método, un circuito integrado, un programa de computadora o un medio de grabación, o por una combinación arbitraria del sistema, el método, el circuito integrado, el programa de computadora y el medio de grabación.
El aparato de decodificación de imágenes y el aparato de codificación de imágenes de acuerdo con un aspecto de la presente invención se describirán específicamente con referencia a las figuras.
Las modalidades descritas en lo sucesivo indican ejemplos; específicos de. la presente invención. Los valores, formas, materiales, elementos constituyentes, posiciones y conexiones de los elementos constituyentes, pasos y órdenes de los pasos indicados en las Modalidades son ejemplos y no limitan la presente invención. Los elementos constituyentes en las Modalidades que no se describen en las Reivindicaciones independientes que describen el concepto más genérico de la presente invención se describen como elementos constituyentes arbitrarios.
Modalidad 1 Se describirá un aparato de codificación de imágenes de acuerdo con la Modalidad 1 de la presente invención. El aparato de codificación de imágenes de acuerdo con la Modalidad 1 determina un contexto al conmutar entre (1) el uso del bloque arborescente arborescente superior y (2) sin el uso del bloque arborescente arborescente superior, de acuerdo con un tipo de señal de un parámetro de control en la codificación aritmética. Con la estructura, el deterioro en la calidad de imagen se puede suprimir y el uso de memoria se puede reducir.
En primer lugar, se describirá una configuración del aparato de codificación de imágenes de acuerdo con la Modalidad 1.
La FIGURA 1 es un diagrama de bloques arborescentes que ilustra un aparato de codificación de imágenes 100 de acuerdo con la Modalidad 1.
El aparato de codificación de imágenes 100 mostrado en la FIGURA 1 es un aparato de codificación de imágenes que utiliza una codificación aritmética y codifica una señal de imagen de entrada 121 para generar una corriente de bits 124. El aparato de codificación de imágenes 100 incluye una unidad de control 101, unidad de sustracción 102, unidad de transformación y cuantificación 103, unidad de codificación de longitud variable 104, unidad de cuantificación inversa y transformación inversa 105, unidad de adición 106, unidad de intra-predicción 107, unidad de inter-predicción 108 y conmutador 109.
La unidad de control 101 calcula un parámetro de control 130 con base en la señal de imagen de entrada 121 que se codifica. Por ejemplo, el parámetro de control 130 incluye información sobre un tipo de imagen de la señal de imagen de entrada 121 que se codifica, un tamaño de una unidad de predicción de movimiento (unidad de predicción, PU) del bloque arborescente actual que se codifica e información de control de la unidad de predicción de movimiento. En este documento, el parámetro de control 130 (datos de control) mismo se debe codificar. De esta manera, la unidad de control 101 envía el parámetro de control 130 a la unidad de codificación de longitud variable 104.
La unidad de sustracción 102 calcula una señal residual 122 que es una diferencia (valor residual) entre la señal de imagen de entrada 121 y una señal de. predicción de imagen 129 en una base de unidad de bloque.
La unidad de transformación y cuantificación 103 transforma la señal residual 122 en valores de coeficientes de frecuencia y cuantifica los valores de coeficientes de frecuencia obtenidos en coeficientes de transformación cuantificados 123 (datos residuales) .
La unidad de cuantificación inversa y transformación inversa 105 cuantifica de manera inversa los coeficientes de transformación cuantificados 123 en valores de coeficientes de frecuencia y transforma de manera inversa los valores de coeficientes de frecuencia obtenidos en una señal residual reconstruida 125.
La unidad de adición 106 agrega la señal residual 125 a la señal de predicción de imagen 129 y envía una señal de imagen reconstruida 126.
La unidad de intra-predicción 107 realiza una intra-predicción utilizando la señal de imagen reconstruida 126 para generar una señal de predicción de imagen 127. La unidad de inter-predicción 108 realiza una inter-predicción utilizando la señal de imagen reconstruida 126 para generar una señal de predicción de imagen 128.
El conmutador 109 selecciona una de la señal de predicción de imagen 127 y la señal de predicción de imagen 128 y envía la señal seleccionada como la señal de predicción de imagen 129.
La unidad de codificación de longitud variable 104 codifica, utilizando la CABAC, los coeficientes de transformación cuantificados 123 y el parámetro de control 130 para cada bloque arborescente de entrada para generar la corriente de bits 124.
Después, se describirá la configuración de la unidad de codificación de longitud variable 104.
La FIGURA 2 es un diagrama de bloques arborescentes funcional de la unidad de codificación de longitud variable 104. La unidad de codificación de longitud variable 104 incluye una unidad de binarización 141, una unidad de control de contexto 142 y una unidad de codificación aritmética binaria 143. Lo siguiente describe el proceso de codificación de longitud variable en el parámetro de control 130. Aunque la descripción acerca del proceso de codificación de longitud variable en los coeficientes de transformación cuantificados 123 se omite, el proceso se puede implementar, por ejemplo, utilizando una técnica conocida.
La unidad de binarización 141 binariza el parámetro de control 130 para generar una secuencia binaria 151. Más específicamente, la unidad de binarización 141 es una unidad de procesamiento que realiza "II.1) procesamiento de binarización" de acuerdo con la NPL 1. La unidad de binarización 141 transforma el parámetro de control 130 en la secuencia binaria 151 referida como "serie binaria" para cada tipo de señal, de acuerdo con un método de binarización predeterminado. La correspondencia entre los tipos de señal y los métodos de binarización se describirá posteriormente. Cuando el parámetro de control de entrada 130 es un valor binario, tal como un indicador, la unidad de binarización 141 envía el parámetro de control 130 como la secuencia binaria 151 como está.
La unidad de control de contexto 142 determina un contexto para el uso en la codificación aritmética del parámetro de control 130 incluido en un bloque arborescente actual que es procesado, de entre una pluralidad de contextos (una tabla de estado de probabilidad) . Adicionalmente , la unidad de control de contexto 142 envía un índice de contexto 152 que especifica el contexto determinado a la unidad de codificación aritmética binaria 143.
Más específicamente, la unidad de control de contexto 142 es una unidad de procesamiento que realiza "2) modelado de contexto" de acuerdo con la NPL 1. La unidad de control de contexto 142 recibe secuencialmente una pluralidad de elementos incluidos en la secuencia binaria 151 enviados de la unidad de codificación aritmética binaria 143. La unidad de control de contexto 142 selecciona uno de los contextos que se utilizan para el valor binario del parámetro de control 130, de acuerdo con el tipo de señal del parámetro de control 130 y una posición de elemento del valor binario en la secuencia binaria 151 y envía, a la unidad de codificación aritmética binaria 143, el índice de contexto 152 que es un índice que indica el contexto seleccionado.
Adicionalmente, la unidad de control de contexto 142 mantiene la tabla de valores de estado de probabilidad (valores de índices de contexto) obtenidos al dividir los elementos en la secuencia binaria del parámetro de control 130 en condiciones de probabilidades condicionales, como estados del contexto, e inicializa y actualiza la tabla de estado de probabilidad.
Adicionalmente, la unidad de control de contexto 142 mantiene un estado (índice de estado i de probabilidad) para cada condición de ocurrencia t (para cada contexto) , como una división adicional de un tipo de señal (para cada número de elemento en la secuencia binaria del parámetro de control 130 cuando el número de elementos en la secuencia binaria es dos o más; lo mismo tendrá aplicación posteriormente) . El estado es representado por el valor total de 7 bits al combinar la probabilidad de ocurrencia P (relación interna, típicamente, un valor de 6 bits) que es la probabilidad más baja de uno de dos valores 0 y 1 y un valor de 1 bit que indica cual de los valores tiene la probabilidad más alta. Adicionalmente, mantener un estado significa inicializar y actualizar el estado. Por ejemplo, la actualización corresponde a cambiar la indización que indica un estado de probabilidad actual (es decir, una probabilidad) como una transición entre 64 estados finitos como en H.264.
Cuando ocurre un evento X en el lado más probable que tiene la probabilidad más alta entre los dos valores, una relación de la probabilidad en el lado más probable se incrementa ligeramente. Por ejemplo, la unidad de control de contexto 142 puede incrementar ligeramente la relación de la probabilidad en el lado más probable al incrementar o disminuir, por 1, el valor del índice de estado de probabilidad que corresponde a 64 tablas. Por otra parte, cuando ocurre un evento Not-X que tiene la probabilidad más baja (contra la probabilidad predicha) , la unidad de control de contexto 142 disminuye en gran medida la relación de la probabilidad más posible mantenida con base en un coeficiente de escala predeterminado oc (por ejemplo, ~ 0.95) (véase la FIGURA 6 en la NPL 1) . La unidad de control de contexto 142 de acuerdo con la Modalidad 1 hace una transición y mantiene un estado, con base en un valor de cambio de índice de tabla correspondiente con el fin de ser asociado con el cambio en la consideración de a como en H.264.
La unidad de codificación aritmética binaria 143 realiza una codificación aritmética en la secuencia binaria 151 utilizando el contexto determinado por la unidad de control de contexto 142 para generar la corriente de bits 124 (secuencia de bits) .
Más específicamente, la unidad de codificación aritmética binaria 143 es una unidad de procesamiento que realiza "3) codificación aritmética binaria" de acuerdo con la NPL 1. La unidad de codificación aritmética binaria 143 realiza una codificación aritmética en la 'secuencia binaria 151 utilizando el contexto especificado por el índice de contexto 152 para generar la corriente de bits 12 . En este documento, la codificación aritmética es para manejar eventos que ocurren para los parámetros de control 130 de varios tipos de señal como una suma acumulativa de probabilidades y determinar correspondencias entre los eventos al reducir el rango a un rango predeterminado en una línea de número.
En primer lugar, la unidad de codificación aritmética binaria 143 divide la línea de número uno en dos medias secciones, de acuerdo con las probabilidades de ocurrencia de dos posibles valores del valor binario proporcionado de la unidad de control de contexto 142. Cuando el valor actual que ocurre para el valor binario (por ejemplo, 0) es un valor con una probabilidad más alta (que excede 0.5 (por ejemplo, 0.75)), la unidad de codificación aritmética binaria 143 mantiene el límite más bajo "Bajo" en el rango en la línea de número sin cambio y establece un valor que corresponde a un resultado de la multiplicación de una vez un coeficiente de escala 0.95 por la probabilidad de 0.75 esta vez, a un nuevo rango. Por otra parte, cuando el valor binario generado realmente es un valor predicho con una probabilidad más baja, la unidad de codificación aritmética binaria 143 cambia el límite más bajo "Bajo" por la probabilidad más alta y cambia el rango de acuerdo con la probabilidad más baja. Las secciones se mantienen de acuerdo con una suma acumulativa de resultados de multiplicaciones de los rangos de probabilidad. Cuando ocurre exitosamente un valor con una probabilidad más baja, la precisión de la longitud del rango pronto se vuelve más baja que la precisión que puede ser asegurada por un cálculo. En este documento, la unidad de codificación aritmética binaria 143 agranda (normaliza ide nuevo) el rango para mantener la precisión y envía la secuencia de bits que indica el rango actual . Por el contrario, cuando ocurre exitosamente un valor con una probabilidad más alta (0.95, etcétera), los valores de probabilidad pueden llevar un número de cálculos (transiciones de estado en el caso de una implementación por una tabla) hasta que la longitud del rango se vuelva más corta que una longitud predeterminada incluso con la multiplicación de los valores. De esta manera, el número de símbolos que se pueden acumular hasta que el bit es enviado es grande.
La FIGURA 3 es una tabla en la cual los parámetros de control 130 cada uno que utiliza un modelo de contexto con base en un valor del parámetro de control 130 de un bloque arborescente adyacente se clasifican.
El significado de cada columna se describirá desde la izquierda de la tabla. (c2) El tipo de señal (elemento de sintaxis) indica un nombre específico de un tipo de señal del parámetro de control 130. El significado de cada uno de los tipos de señal se describirá posteriormente. (c3) El esquema de binarización indica un esquema de binarización que se aplica al parámetro de control 130 (SE) especificado en la columna inmediatamente a la izquierda. La unidad de binarización 141 realiza el proceso de binarización. En la columna, "Longitud fija" significa que la unidad de binarización 141 envía el valor del parámetro de control 130 en la sección inmediatamente a la izquierda como una secuencia binaria (serie binaria) de una longitud fija. En la HEVC, un tipo de señal del parámetro de control 130 cuyo nombre termina con "indicador" es un valor binario de ya sea 0 o 1. De esta manera, la unidad de binarización 141 envía solo el primer elemento (binldx = 0) como el elemento de la secuencia binaria 151 y no envía los elementos después del segundo elemento (binldx > = 1) . En otras palabras, la unidad de binarización 141 envía el valor del parámetro de control 130 como la secuencia binaria 151 como está.
Adicionalmente , "Longitud variable" en la columna significa que la unidad de binarización 141 mapea, en una secuencia binaria, el valor del parámetro de control 130 utilizando secuencias binarias con longitudes variables respectivas cuyos valores se asocian para tener longitudes binarias en orden ascendente de las frecuencias de ocurrencia (serie binaria o secuencias binarias cada una con el número de elementos > 1) y envía la secuencia binaria. Por ejemplo, la unidad de binarización 141 emplea y envía un esquema de acuerdo con el tipo de señal, tal como un esquema unario (truncado) y una combinación del esquema unario y otros esquemas Golomb exponenciales (véase "A. Binarización" de la NPL 1) . En el caso de la "Longitud variable", el número de elementos de la secuencia binaria 151 se limita algunas veces a 1 o es igual a o mayor que 2. Una unidad de binarización inversa en un aparato de decodificación de imágenes que se describe posteriormente realiza la transformación inversa al esquema de binarización para reconstruir la secuencia binaria de entrada en. un valor múltiple o un valor de indicador.
Con respecto al (c4) Indice de contexto del primer elemento (binldx = 0) , la unidad de control de contexto 142 indica la elección de un índice de contexto (incremento) que se aplica al primer elemento incluido en una secuencia binaria generada de acuerdo con el esquema de binarización especificado en la columna de c3. En la columna, "0, 1, 2" indica que la unidad de control de contexto 142 selecciona y aplica una de tres tablas de estado de probabilidad (contextos) . Por ejemplo, tres índices de contexto con condiciones detalladas se preparan para el tipo de señal uno "skip_flag", es decir, se preparan tres contextos y la codificación aritmética se realiza en los índices de contexto.
Similarmente , "0, 1, 2, 3" en la columna c4 indica que el contexto que se aplica al primer elemento (binldx = 0) incluido en la secuencia binaria 151 se selecciona de- entre uno de cuatro valores, ya sea 0, 1, 2 o 3. La secuencia binaria 151 se obtiene al mapear, en una secuencia binaria, el valor del parámetro de control 130 del tipo de señal especificado en la columna de c2 , de acuerdo con el esquema de binarización en la columna de c3. Las expresiones condicionales en la columna se describirán posteriormente.
Con respecto a la (c5) Condición de bloque arborescente arborescente izquierdo L (condL) , la unidad de control de contexto 142 indica la condición de bloque arborescente arborescente izquierdo para seleccionar uno de 0, 1 y 2 en la columna c4. La condición de bloque arborescente arborescente izquierdo L tiene un valor verdadero o falso determinado de acuerdo con el valor del parámetro de control del bloque arborescente arborescente izquierdo que corresponde al parámetro de control que es codificado (o que es decodificado) .
Por ejemplo, en el caso donde el parámetro de control (SE) es skip_flag, la condición de bloque arborescente arborescente izquierdo L tiene el valor verdadero cuando skip_flag [xL] [yL] indica verdadero (por ejemplo, 1) y tiene el valor falso cuando indica falso (por ejemplo, 0) .
Con respecto a la (c6) Condición de bloque arborescente arborescente superior A, la unidad de control de contexto 142 indica la condición de bloque arborescente arborescente superior para seleccionar uno de 0 , 1 y 2 en los elementos de codificación o decodificación de una secuencia especificada en la columna c4. La condición de bloque arborescente arborescente superior A tiene un valor verdadero o falso determinado de acuerdo con el valor del parámetro de control del bloque arborescente arborescente superior que corresponde al parámetro de control que es codificado (o que 5 es decodificado) . Por ejemplo, en el caso donde el parámetro de control (SE) es skip_flag, la condición de bloque arborescente arborescente superior A tiene el valor verdadero cuando skip_flag [xA] [yA] indica verdadero (por ejemplo, 1) y tiene el valor falso cuando indica falso (por ejemplo, 0) . 0 Aunque no se ilustra, el tipo de señal de más de dos bits se asocia con "(c7) El incremento de contexto que se aplica a binldx > = 1" . Este (c7) indica el modelo de contexto aplicado por la unidad de control de contexto 142 a un valor binario después del segundo elemento en la secuencia 5 binaria (valor binario de un elemento de secuencia binaria que incluye un valor de índice de binldx > = 1) .
• .· . En el método de codificación de la Modalidad 1, las siguientes operaciones se conmutan de acuerdo con el tipo de señal del parámetro de control 130 para la condición de 0 bloque arborescente arborescente izquierdo L y la condición de bloque arborescente arborescente superior A (operados utilizando diferentes patrones) : (Patrón 1) Utilizando dos bloques arborescentes adyacentes (un valor de determinación de la condición de 5 bloque arborescente arborescente izquierdo L y un valor de determinación de la condición de bloque arborescente arborescente superior A) ; : (Patrón 2) Utilizando un bloque arborescente arborescente adyacente (solo un valor de determinación de la condición de bloque arborescente arborescente izquierdo L) ; y (Patrón 3) Utilizando cero bloques arborescentes adyacentes (no utilizando un valor de determinación de la condición de bloque arborescente arborescente izquierdo L ni un valor de determinación de la condición de bloque arborescente arborescente superior A) .
La FIGURA 4 es un diagrama de flujo que indica un método de codificación de imágenes de acuerdo con la Modalidad 1 que es realizado por la unidad de codificación de longitud variable 104 mostrada en la FIGURA 2.
En primer lugar, la unidad de binarización 141 mapea el valor del parámetro de control 130 en una secuencia binaria de acuerdo con un esquema que corresponde al tipo de señal del parámetro de control 130 (S101) .
Después, la unidad de control de contexto 142 obtiene un valor básico de un contexto para el uso en una codificación aritmética del parámetro de control 130 (S102) . Por ejemplo, la unidad de control de contexto 142 determina el valor básico de acuerdo con el tipo de imagen (I, P o B) .
Después, la unidad de control de contexto 142 determina un valor de contexto utilizando uno de los patrones 1 a 3 , con base en el tipo de señal del parámetro de control 130 (S103) . En este documento, la determinación de un valor de contexto es equivalente a la determinación de un valor de ajuste (valor de incremento Ctxldxlnc) para el valor básico del contexto.
En primer lugar, la unidad de control de contexto 142 determina el tipo de señal del parámetro de control 130 (S103) . Cuando el tipo de señal del parámetro de control 130 es el primer tipo que corresponde al patrón 1 (el primer tipo en S104) , la unidad de control de contexto 142 determina un valor de contexto utilizando un valor de determinación deducido a partir de valores de parámetros de control de dos bloques arborescentes adyacentes (bloque arborescente arborescente A y bloque arborescente arborescente B) (S105) . En otras palabras, la unidad de control de contexto 142 determina un contexto bajo una condición de que se utilicen los parámetros de control de los dos bloques arborescentes adyacentes del bloque arborescente arborescente izquierdo y el bloque arborescente arborescente superior. En este documento, la unidad de control de contexto 142 utiliza tanto un resultado de la determinación de (c5) condL como un resultado de la determinación de (c6) condA en la FIGURA 3. Por consiguiente, los datos de una hilera de imágenes se mantienen para los parámetros de control del primer tipo.
Por otra parte, cuando el tipo de señal del parámetro de control 130 es el segundo tipo que corresponde al patrón 2 (el segundo tipo en S104) , la unidad de control de contexto 142 determina un valor de i contexto utilizando un valor de un parámetro de control de un bloque arborescente arborescente adyacente (un bloque arborescente inmediatamente adyacente en el orden de codificación) (S106) . En otras palabras, la unidad de control de contexto 142 determina el valor de contexto bajo una condición de que no se utilice el parámetro de control del bloque arborescente arborescente superior .
Por otra parte, cuando el tipo de señal del parámetro de control 130 es el tercer tipo que corresponde al patrón 3 (el tercer tipo en S104) , la unidad de control de contexto 142 determina fijamente un valor de contexto sin utilizar los parámetros de control tanto del bloque arborescente arborescente superior como del bloque arborescente arborescente izquierdo (S107) .
Después, la unidad de control de contexto 142 agrega el incremento determinado en el Paso S103 al valor básico del índice de contexto determinado en el Paso S102 para determinar un valor de índice de contexto (S108) .
Finalmente, la unidad de codificación aritmética binaria 143 realiza una codificación aritmética en el valor binario del primer elemento utilizando el valor de contexto especificado por el valor de índice de contexto determinado en el Paso S108 para generar la secuencia de bits (corriente de bits 124) (S109) . 4 Después, cuando los procesos de los Pasos S102 a S109 no se ejecutan en todos los elementos incluidos en la secuencia binaria (No en S110) , la unidad de codificación de ;> longitud variable 104 realiza los procesos de los Pasos S102 a S109 en el siguiente elemento incluido en la secuencia binaria. Por otra parte, cuando los procesos de los Pasos S102 a S109 se completan en todos los elementos incluidos en la secuencia binaria (Si en S110), la unidad de codificación de longitud variable 104 termina el procesamiento de codificación en el parámetro de control del bloque arborescente actual.
Como se describiera anteriormente, el aparato de codificación de imágenes 100 de acuerdo con la Modalidad 1 determina un contexto utilizando el bloque arborescente arborescente superior en la realización de una codificación aritmética en el parámetro de control del primer tipo y determina un contexto sin . utilizar el bloque arborescente arborescente superior para los parámetros de control del segundo y tercer tipo.
En comparación con el caso donde el bloque arborescente arborescente izquierdo y el bloque arborescente arborescente superior se utilizan como "utilizando uniformemente un modelo de contexto con base en valores de parámetros de control de bloques arborescentes adyacentes" , el aparato de codificación de imágenes 100 puede reducir el uso de memoria con la configuración. De esta manera, el aparato de codificación de imágenes 100 puede suprimir el deterioro en la calidad de imagen y reduce el uso de memoria.
Modalidad 2 La Modalidad 2 describirá un aparato de decodificación de imágenes que decodifica la corriente de bits 124 generada por el aparato de codificación de imágenes 100.
La FIGURA 5 es un diagrama de bloques arborescentes que ilustra un aparato de decodificación de imágenes 200 de acuerdo con la Modalidad 2. El aparato de decodificación de imágenes 200 es un aparato de decodificación de imágenes que utiliza una decodificación aritmética y decodifica la corriente de bits 124 para generar una señal de imagen 229. En este documento, la corriente de bits 124 es, por ejemplo, generada por el aparato de codificación de imágenes 100.
El aparato de decodificación de imágenes 200 incluye una unidad de control 201, unidad de decodificación de longitud variable 202, unidad de cuantif icación inversa 204, unidad de transformación inversa 205, unidad de adición 206, unidad de intra-predicción 207 y unidad de inter-predicción 208.
El aparato de decodificación de imágenes 200 realiza un proceso de decodificación para cada corriente de bits de una unidad de procesamiento predeterminada. La unidad de procesamiento es, por ejemplo, una unidad de corte o una unidad de bloque.
La unidad de decodificación de longitud variable 202 realiza una decodificación aritmética en la corriente de bits 124 para generar un parámetro de control 230 (elemento de sintaxis de datos de control) y coeficientes de transformación cuantificados 223 (valores de elementos de sintaxis de datos residuales) . La unidad de control 201 recibe el parámetro de control generado 230.
La unidad de control 201 controla cada una de las unidades . de procesamiento incluidas en el aparato de decodificación de imágenes 200, de acuerdo con el parámetro de control 230.
La unidad de cuantificación inversa 204 cuantifica de manera inversa los coeficientes de transformación cuantificados 223 en coeficientes de transformación ortogonales 224.
La unidad de transformación inversa 205 transforma de manera inversa los coeficientes de transformación ortogonal 224 para reconstruir una señal residual 225. La unidad de adición 206 agrega la señal residual 225 a una señal de predicción de imagen (señal de imagen 229) para generar una señal de imagen decodificada 226.
La unidad de intra-pred-icción 207 realiza una intra-predicción utilizando la señal de imagen decodificada 226 para generar una señal de predicción de imagen 227. La unidad de inter-predicción 208 realiza una inter-predicción utilizando la señal de imagen decodificada 226 para generar una señal de predicción de imagen 228.
El conmutador 209 selecciona una de la señal de predicción de imagen 227 y la señal de predicción de imagen 228 y envía la señal seleccionada como la señal de imagen 229 (señal de predicción de imagen) .
Después, se describirá la configuración de la unidad de decodificación de longitud variable 202.
La FIGURA 6 es un diagrama de bloques arborescentes funcional que ilustra una configuración de la unidad de decodificación de longitud variable 202. La unidad de decodificación de longitud variable 202 incluye una unidad de decodificación aritmética binaria 243, una unidad de control de contexto 242 y una unidad de binarización inversa 241. Lo siguiente . describe el proceso de decodificación de longitud variable en el parámetro de control 230. Aunque la descripción acerca del proceso de decodificación de longitud variable en los coeficientes de transformación cuantificados 223 se omite, el proceso se puede implementar, por ejemplo, utilizando una técnica conocida.
La unidad de control de contexto 242 determina un contexto para el uso en una decodificación aritmética del parámetro de control 230 del bloque arborescente actual, de entre una pluralidad de contextos. Adicionalmente, la unidad de control de contexto 242 envía un índice de contexto 252 que especifica el contexto determinado a la unidad de decodificación aritmética binaria 243.
Más específicamente, la unidad de control de contexto 242 utiliza el mismo modelo de contexto que aquel de la unidad de control de contexto 142 mostrada en la FIGURA 2 como un modelo de transición de probabilidad mantenido. Cuando la unidad de codificación aritmética 143 utiliza 64 estados de probabilidad, la unidad de decodificación aritmética binaria 243 también mantiene los 64 estados de probabilidad. Esto es debido a que tanto el codificador como el decodificador necesitan interpretar un rango de la línea de número que se codifica exactamente de la misma manera. De esta manera, el decodificador utiliza el mismo patrón que el patrón seleccionado por el codificador de entre los tres patrones 1 a 3.
La unidad de decodificación aritmética 243 realiza una decodificación aritmética en la secuencia de bits (corriente de bits 124) utilizando el contexto determinado por la unidad de control de contexto 242 para reconstruir la secuencia binaria 251. Más específicamente, la unidad de decodificación aritmética 243 reconstruye la secuencia de bits de entrada en la secuencia binaria 251, de acuerdo con el contexto (tabla de estados de probabilidad) especificado por el índice de contexto proporcionado de la unidad de control de contexto 242.
La unidad de binarización inversa 241 reconstruye la secuencia binaria 251 en un parámetro de control 230 si es necesario a través del proceso de binarización inversa. Como tal, la unidad de control de contexto 142 incluida en el aparato de codificación de imágenes 100 y la unidad de control de contexto 242 incluida en el aparato de decodificación de imágenes 200 utilizan el mismo modelo de contexto en tanto la codificación aritmética como la decodificación aritmética de un parámetro de control de un cierto tipo de señal.
La FIGURA 7 es un diagrama de flujo que indica un método de decodificación de imágenes de acuerdo con la Modalidad 2 que es realizado por la unidad de decodificación de longitud variable 202.
En primer lugar, la unidad de decodificación de longitud variable 202 obtiene la corriente de bits 124 (S201) .
Después, la unidad de control de contexto 242 determina un tipo de señal de un parámetro de control que se decodifica, de acuerdo con la estructura de datos de la corriente de bits 124 (S202) .
Después, la unidad de control de contexto 242 determina un valor básico de un contexto para el uso en una decodificación aritmética del parámetro de control que es decodificado (S203) . Por ejemplo, la unidad de control de contexto 242 determina el valor básico de acuerdo con el tipo de imagen (I, P o B) . l Después, la unidad de control de contexto 242 determina un valor de contexto utilizando uno de los patrones 1 a 3, con base en el tipo de señal del parámetro de control (S204) . En este documento, la determinación de un valor de contexto es equivalente a la determinación de un valor de ajuste (valor de incremento Ctxldxlnc) para el valor básico del contexto. Por ejemplo, la unidad de control de contexto 242 determina estáticamente uno de los patrones 1 a 3 con base en el tipo de señal del parámetro de control al seguir una tabla predeterminada.
La unidad de control de contexto 242 conmuta entre bloques arborescentes adyacentes para el uso en la determinación de un contexto para obtener un valor binario del primer elemento incluido en la secuencia binaria 251 utilizando la decodificación aritmética, de acuerdo con el tipo de señal del parámetro de control.
En primer lugar, la unidad de control de contexto 242 determina el tipo de señal del parámetro de control 230 (S205) . Cuando el tipo de señal es el primer tipo que corresponde al patrón 1 (el primer tipo en S205) , la unidad de control de contexto 242 determina un valor de contexto utilizando parámetros de control de dos bloques arborescentes adyacentes (S206) . En otras palabras, la unidad de control de contexto 242 determina el valor de contexto bajo una condición de que se utilicen los parámetros: de control decodificados de los dos bloques arborescentes adyacentes del bloque arborescente arborescente izquierdo y el bloque arborescente arborescente superior.
Por otra parte, cuando el tipo de señal es el segundo tipo que corresponde al patrón 2 (el segundo tipo en S205) , la unidad de control de contexto 242 determina un valor de contexto utilizando un valor de un parámetro de control de un bloque arborescente arborescente adyacente (un bloque arborescente arborescente inmediatamente adyacente en el orden de codificación) (S207) . En otras palabras, la unidad de control de contexto 242 determina el valor de contexto bajo una condición de que no se utilice el parámetro de control decodificado del bloque arborescente arborescente superio .
Por otra parte, cuando el tipo de señal es el tercer tipo que corresponde al patrón 3 (el tercer tipo en S205) , la unidad de control de contexto 242 determina fijamente un valor de contexto (S208) . En otras palabras, la unidad de control de contexto 242 determina el valor de contexto bajo una condición de que no se utilicen los parámetros de control decodificados del bloque arborescente arborescente superior y el bloque arborescente arborescente izquierdo.
Después, la unidad de control de contexto 242 agrega el incremento determinado en i el Paso S204 al valor básico del índice de contexto determinado en el Paso S203 para determinar un valor de índice de contexto (S209) .
Después, la unidad de decodificación aritmética binaria 243 determina uno de los elementos de la secuencia binaria a través de una decodificación utilizando el valor de contexto indicado por el valor de índice de contexto proporcionado de la unidad de control de contexto 242 (S210) .
Después, cuando los procesos de los Pasos S203 a S210 no se ejecutan en todos los elementos incluidos en la secuencia binaria (No en S211) , la unidad de decodificación de longitud variable 202 realiza los procesos de los Pasos S203 a S210 en el siguiente elemento incluido en la secuencia binaria.
Por otra parte, cuando los procesos de los Pasos S203 a S210 se completan en todos los elementos incluidos en la secuencia binaria (Si en S211) , la unidad de binarización inversa 241 cambia uno o más de los elementos de la secuencia binaria 251 obtenidos al repetir los procesos de los Pasos S203 a S210 más de una vez para generar el parámetro de control 230 (S212) .
Como se describiera anteriormente, el aparato de decodificación de imágenes 200 de acuerdo con la Modalidad 2 determina un contexto utilizando el bloque arborescente arborescente superior en la realización de una decodificación aritmética en el parámetro de control del primer tipo y determina un contexto sin utilizar el bloque arborescente arborescente superior para los parámetros de control del segundo y tercer tipo.
En comparación con el caso donde el bloque arborescente arborescente izquierdo y el bloque arborescente arborescente superior se utilizan como "utilizando uniformemente un modelo de contexto con base en valores de parámetros de control de bloques arborescentes adyacentes" , el aparato de decodificación de imágenes 200 puede reducir el uso de memoria con la configuración. De esta manera, el aparato de decodificación de imágenes 200 puede suprimir el deterioro en la calidad de imagen y puede reducir el uso de memoria.
Por ejemplo, cuando la secuencia binaria 251 es un indicador y tiene solo un elemento, es decir, la secuencia binaria 251 está compuesta de 1 valor binario, la unidad de binarización inversa 241 puede enviar la secuencia binaria 251 como está.
Además de la descripción anterior, la unidad de control 101 o 201 puede controlar cada una de las unidades de procesamiento o puede hacer referencia a un valor de una memoria, a través de una línea de señal que no se ilustra.
Aunque la unidad de control de contexto 142 o 242 conmuta entre los tres patrones 1 a 3 de acuerdo con un tipo" de señal de un parámetro de control en la descripción anterior, puede i conmutar entre dos de los patrones 1 a 3 de acuerdo con el tipo de señal. En otras palabras, la unidad de control de contexto 142 o 242 puede conmutar entre utilizar y no utilizar la condición de bloque arborescente arborescente superior, de acuerdo con un tipo de señal de un parámetro de control.
Adicionalmente , la unidad de control de contexto 142 o 242 puede cambiar un método para conmutar entre los modelos de contexto seleccionados de esta manera (que incluyen un caso donde el incremento de modelo de contexto se cambia; lo mismo tendrá aplicación posteriormente) de acuerdo con información de imagen predeterminada. Por ejemplo, la unidad de control de contexto 142 o 242 puede conmutar además la política de conmutación misma, de acuerdo con la cantidad de memoria o el tamaño de la anchura horizontal o un formato de muestreo de una imagen que afecta al número de entrenamientos de cada contexto.
Aunque la unidad de control de contexto 142 o 242 conmuta entre utilizar y no utilizar la condición de bloque arborescente arborescente superior como la descripción simplificada, la unidad de control de contexto 142 o 242 puede combinar un caso donde el bloque arborescente arborescente superior no está disponible para la conmutación y puede aplicar el caso combinado. Por ejemplo, la unidad de control de contexto 142 o 242 puede cambiar la política de conmutación misma, de acuerdo a si un corte que es procesado es o no un corte entrópico (entropy_slice_flag indica 1 o 0) . Similarmente , cuando la disponibilidad del bloque arborescente arborescente adyacente superior no se puede asegurar, la unidad de control de contexto 142 o 242 puede cambiar la política de conmutación para no utilizar el bloque arborescente arborescente superior.
Por ejemplo, como se ilustra en la FIGURA 8, la unidad de control de contexto 142 o 242 puede conmutar la política de determinación del modelo de contexto entre el primer criterio de determinación (S302) y el segundo criterio de determinación (S303) , de acuerdo con un valor de un parámetro de una unidad predeterminada. En este documento, "de acuerdo con un valor de un parámetro de una unidad predeterminada" significa de acuerdo a si un corte es o no un corte entrópico como se describiera anteriormente. Adicionalmente , el. primer criterio de determinación es un criterio basado en cual de los procesos mostrados en la FIGURA 7 se realiza. El segundo criterio de determinación es un criterio que excluye el Paso S204 mostrado en la FIGURA 7, y es, por ejemplo, un criterio convencional. Esto es equivalente a la determinación del incremento de índice de contexto, utilizando un parámetro de una unidad local predeterminada y un valor de un parámetro de una unidad mayor que la unidad local predeterminada.
En otras palabras, la unidad de control de contexto 142 o 242 puede conmutar de un criterio de determinación que se aplica a una unidad más pequeña que la primera unidad, a otro criterio de determinación con base en un valor de un parámetro de control de la primera unidad.
Adicionalmente, la unidad de control de contexto 142 o 242 puede cambiar el criterio de determinación que se utiliza, de acuerdo con las características de un sistema de imagen. Por ejemplo, la unidad de control de contexto 142 o 242 puede cambiar el criterio de determinación que se utiliza, de acuerdo con intervalos de imágenes-I (valores de establecimiento de IntraPeriod) .
Aunque la unidad de control de contexto 142 o 242 conmuta entre los criterios de determinación de acuerdo con las condiciones anteriores, puede conmutar si se utiliza o no el bloque arborescente arborescente superior.
'Adicionalmente, la unidad de control de contexto 142 o 242 puede determinar si un parámetro de control del bloque arborescente arborescente superior se utiliza o no, de acuerdo a si el parámetro de control del bloque arborescente arborescente superior está disponible o no en la codificación o decodificación con base en una posición del parámetro de control. En otras palabras, la unidad de control de contexto 142 o 242 puede determinar si el parámetro de control del bloque arborescente arborescente superior está disponible o no en la decodificación, con base en una posición del bloque arborescente actual, y puede determinar un contexto utilizando uno de los patrones 2 y 3 cuando el parámetro de control del bloque arborescente superior no está disponible. Adicionalmente, la unidad de control de contexto 142 o 242 puede determinar si un valor de referencia del bloque arborescente superior está disponible o no con base en una estructura arborescente para la partición de bloques arborescentes de TU, CU o PU. En otras palabras, la unidad de control de contexto 142 o 242 puede determinar si el parámetro de control del bloque arborescente superior está disponible o no en la decodificación, de acuerdo a la profundidad jerárquica de una unidad de datos a la cual pertenecen cada uno de los parámetros de control que son procesados.
La FIGURA 9 ilustra una relación entre una imagen, cortes y bloques arborescentes de acuerdo con el estándar de HEVC. Una imagen se particiona en uno o más cortes. En el ejemplo de la FIGURA 9, la imagen se particiona en dos cortes (SLICE 1 y SLICE 2) . Uno de los cortes incluye los bloques arborescentes 301 (por ejemplo, bloques arborescentes arborescentes) . En este documento, el bloque arborescente 301 es la unidad más grande como una cierta unidad de control cuando un corte se particiona en un tamaño predeterminado y tiene un tamaño de una raíz cuando la unidad está en la raíz en la estructura particionada jerárquicamente.
En el ejemplo de la FIGURA 9, SLICE 2 inicia desde un bloque arborescente 301A y está compuesto de una secuencia que incluye bloques arborescentes hasta la esquina derecha de fondo de la imagen a través de los bloques arborescentes sombreados 301B y 301C. Uno de los bloques arborescentes sombreados en la FIGURA 9 es un bloque arborescente arborescente (TreeBlock) que es procesado actualmente.
Cada uno de los bloques arborescentes 301 incluye N x M pixeles. Uno de los bloques arborescentes 301 es particionado recursivamente en el interior (típicamente en cuatro) . En otras palabras, un TreeBlock compone conceptualmente un bloque arborescente cuádruple. En el bloque arborescente arborescente 301B mostrado en la FIGURA 9, el bloque arborescente arborescente superior derecho obtenido al particionar el bloque arborescente arborescente sombreado 301B en cuatro se particiona recursivamente en cuatro bloques arborescentes dos veces. En otras palabras, el bloque arborescente arborescente 301B incluye 10 unidades lógicas de la unidad cero superior izquierda a la novena unidad inferior derecha que se particionan con una cierta perspectiva.
En este documento, la perspectiva indica el concepto de una' pluralidad de bloque arborescentees que tienen diferentes profundidades con una raíz como punto -base, tal como un bloque arborescente respecto a una unidad de codificación (CU) y un bloque arborescente respecto a residual_data . En este documento, un valor de cada parámetro de control pertenece a uno de los nodos hoja.
En este documento, si un valor de un parámetro de control de un cierto tipo de señal incluido en un bloque arborescente arborescente superior está o no disponible realmente depende de un tipo de bloque arborescente al cual pertenece el parámetro de control. De esta manera, la unidad de control de contexto 142 o 242 puede cambiar un criterio de determinación de acuerdo con un tipo de bloque arborescente al cual pertenece el parámetro de control . Este cambio es equivalente al cambio a una unidad de sintaxis. Por ejemplo, la unidad de control de contexto 142 o 242 puede utilizar el patrón 2 o 3 en el cual el bloque arborescente arborescente superior no se utiliza para datos de un filtro ' adaptable con una estructura de datos tal como alf_param, mientras que puede utilizar la política de modelo de contexto (patrón 1) para las otras sintaxis como se utiliza convencionalmente . En otras palabras, el segundo tipo o el tercer tipo puede ser un parámetro de control que tiene una estructura de datos predeterminada. Adicionalmente , esto significa que el criterio de determinación se puede cambiar de acuerdo con el tipo de bloque arborescente de un bloque arborescente arborescente adyacente.
Adicionalmente, si el valor del parámetro de control se puede utilizar realmente o no o produce la ventaja de reducción del uso de memoria difiere dependiendo de una posición de un bloque arborescente arborescente > en la relación jerárquica. En otras palabras, la unidad de control de contexto 142 o 242 puede conmutar entre utilizar o no utilizar el bloque arborescente arborescente superior, de acuerdo con una profundidad de un bloque arborescente arborescente y una posición jerárquica del bloque.
Por ejemplo, en la FIGURA 9, los números 0 a 9 en el bloque arborescente arborescente 301B están en un orden de decodificación. En este caso, los parámetros de control de los bloques arborescentes 1 y 2 están disponibles cuando el bloque arborescente arborescente 4 se codifica o decodifica.
Adicionalmente, con el propósito de reducir el uso de memoria, la unidad de control de contexto 142 o 242 puede seleccionar el patrón 1 utilizando el bloque arborescente arborescente superior, cuando el bloque arborescente arborescente no está a una profundidad. 0 y la posición poseída es una del segundo elemento a los elementos subsecuentes en la partición vertical. En este documento, "profundidad" indica la profundidad de la raíz. En otras palabras, cuando un cierto bloque arborescente arborescente se define como block[xn] , [yO] [depth] , el criterio de determinación se puede cambiar de acuerdo a si el bloque arborescente arborescente actual satisface o no block [xn] [(yO) + 1] [depth] . En otras palabras, los bloques arborescentes superiores se utilizan para los bloques arborescentes 4 a 9 en la -FIGURA 9. Cuando el bloque arborescente se codifica o decodifica en el orden como se numeró (iniciando de 0 y terminando en 9) , es claro que los bloques arborescentes 4 a 9 pueden utilizar los parámetros de control incluidos en los bloques arborescentes superiores. Adicionalmente , existe la ventaja de que esos bloques arborescentes tengan solo datos mantenidos temporalmente. Adicionalmente, esto indica que el valor de contexto se determina de acuerdo con la posición 3D que incluye la profundidad además de las coordenadas x e y. Además, un valor condicional de un bloque arborescente arborescente en la capa más alta se puede utilizar (seguido) como un valor condicional de un bloque arborescente arborescente en la capa más baja.
Adicionalmente, la unidad de control de contexto 142 o 242 puede cambiar esos criterios en vista de la relación de posiciones entre, el bloque arborescente actual y los otros cortes. En lo sucesivo, se describirán los tres bloques arborescentes sombreados 301A, 301B y 301C mostrados en la FIGURA 9.
En este documento, el bloque arborescente arborescente 3 OIA es un bloque arborescente arborescente de inicio, y tanto el bloque arborescente arborescente izquierdo como el bloque arborescente arborescente superior del bloque arborescente arborescente 301A se incluyen en otro corte. El bloque arborescente arborescente superior del bloque arborescente arborescente 301B se incluye en otro corte. Tanto el bloque arborescente arborescente izquierdo como el bloque arborescente arborescente superior del bloque arborescente 301C se incluyen en el mismo corte que incluye el bloque arborescente 301C. La unidad de control de contexto 142 o 242 puede conmutar el criterio de acuerdo con esta condición. En otras palabras, la unidad de control de contexto 142 o 242 puede conmutar el criterio (i) de acuerdo a si el bloque arborescente superior se incluye o no en otro corte, (ii) de acuerdo a si el bloque arborescente izquierdo se incluye o no en otro corte o (iii) de acuerdo a tanto (i) como (ii) . En otras palabras, la unidad de control de contexto 142 o 242 puede determinar que el parámetro de control del bloque arborescente superior no está disponible en la decodificación cuando el bloque arborescente actual está en el límite de corte. Por consiguiente, cuando no se completa el procesamiento de decodificación en el SLICE 1 superior, por ejemplo, es posible realizar el procesamiento de decodificación considerando si el SLICE 2 puede obtener o no información por sí mismo.
Después, se describirá la unidad de procesamiento jerárquico (estructura de bloques arborescentes arborescentes de múltiples capas) . La FIGURA 10 ilustra la unidad de procesamiento jerárquico (estructura de bloques arborescentes arborescentes de múltiples capas) .
El aparato de codificación de imágenes 100 codifica imágenes en movimiento en una unidad de procesamiento completa y el aparato de codificación de imágenes 200 decodifica una corriente codificada en una unidad de procesamiento completa. La unidad de procesamiento se estratifica por la partición de la unidad de procesamiento en unidades de procesamiento pequeñas y la partición adicional de las unidades de procesamiento pequeñas en unidades de procesamiento más pequeñas. Conforme la unidad de procesamiento es más pequeña, la profundidad de la unidad de procesamiento es más grande y es jerárquicamente inferior y el valor que indica la profundidad es más grande. Por el contrario, conforme la unidad de procesamiento es más grande, la profundidad de la unidad de procesamiento es menor y es jerárquicamente superior y el valor que indica la profundidad es más pequeño .
La unidad de procesamiento incluye una unidad de. codificación (CU) , una unidad de predicción (PU) y una unidad de transformación (TU) . Una CU es un bloque arborescente de 128 x 128 pixeles como máximo y es una unidad que corresponde a un macrobloque arborescente convencional . Una PU es una unidad básica para la inter-predicción . Una TU es una unidad básica para la transformación ortogonal y tiene un tamaño idéntico a aquel de la PU o mucho más pequeño que la PU. Una CU se particiona, por ejemplo, en 4 sub-CUs y una de las sub- CUs incluye una PU y una TU que tiene el mismo tamaño que aquel de la sub-CU (en este documento, PU y TU se traslapan entre sí) . Por ejemplo, la PU se particiona adicionalmente en 4 sub-PUs y la TU se particiona adicionalmente en 4 sub-CUs. Cuando la unidad de procesamiento se particiona en unidades de procesamiento más pequeñas, cada una de las unidades de procesamiento más pequeñas es referida como una sub-unidad de procesamiento. Por ejemplo, cuando la unidad de procesamiento es una CU, la sub-unidad de procesamiento es una sub-CU. Cuando la unidad de procesamiento es una PU, la unidad de sub-procesamiento es una sub-PU. Adicionalmente, cuando la unidad de procesamiento es una TU, la sub-unidad de procesamiento es una sub-TU.
Más específicamente, lo siguiente indica los detalles.
Una imagen se particiona en uno o más cortes. Un corte es una secuencia de . la unidad de codificación más grande. La posición de la unidad de codificación más grande es indicada por una dirección de la unidad de codificación más grande lcuAddr.
Cada una de las unidades de codificación que incluyen las unidades de codificación, más grandes, respectivas se divide en cuatro unidades de codificación. Como resultado, se construye un bloque arborescente cuádruple que tiene el tamaño de una CU. La posición de la CU es indicada por un índice de unidad de codificación culdx que tiene una muestra (pixel o coeficientes) en la esquina superior izquierda de la unidad de codificación más grande como un punto de inicio.
Cuando no se permite la partición de una CU, la CU se maneja como una PU. De manera similar a la CU, la posición de una PU es indicada por un índice de unidad de predicción puldx que tiene una muestra en la esquina superior izquierda de la unidad de codificación más grande como un punto de inicio.
La PU puede incluir particiones (particiones de PU o sub- PUs) . La partición de PU es indicada por un índice de partición de unidad de predicción puPartldx que tiene una muestra en la esquina superior izquierda de la PU como un punto de inicio.
La PU puede incluir TUs . De manera similar a la CU, la TU se puede particionar en cuatro TUs más pequeñas (sub-TUs) . Esto indica el permiso de la partición de bloque arborescente cuádruple de una señal residual. La posición de la TU es indicada por un índice de unidad de transformación tuldx que tiene una muestra en la esquina superior izquierda de la PU como un punto de inicio.
En este documento, la definición de cada una de las unidades de procesamiento es de la siguiente manera: CTB (bloque arborescente de bloque arborescente de codificación) : Unidad básica para identificar la partición de bloque arborescente cuádruple de una región cuadrada. Que tiene varios tamaños de cuadro; LCTB (bloque arborescente arborescente de codificación más grande) : El CTB más grande permitido en un corte. Un corte incluye una pluralidad de LCTBs que no se traslapan entre sí; SCTB (bloque arborescente arborescente de codificación más pequeño) : El CTB más pequeño permitido en un corte. La partición de un SCTB en CTBS más pequeños no está permitida; PU (unidad de predicción) : Unidad básica para identificar un procesamiento de predicción. Una PU es tan grande como una CU en la cual no se permite la partición. Aunque se permite la partición de una CU en cuatro regiones cuadradas, una PU se puede particionar en una pluralidad de particiones que tienen cualquier forma; TU (unidad de transformación) : Unidad básica para identificar una transformación y una cuantificación; CU (unidad de codificación) : Igual que CTB; LCU (unidad de codificación más grande) : Igual que la CTB más grande; y SCU (unidad de codificación más pequeña) : Igual que la CTB más pequeña.
Adicionalmente , los parámetros de cuantificación incluyen por lo menos uno de un parámetro de escala de cuantificación delta (delta QP o QP delta) , un parámetro de 8 compensación de cuantificación, un índice (Q matrix select idc) y un parámetro de compensación de zona muerta de cuantificación . El índice es para seleccionar una de las matrices de escalamiento cuantificadas .
El parámetro de escala de cuantificación delta (delta QP o QP delta) es una diferencia entre un parámetro de escala de cuantificación que se aplica a coeficientes de transformación y un parámetro de escala de cuantificación especificado por un encabezado de secuencia o un encabezado de corte (o un parámetro de escala de cuantificación inmediatamente antes en el orden de exploración Z) .
El parámetro de compensación de cuantificación también es referido como una compensación de cuantificación y es un valor de ajuste (valor de compensación) para redondear una señal en el desempeño de la cuantificación . De esta manera, cuando el aparato de codificación de imágenes 100 realiza una cuantificación, codifica la compensación de cuantificación . Luego, el aparato de decodificación de imágenes 200 decodifica la compensación de cuantificación codificada. Después, el aparato de decodificación de imágenes 200 realiza una corrección utilizando la compensación de cuantificación cuando se cuantifican de manera inversa los coeficientes de transformación.
Un índice (Qmatrix select idc) es referido como una matriz de cuantificación adaptable e indica que matriz de escalamiento de cuantificación se utiliza de entre una pluralidad de matrices de escalamiento de cuantificación . Adicionalmente , cuando solo hay una matriz de escalamiento de cuantificación, Qmatrix select idc indica si la matriz de escalamiento de cuantificación se utiliza o no. La matriz de cuantificación adaptable puede ser controlada por unidad de bloque arborescente (unidad de procesamiento) .
El parámetro de compensación de zona muerta de cuantificación es referido como una zona muerta adaptable y es información de control para cambiar de manera adaptable una zona muerta por bloque. La zona muerta es una anchura cuyos coeficientes de frecuencia se vuelven 0 por la cuantificación (última anchura que se vuelve +1 o -1 después de la cuantificación) .
Aunque un caso donde el patrón 3 con el cual se utiliza un valor fijo, predeterminado como valor de contexto se describe anteriormente en este documento, el caso se puede realizar bajo la condición de que no se utilicen los parámetros de control del bloque arborescente superior y el bloque arborescente izquierdo, y adicionalmente bajo la condición sin el uso de parámetros de control del bloque arborescente superior y el bloque arborescente izquierdo como el patrón 3. Por ejemplo, la unidad de control de contexto 142 o 242 puede determinar un contexto de acuerdo con la profundidad jerárquica de una unidad de datos a la cual pertenecen cada uno de los parámetros de control, como el patrón 3.
Modalidad 3 La Modalidad 3 describirá que tipo de señal se debe utilizar como el primer tipo y el segundo tipo (o el tercer tipo) .
Más específicamente, los presentes inventores han verificado cada uno de los tipos de señal posteriores entre los tipos de señal como se indican en la FIGURA 3 (Sección 9.3.3.1.1.1 de la MPL 2) . Cada uno de los tipos de señal ha sido verificado, debido a que existen varios parámetros y es difícil predecir si cada patrón de los otros tipos de señal satisface o no la validez, con base en un resultado de la verificación en uno de los tipos de señal (cual de los patrones 1 a 3 es apropiado) .
La verificación es de conformidad con la estructura (parámetro de ajuste y versión de software HM3.0) descrita en JCTVC-E700, "Condiciones de prueba comunes y configuraciones de referencia de software" (véase la NPL 3) . Adicionalmente , cada una de las imágenes de prueba tiene una longitud limitada a 49 tramas.
El método de codificación de imágenes y el método de decodificación de imágenes de acuerdo con la Modalidad 3 se relacionan con el CABAC . De esta manera, la verificación se ha conducido utilizando los siguientes cuatro patrones de prueba que son un conjunto de valores de ajuste cada uno que indica 1 como el valor del Modo de Símbolo (#0:LCEC, 1: CABAC) : 4.1 Ajuste de alta eficiencia, intra; 4.3 Ajuste de alta eficiencia de acceso aleatorio; 4.5 Ajuste de alta eficiencia de retraso bajo; y 4.7 Ajuste de alta eficiencia de retraso bajo (cortes P únicamente) .
La evaluación se hace con base en un valor de evaluación llamado una "tasa de BD" que se utiliza como un estándar de evaluación utilizado uniformemente para una evaluación de implementación en la HEVC. Tasa de BD Y, tasa de BD U y tasa de BD V son tasas de BD para un espacio de color YUV y son valores estándar de evaluación. De acuerdo con VCEG-AI11 (NPL 4) , la tasa de BD es un valor de evaluación obtenido al integrar dos pares de cantidades de código con un resultado de PSNR y representar la eficiencia de codificación de acuerdo con la relación de área. Adicionalmente , la tasa de BD que indica un valor menos significa que la eficiencia de codificación ha sido mejorada. Los criterios de comparación se basan en un resultado del producto de un programa de referencia el cual implementa el patrón 1. Los resultados de los patrones 2 y 3 se muestran con respecto al resultado del patrón 1.
Lo siguiente describe un resultado de la verificación en cada uno de los tipos de señal: (Primera verificación) split_coding_unit_flag; (Segunda verificación) skip_flag; y (Tercera verificación) mvd_10(ll, le).
Primera verificación split_coding_unitj_flag La FIGURA 11 ilustra un método de decodificación aritmética para split_coding_unit_flag.
La verificación se conduce al cambiar el modelo de contexto del patrón 1 al patrón 2 o 3 únicamente para un tipo de señal que es verificado, sin cambiar el modelo de contexto para los otros tipos de señal y el parámetro de verificación especificado en la NPL 3. En la columna mostrada en la FIGURA 11, el valor de "Fijo" indica que la condición (la condición de bloque arborescente izquierdo o la condición de bloque arborescente superior) de la columna especificada por "Fijo" no se utiliza cuando un valor de contexto (o incremento) se deduce. En otras palabras, cuando solo una de la condición de bloque arborescente izquierdo y la condición de bloque arborescente superior está "Fija", solo se utiliza la otra condición. Adicionalmente, cuando tanto la condición de bloque arborescente izquierdo como la condición de bloque arborescente superior están "Fijas", un valor predeterminado (por ejemplo, 0) se utiliza como un valor de contexto (o incremento) .
El significado del tipo de señal "split_coding_unit_flag" se define de la siguiente manera. split_coding_unit_flag [xO] [yO] especifica si una unidad de codificación se divide en unidades de codificación con medio tamaño horizontal y vertical. Los índices de matriz ??, yO especifican la ubicación (??, yO) de la muestra de luma superior izquierda del bloque arborescente de codificación considerado en relación con la muestra . de luma superior izquierda de la imagen. En otras palabras, "split_coding_unit_flag" indica si la CU objetivo se particiona o no en cuatro. Más específicamente, la CU objetivo se particiona cuando split_coding_unit_flag indica 1, mientras que la CU objetivo no se particiona cuando split_coding_unit_flag indica 0.
Los datos de split_coding_unit_flag se estructuran en una sintaxis arborescente de codificación como una sintaxis. El aparato de decodificación de imágenes analiza una secuencia de bits de acuerdo con la sintaxis de esta estructura de datos.
Las FIGURAS 12A y 12B son tablas para describir resultados de la verificación en split__coding_unit_flag .
La FIGURA . 1.2A indica el resultado de la verificación utilizando un bloque arborescente adyacente (únicamente un valor de determinación de la condición de bloque arborescente izquierdo L) del patrón 2. La FIGURA 12B indica el resultado de la verificación utilizando un bloque arborescente adyacente cero (no utilizando la condición de bloque arborescente superior L ni la condición de bloque arborescente izquierdo L) del patrón 3.
El resultado de la verificación en cada una de las FIGURAS 12A y 12B indica el incremento y el decremento de la tasa de BDide acuerdo con los cuatro patrones de prueba.
Adicionalmente , el valor de evaluación es representado por el estándar de evaluación que indica un valor en relación con un valor de evaluación en el caso del patrón 1 en el cual se utilizan tanto el bloque arborescente izquierdo como el bloque arborescente superior. Más específicamente, cuando el valor de evaluación es positivo, el resultado es inferior al valor de evaluación (tasa de BD) en el caso del patrón 1. Adicionalmente, cuando el valor de evaluación es negativo, el resultado es más mejorado que el valor de evaluación en el caso del patrón 1.
El resultado aclara que el patrón 1 es superior como un patrón de un modelo de contexto para split_coding_unit_flag . En otras palabras, los valores de evaluación obtenidos por los patrones 2 y 3 son inferiores a aquel del patrón 1. . . ..
De esta manera, cuando el tipo de señal de un parámetro de control es split_coding_unit_flag, la unidad de control de contexto 142 o 242 determina un valor de contexto utilizando el patrón 1 que es un patrón convencional de un modelo de contexto, en términos de la tasa de BD.
(Segunda verificación) skip_flag La FIGURA 13 ilustra un método de decodificación aritmética para skip_flag. En este documento, el método de verificación es el mismo que aquel de la primera verificación.
El significado del tipo de señal "skip_flag" se define de la siguiente manera. skip_flag [xO] [yO] igual a 1 especifica que para la unidad de codificación actual, cuando se decodifica un corte P o B, no se analizan más elementos de sintaxis excepto los índices de predictores de vectores de movimiento después de skip_flag [xO] [yO] . skip_flag [xO] [yO] igual a 1 especifica que la unidad de codificación no debe ser omitida. Los índices de matriz xO , yO especifican la ubicación (xO, yO) de la muestra de luma superior izquierda del bloque arborescente de codificación considerado en relación con la muestra de luma superior izquierda de la imagen. En otras palabras, skip_flag indica si la CU objetivo debe ser omitida o no (manejada como un bloque arborescente omitido) .
Los datos de skip_flag se estructuran en una sintaxis de unidad de codificación como una sintaxis. En otras palabras, skip_flag se establece para cada CU. El aparato de decodificación de imágenes analiza una secuencia de bits de acuerdo con la sintaxis de esta estructura de datos .
Las FIGURAS 14A y 14B son tablas para describir resultados de la verificación en skip_flag.
La FIGURA 14A indica el resultado de lá verificación utilizando un bloque arborescente adyacente (solo un valor de determinación de la condición de bloque arborescente izquierdo L) del- atrón 2. La FIGURA 14B indica el resultado de la verificación utilizando un bloque arborescente adyacente cero (no utilizando la condición de bloque arborescente superior L ni la condición de bloque arborescente izquierdo L) del patrón 3.
El resultado de la verificación en cada una de las FIGURAS 14A y 14B indica el incremento y decremento de la tasa de BD de acuerdo con cuatro patrones de prueba como se describe para la primera verificación. Adicionalmente , el significado del valor de evaluación es el mismo que aquel de la primera verificación.
El resultado aclara que el patrón 1 es superior como un patrón de un modelo de contexto para "skip_flag" . En otras palabras, los valores de evaluación obtenidos por los patrones 2 y 3 son inferiores a aquel del patrón 1.
De esta manera, cuando el tipo de señal de . un parámetro de control es "skip_flag" " , la unidad de control de contexto 142 o 242 determina un valor de contexto utilizando el patrón 1 que es un patrón convencional de un modelo de contexto, en términos de la tasa de BD.
Tercera verificación "mvd_l0 (11 , le) " La FIGURA 15 es una tabla que indica un método de decodificación aritmética para mvd_l0 (11, le) . En este documento, el método de verificación es el mismo que aquellos en la primera verificación y la segunda verificación.
El significado del tipo de señal "mvd_lO ( 11 , le) " se define de la siguiente manera. mvd_lO[xO] [yO] [compldx] especifica la diferencia entre un componente de vector de lista 0 que se utiliza y su predicción. Los índices de matriz xO, yO especifican la ubicación ( O, yO) de la muestra de luma superior izquierda del bloque arborescente de predicción considerado en relación con la muestra de luma superior izquierda de la imagen. A la diferencia de componentes de vectores de movimiento horizontal se asigna compldx = 0 y al componente de vector de movimiento vertical se asigna compldx = 1. Cuando cualquiera de los dos componentes no está presente, el valor inferido es 0. En otras palabras, mvd_l0 representa una diferencia entre un vector de movimiento en una posición de PU (xP, yP) y el vector predicho, utilizando un primer componente (componente horizontal compldx = 0) y un segundo componente (componente vertical compldx = 1) . mvd_ll [xO] [yO] [compldx] tiene la misma semántica que 10 y la lista 0 reemplazada por 11 y la lista 1 en mvd_10, respectivamente. La presencia o ausencia de mvd_ll se puede determinar con base en un tipo de imagen y otros.
Adicionalmente , mvd_lc [xO] [yO] [compldx] tiene la misma semántica que mvd_l0, con 10 y la lista 0 reemplazados por le y una combinación de listas, respectivamente. En otras palabras, mvd_lc se genera al combinar mvd_10 y mvd_ll.
El término "mvd" incluye por lo menos mvd_10 e incluye por lo menos uno de mvd_ll y .mvd_lc de acuerdo con una condición de una imagen.
Los datos de mvd se estructuran en una unidad de predicción como una sintaxis. El aparato de decodificación de imágenes analiza una secuencia de bits de acuerdo con la sintaxis de esta estructura de datos.
Las FIGURAS 16A y 16B son tablas para describir resultados de la verificación en mvd.
La FIGURA 16A indica el resultado de la verificación utilizando un bloque arborescente adyacente (solo un valor de determinación de la condición de bloque arborescente izquierdo L) del patrón 2. La FIGURA 16B indica el resultado de la verificación utilizando un bloque arborescente adyacente cero (no utilizando la condición de bloque arborescente, superior L ni la condición de bloque arborescente izquierdo L) del patrón 3.
El resultado de la verificación en cada una de las FIGURAS 16A y 16B indica el incremento y decremento de la tasa de BD de acuerdo con los cuatro patrones de prueba como se describe para la primera verificación. Adicionalmente , el significado del valor de evaluación es el mismo que aquel de la primera verificación.
El resultado es diferente de aquellos de la primera verificación de split_coding_unit_flag y la segunda verificación de skip_flag. No existe una diferencia significativa en la tasa de BD entre los patrones 1 y 2 o 3 como un patrón de un modelo de contexto para mvd.
De esta manera, bajo un ambiente mezclado con una pluralidad de parámetros de control de tipos de señal, la unidad de control de contexto 142 o 242 determina un valor de contexto sin utilizar el bloque arborescente superior como un bloque arborescente adyacente particularmente cuando el tipo de señal del parámetro de control es mvd_l0 (11 , le) . En otras palabras, la unidad de control de contexto 142 o 242 determina un valor de contexto utilizando el patrón 2 o 3 cuando el tipo de señal del parámetro de control es mvd_l0 (11, le) . En otras palabras, el primer tipo incluye "split_coding_unit_flag" o "skip_flag" y el segundo tipo o el tercer tipo incluye mvd_l0, mvd_ll o mvd__lc. Por consiguiente, el aparato de codificación de imágenes y el aparato de decodificación de imágenes de acuerdo con la Modalidad 3 pueden reducir el uso de memoria mientras que suprimen la disminución en la tasa de BD .
En otras palabras, el segundo tipo o el tercer tipo solo tiene que incluir por lo menos uno de mvd_l0, mvd_ll y mvd_,lc . Por ejemplo, el segundo tipo o el tercer tipo pueden incluir mvd_l0 y mvd_ll sin incluir mvd_lc .
Cuando el patrón 2 se compara con el patrón 3 para mvd, estas tasas de BD no tienen una diferencia significativa. De esta manera, se prefiere utilizar el patrón 3 para mvd_l0 (11 , le) . Por consiguiente, es posible reducir adicionalmente el uso de memoria y la cantidad de procesamiento.
En este documento, aunque los datos residuales (mvd) de un vector de movimiento no se transmiten en un modo de omisión, los datos residuales (mvd) del vector de movimiento se transmiten en un modo de fusión. Por consiguiente, incluso cuando el contexto que se utiliza temporalmente no es óptimo en el modo de fusión, el deterioro en la calidad de la imagen causado por no utilizar el contexto óptimo se puede compensar en cierta medida con el procesamiento utilizando el mvd. Por consiguiente, el deterioro en la calidad de imagen se suprime cuando el bloque arborescente circundante para mvd no se utiliza.
Cuando el valor condicional del bloque arborescente superior o el bloque arborescente izquierdo (condA o condL) se utiliza de acuerdo con la condición predeterminada, la siguiente modificación es aplicable.
La primera modificación es un método que utiliza una dependencia entre mvd_10, mvd_ll, y mvd_lc .
Más específicamente, la unidad de control de contexto 142 o 242 puede deducir un valor condicional de otro tipo de señal que tiene un valor condicional dependiente de valores condicionales (condL o condA) de dos tipos de señal de entre los tres tipos de señal de mvd_lO, mvd_ll y mvd_lc, utilizando los valores condicionales.
Por ejemplo, cuando un valor de condA para mvd_lc es dependiente de los valores condicionales (un valor de condA para 10 y un valor de condA para 11) de los dos tipos de señal de mvd_l0 y lvd_ll, la unidad de control de contexto 142 o 242 no necesita hacer referencia al valor de condA para mvd_lc .
La FIGURA 16C es una tabla que indica la condición A y la condición L para mvd como se indica en la NPL 2. La FIGURA 16D es una tabla que indica la condición A y la condición L para mvd de acuerdo con la Modalidad 3.
Como se indica en la FIGURA 16D, las unidades de control de contexto 142 y 242 pueden deducir los valores condicionales de condL y condA para mvd_lc a partir de por lo menos uno de los valores condicionales de mvd_l0 y mvd_ll en el mismo bloque.
En este documento, las unidades de control de contexto 142 y 242 pueden utilizar estas relaciones para una o tanto la dirección horizontal (compldx = 0) como la dirección vertical (compldx = 1) .
Adicionalmente , las unidades de control de contexto 142 y 242 pueden utilizar la dependencia entre compldx = 0 y 1. En otras palabras, las unidades de control de contexto 142 y 242 pueden causar que un resultado de uno de los dos valores condicionales de la dirección horizontal mvd_lO [ ] [ .] [0] y la dirección vertical mvd_l0 [ ] [ ] [1] dependan entre sí. En otras palabras, las unidades de control de contexto 142 y 242 pueden deducir los valores condicionales condL y condA de una de la dirección horizontal y la dirección vertical para mvd, a partir del otro de los valores condicionales para mvd. En este documento, de acuerdo con la NPL 2, un índice de contexto (incremento de índice + valor de referencia) se establece para cada una de las direcciones horizontales mvd_l0 [ ] [ ] [0] , mvd_ll [ ] [ ] [0] y mvd_lc [ ] [ ] [0] , y las direcciones verticales mvd_l0 [ ] [ ] [1] , mvd_ll [ ] [ ] [1] y mvd_lc [ ] [ ] [1] . De esta manera, es posible reducir los residuos utilizando la dependencia. En otras palabras, el número de índices de contexto se puede reducir.
En este documento, los valores condicionales del bloque arborescente superior y el bloque . arborescente izquierdo se utilizan solo para el primer bit de mvd de acuerdo con la NPL 2. En otras palabras, las unidades de control de contexto 142 y 242 pueden utilizar el patrón 2 o 3 para el primer bit de mvd. En otras palabras, las unidades de control de contexto 142 y 242 pueden utilizar el patrón 2 o 3 para abs_mvd_greater0_flag [compldx] que indica si una diferencia entre un vector de movimiento y el vector predicho es o no igual a o mayor que 0.
Aunque se describe el aparato de codificación de imágenes y el i aparato de decodificación de imágenes de acuerdo con las Modalidades 1 a 3 de la presente . invención, la presente invención no está limitada a esas Modalidades.
Por ejemplo, por lo menos parte del aparato de codificación de imágenes, el aparato de decodificación de imágenes y funciones de las modificaciones de esos aparatos de acuerdo con las Modalidades 1 a 3 se pueden combinar.
Adicionalmente , todos los valores y los valores lógicos descritos anteriormente son e emplificaciones para describir específicamente la presente invención y la presente invención no está limitada por los valores ejemplificados.
Adicionalmente, las divisiones de los bloques arborescentes arborescentes funcionales en los diagramas de bloque arborescente son ejemplos. De esta manera, los bloques arborescentes arborescentes funcionales se pueden implementar como un bloque, arborescente funcional, un bloque arborescente funcional se puede dividir en una pluralidad de bloques arborescentes arborescentes funcionales y una parte de las funciones puede ser conmutada a otro bloque arborescente funcional. Adicionalmente, una pluralidad de bloques arborescéntes arborescentes funcionales que tienen funciones similares pueden ser procesados por un hardware o software individual en paralelo o con división de tiempo.
Los órdenes de los pasos del método de codificación de imágenes realizado por el aparato de codificación de imágenes y el método de decodificación de imágenes realizado por el aparato de decodificación de imágenes son para describir específicamente la presente invención y pueden ser un orden diferente de los órdenes anteriores. Adicionalmente , parte de los pasos se pueden realizar simultáneamente (en paralelo) con los otros pasos.
Modalidad 4 El procesamiento descrito en cada una de las Modalidades puede ser implementado simplemente por un sistema de computadora al grabar, en un medio de grabación, un programa para implementar la estructura del método de codificación de imágenes en movimiento o el método de decodificacion de imágenes en movimiento descritos en la Modalidad. El medio de grabación puede ser cualquier medio de grabación siempre y cuando el programa pueda ser grabado en el mismo, tal como un disco magnético, un disco óptico, un disco óptico magnético, una tarjeta IC y una memoria semiconductora.
En lo sucesivo, se describirán las aplicaciones para el método de codificación de imágenes en movimiento o el método de decodificación de imágenes en movimiento descritos en cada una de las Modalidades y un sistema que utiliza los mismos.
La FIGURA 19 ilustra una configuración completa de un sistema de provisión de contenido exlOO para implementar servicios de distribución de contenido. El área para proporcionar servicios de comunicación se divide en celdas del tamaño deseado y las estaciones base exl06 a exllO las cuales son estaciones inalámbricas fijas se colocan en cada una de las celdas.
El sistema de provisión de contenido exlOO se conecta a dispositivos, tal como una computadora exlll, un asistente digital personal (PDA, por sus siglas en inglés) exll2, una cámara exll3, un teléfono celular exll4 y una consola de videojuegos exll5, por vía de la Internet exlOl, un proveedor de servicios de Internet exl02, una red telefónica exl04, así como también las estaciones base exl06 a exllO.
Sin embargo, la configuración del sistema de provisión de contenido exlOO no está limitada a la configuración mostrada en la FIGURA 19 y es aceptable una combinación en la cual cualquiera de los elementos se conecta. Además, cada uno de los dispositivos se puede conectar directamente a la red telefónica exl04, preferiblemente que por vía de las estaciones base exl06 a exllO las cuales son las estaciones inalámbricas fijas. Adicionalmente , los dispositivos se pueden interconectar entre sí por vía de una comunicación inalámbrica a corta distancia y otras.
La cámara exll3, tal como una cámara de video digital, es capaz de capturar imágenes en movimiento. Una cámara exllS, tal como una cámara de video digital, es capaz de capturar tanto imágenes fijas como imágenes en movimiento. Adicionalmente, el teléfono celular exll4 puede ser aquel que cumpla con cualquiera de los estándares tales como el Sistema Global para Comunicaciones Móviles (GSM, por sus siglas en inglés) , Acceso Múltiple por División de Código (CDMA, por sus siglas en inglés) , Acceso Múltiple por División de Código de Banda Ancha (W-CDMA, por sus siglas en inglés) , Evolución a Largo Plazo (LTE, por sus siglas en inglés) y Acceso de Paquetes a Alta Velocidad (HSPA, por sus siglas en inglés) . Alternativamente, el teléfono celular exll4 puede ser un Sistema de Teléfonos Personales (PHS, por sus siglas en inglés) .
En el sistema de provisión de contenido exlOO, un servidor de transmisión ininterrumpida exl03 se conecta a la cámara exll3 y otros por vía de la red telefónica exl04 y la estación base exl09, lo cual hace posible la distribución de un espectáculo en vivo y otros. Para esta distribución, un contenido (por ejemplo, video de un espectáculo musical en vivo) capturado por el usuario utilizando la cámara exll3 se codifica como se describiera anteriormente en cada una de las Modalidades y el contenido codificado se transmite al servidor de transmisión ininterrumpida exl03. Por otra parte, el servidor de transmisión ininterrumpida exl03 lleva a cabo la distribución ininterrumpida de los datos de contenido recibidos a los clientes cuando lo soliciten. Los clientes incluyen la computadora exlll, el PDA exll2, la cámara exll3, el teléfono celular exll4 y la consola de videojuegos exll5 que son capaces de decodificar los datos codificados que se mencionaron anteriormente. Cada uno de los dispositivos que ha recibido los datos distribuidos decodifica y reproduce los datos codificados.
Los datos capturados pueden ser codificados por la cámara exll3 o el servidor de transmisión ininterrumpida exl03 que transmite los datos, o los procesos de codificación pueden ser compartidos entre la cámara exll3 y el servidor de transmisión ininterrumpida exl03. Similarmente , los datos distribuidos pueden ser decodificados por los clientes o el servidor de transmisión ininterrumpida exl03, o los procesos de decodificación pueden ser compartidos entre los clientes y el servidor de transmisión ininterrumpida exl03. Adicionalmente , los datos de las imágenes fijas e imágenes en movimiento capturados no solo por la cámara exll3 sino también la cámara exll6 pueden ser transmitidos al servidor de transmisión ininterrumpida exl03 a través de la computadora exlll. Los procesos de codificación. ueden ser realizados por la cámara exll6, la computadora exlll o el servidor de transmisión ininterrumpida exl03, o pueden ser compartidos entre los mismos.
Adicionalmente, en general, la computadora exlll y un LSI ex500 incluidos en cada uno de los dispositivos realizan estos procesos de codificación y decodificación. El LSI ex500 se puede configurar de un chip individual o una pluralidad de chips . El software para codificar y decodificar imágenes en movimiento puede ser integrado en algún tipo de medio de grabación (tal como un CD-ROM, un disco flexible, un disco duro) que es legible por la computadora exlll y otros, y los procesos de codificación y decodificación se pueden realizar utilizando el software. Adicionalmente , cuando el teléfono celular exll4 se equipa con una cámara, los datos de video obtenidos por la cámara se pueden transmitir. Los datos de video son datos codificados por el LSI ex500 incluido en el teléfono celular exll4.
Adicionalmente, el servidor de transmisión ininterrumpida exl03 puede estar compuesto de servidores y computadoras y puede descentralizar datos y procesar los datos descentralizados, grabar o distribuir datos.
Como se describiera anteriormente, los clientes pueden recibir y reproducir los datos codificados en el sistema de provisión de contenido exlOO. En otras palabras, los clientes pueden recibir y decodificar información transmitida por el usuario y pueden reproducir los datos decodificados en tiempo real en el sistema de provisión de contenido exlOO, de modo que el usuario que no tiene ningún derecho y equipo particular puede implementar una difusión personal.
La presente invención no está limitada al sistema de provisión de contenido exlOO mencionado anteriormente, y por lo menos cualquiera del aparato de codificación de imágenes en movimiento o el aparato de decodificación de imágenes en movimiento descritos en cada una de las Modalidades se puede incorporar en un sistema de difusión digital ex200 - como se muestra en la FIGURA 20. Más específicamente, una estación de difusión ex201 comunica o transmite, por vía de ondas de radio a un satélite de difusión ex202, datos multiplexados que se obtienen al multiplexar los datos de audio y los datos de video. Los datos de video son datos codificados de acuerdo con el método de codificación de imágenes en movimiento descrito en cada una de las Modalidades. Con la recepción de los datos de video, el satélite de difusión ex202 transmite ondas de radio para la difusión. Luego, una antena de uso casero ex204 con capacidad para recibir una difusión satelital recibe las ondas de radio. Un dispositivo, tal como una televisión (receptor) ex300 y un sintonizador externo (STB, por sus siglas en inglés) ex217, decodifica los datos multiplexados recibidos y reproduce los datos .
Adicionalmente, un lector/grabador ex218 que (i) lee y decodifica los datos multiplexados que están grabados en un medio de grabación ex215, tal como un DVD y un BD o (ii) codifica señales de video en el medio de grabación ex215, y en algunos casos, escribe datos obtenidos al multiplexar una señal de audio en los datos codificados puede incluir el aparato de decodificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento como se muestra en cada una de las Modalidades. En este caso, las señales de video reproducidas son exhibidas en el monitor ex219, y otro aparato o sistema puede reproducir las señales de video, utilizando el medio de grabación ex215 en el cual se graban los datos multiplexados . Adicionalmente , también es posible implementar el aparato de decodificación de imágenes en movimiento en el sintonizador externo ex217 conectado al cable ex203 para una televisión de cable o la antena ex204 para la difusión satelital y/o terrestre, con el fin de exhibir las señales de video en el monitor ex219 de la televisión ex300. El aparato de decodificación de imágenes en movimiento puede no ser incluido en el sintonizador externo sino en la televisión ex300.
La FIGURA 21 ilustra la televisión (receptor) ex300 que utiliza el método de codificación de imágenes en movimiento y el método de decodificación de imágenes en movimiento descritos en cada una de las Modalidades. La televisión ex300 incluye: un dispositivo de sintonización ex301 que obtiene o proporciona datos multiplexados obtenidos al multiplexar los datos de audio y los datos de video a través de la antena ex204 o el cable ex203, etcétera que recibe una difusión; una unidad de modulación/desmodulación ex302 que desmodula los datos multiplexados recibidos o modula datos en datos multiplexados que son suministrados al exterior; y una unidad de multiplexión/desmultiplexión ex303 que desmultiplexa los datos multiplexados modulados en datos de video y datos de audio o mult iplexa los datos de video y datos de audio codificados por la unidad de procesamiento de señales ex306 en datos.
Adicionalmente , la televisión ex300 incluye además: una unidad de procesamiento de señales ex306 que incluye una unidad de procesamiento de señales de audio ex304 y una unidad de procesamiento de señales de video ex305 que decodifican datos de audio y datos de video y codifican datos de audio y datos de video, respectivamente; un altavoz ex307 que proporciona la señal de audio decodificada ; y una unidad de salida ex309 que incluye una unidad de exhibición ex308 que exhibe la señal de video decodificada, tal como una pantalla. Adicionalmente, la televisión ex300 incluye una unidad de interconexión ex317 que incluye una unidad de entrada de operación ex312 que recibe una entrada de una operación del usuario. Adicionalmente, la televisión ex300 incluye una unidad de control ex310 que controla en conjunto cada elemento constituyente de la televisión ex300 y una unidad de circuitos de suministro de energía ex311 que suministra energía a cada uno de los elementos. A diferencia de la unidad de entrada de operación ex312, la unidad de interconexión ex317 puede incluir: un puente ex313 que se conecta a un dispositivo externo, tal como el lector/grabador ex218; una unidad de ranura ex314 para hacer posible la unión del medio de grabación ex216, tal como una tarjeta SD; un controlador ex315 que es conectado a un medio de grabación externo, tal como un disco duro; y un módem ex316 que es conectado a una red telefónica. En este punto, el medio de grabación ex216 puede grabar eléctricamente información utilizando un elemento de memoria semiconductora no volátil/volátil para el almacenamiento. Los elementos constituyentes de la televisión ex300 se conectan entre sí a través de una barra colectora sincrónica.
En primer lugar, se describirá una configuración en la cual la televisión ex300 decodifica los datos multiplexados obtenidos del exterior a través de la antena ex204 y otros y reproduce los datos decodificados . En la televisión ex300, con la recepción de una operación de un usuario desde un controlador distante ex220 y otros, la unidad de multiplexión/desmultiplexión ex303 desmultiplexa los datos multiplexados que son desmodulados por la unidad de modulación/desmodulación ex302, bajo control de la unidad de control ex310 que incluye una CPU. Adicionalmente, la unidad de procesamiento de señales de audio ex304 decodifica los datos de audio desmultiplexados y la unidad de procesamiento de señales de video ex305 decodifica los datos de video desmultiplexados, utilizando el método de decodificación descrito en cada una de las Modalidades, en la televisión ex300. La unidad de salida ex309 proporciona la señal de video y la señal de audio decodificadas al exterior. Cuando la unidad de salida ex309 proporciona la señal de video y la señal de audio, las señales pueden ser almacenadas temporalmente en las memorias intermedias ex318 y ex319 y otras de modo que las señales sean reproducidas en sincronización entre sí. Adicionalmente , la televisión ex300 puede leer los datos multiplexados no a través de una difusión y otros sino de los medios de grabación ex215 y ex216, tal como un disco magnético, un disco óptico y una tarjeta SD. Después, se describirá una configuración en la cual la televisión ex300 codifica una señal de audio y una señal de video y transmite los datos al exterior o escribe los datos en un medio de grabación. En la televisión ex300, con la recepción de una operación de un usuario del controlador distante ex220 y otros, la unidad de procesamiento de señales de audio ex304 codifica una señal de audio y la unidad de procesamiento de señales de video ex305 codifica una señal de video, bajo control de la unidad de control ex310 utilizando el método de codificación de imágenes descrito en cada una de las Modalidades. La unidad de multiplexión/desmultiplexión ex303 multiplexa la señal de video y la señal de audio codificadas y proporciona la señal resultante al exterior. Cuando la unidad de multiplexión/desmultiplexión ex303 multiplexa la señal de video y la señal de audio, las señales pueden ser almacenadas 4 temporalmente en las memorias intermedias ex320 y ex321 y lotras de modo que las señales sean reproducidas en sincronización entre sí. En este punto, las memorias intermedias ex318 a ex321 pueden ser plurales como se ilustra o por lo menos una memoria intermedia puede ser compartida en la televisión ex300. Adicionalmente, se pueden almacenar datos en una memoria intermedia diferente de las memorias intermedias ex318 a ex321 de modo que se puede evitar el desbordamiento y subdesbordamiento del sistema entre la unidad de modulación/desmodulación ex302 y la unidad de multiplexión/desmultiplexión ex303, por ejemplo.
Adicionalmente, la televisión ex300 puede incluir una configuración para recibir una entrada de AV de un micrófono o una cámara diferente de la configuración para obtener datos de audio y video de una difusión o un medio de grabación y puede codificar los datos obtenidos. Aunque la televisión ex300 puede codificar, multiplexar y proporcionar datos al exterior en la descripción, puede no ser capaz de realizar todos los procesos pero puede ser capaz de únicamente uno de recibir, decodificar y proporcionar datos al exterior.
Adicionalmente, cuando el lector/grabador ex218 lee o escribe los datos multiplexados de o en un medio de grabación, uno de la televisión ex300 y el lector/grabador ex218 puede decodificar o codificar los datos multiplexados y la televisión ex300 y el lector/grabador ex218 pueden compartir la decodificación o codificación.
Como un ejemplo, la FIGURA 22 ilustra una configuración de una unidad de reproducción/grabación de información ex400 cuando los datos son leídos o escritos de o en un disco óptico. La unidad de reproducción/grabación de información ex400 incluye los elementos constituyentes ex401 a ex407 que se describen posteriormente en este documento. La cabeza óptica ex401 irradia un foco de láser en una superficie de grabación del medio de grabación ex215 que es un disco óptico para escribir información y detecta la luz reflejada de la superficie de grabación del medio de grabación ex215 para leer la información. La unidad de grabación de modulación ex402 impulsa eléctricamente un láser semiconductor incluido en la cabeza óptica ex401 y modula la luz láser de acuerdo con datos grabados. La unidad de desmodulación de reproducción ex403 amplifica una señal de reproducción obtenida al detectar eléctricamente la luz reflejada de la superficie de grabación utilizando un fotodetector incluido en la cabeza óptica ex401 y desmodula la señal de reproducción al separar un componente de señal grabado en el' medio de grabación ex215 para reproducir la información necesaria. La memoria intermedia ex404 mantiene temporalmente la información a ser grabada en el medio de grabación ex215 y la información reproducida del medio de grabación ex215. Un motor del disco ex405 hace girar el medio de grabación ex215. Una unidad de servomando ex406 mueve la cabeza óptica ex401 a una pista de información predeterminada mientras que controla el impulso de rotación del motor del disco ex405 con el fin de seguir el foco de láser. La unidad de control del sistema ex407 controla en conjunto la unidad de reproducción/grabación de información ex400. Los procesos de lectura y escritura pueden ser implementados por la unidad de control del sistema ex407 utilizando diversa información almacenada en la memoria intermedia ex404 y generando y agregando nueva información como sea necesario y por medio de la unidad de grabación de modulación ex402, la unidad de desmodulación de reproducción ex403 y la unidad de servomando ex406 que graban y reproducen información a través de la cabeza óptica ex401 mientras que son operados de manera coordinada. La unidad de control del sistema ex407 incluye, por ejemplo, un microprocesador y ejecuta el procesamiento al causar que una computadora ejecute un programa para leer y escribi .
Aunque la cabeza óptica ex401 irradia un foco de láser en la descripción, puede realizar la grabación de alta densidad utilizando luz de campo próximo.
La FIGURA 23 ilustra esquemáticamente el medio de grabación ex215 que es el disco óptico. En la superficie de grabación del medio de grabación ex215, las acanaladuras guía 7 se forman en espiral y una pista de información ex230 graba, anticipadamente, información de dirección que indica una posición absoluta en el disco de acuerdo con un cambio en una forma de las acanaladuras guía. La información de dirección incluye información para determinar posiciones de bloques arborescentes de grabación ex231 que son una unidad para grabar datos . Un aparato que graba y reproduce datos reproduce la pista de información ex230 y lee la información de dirección con el fin de determinar las posiciones de los bloques arborescentes de grabación. Adicionalmente , el medio de grabación ex215 incluye un área de grabación de datos ex233, un área de circunferencia interior ex232 y un área de circunferencia exterior ex234. El área de grabación de datos ex233 es un área para el uso en la grabación de los datos del usuario. El área de circunferencia interior ex232 y el área de circunferencia exterior ex234 que son el interior y el exterior del área de grabación de datos ex233, respectivamente, son para uso específico excepto para la grabación de los datos del usuario. La unidad de reproducción/grabación de información 400 lee y escribe datos de audio codificados, datos de video codificados o datos multiplexados que se obtienen al multiplexar los datos de audio codificados y los datos de video codificados, de y sobre el área de grabación de datos ex233 del medio de grabación ex215.
Aunque un disco óptico que tiene una capa, tal como un DVD y un BD se proporciona como un ejemplo! en la descripción,, el disco óptico no está limitado a ese tipo y puede ser un disco óptico que tenga una estructura de múltiples capas y que pueda ser grabado en una parte diferente de la superficie. Adicionalmente , el disco óptico puede tener una estructura para la grabación/reproducción multidimensional , tal como la grabación de información utilizando luz de colores con diferentes longitudes de onda en la misma porción del disco óptico y para grabar información que tiene diferentes capas desde varios ángulos.
Adicionalmente, el carro ex210 que tiene la antena ex205 puede recibir datos del satélite ex202 y otros, y puede reproducir video en el dispositivo de exhibición tal como el sistema de navegación de carro ex211 establecido en el carro ex210, en un sistema de difusión digital ex200. En este punto, una configuración del sistema de navegación de carro ex211 será aquella, por ejemplo, que incluye una unidad de recepción de GPS en la configuración ilustrada en la FIGURA 21. Lo mismo será cierto para la configuración de la computadora exlll, el teléfono celular exll4 y otros.
La FIGURA 24A ilustra el teléfono celular exll4 que utiliza el método de codificación de imágenes en movimiento y el método de decodificación de imágenes en movimiento descritos en cada una de las Modalidades. El teléfono celular exll4 incluye: una antena ex350 para transmitir y recibir ondas de radio a través de la estación base exllO; una unidad de cámara ex365 capaz de capturar imágenes en movimiento y fijas; y una unidad de exhibición ex358 tal como una pantalla de cristal líquido para exhibir los datos tales como video decodificado que es capturado por la unidad de cámara ex365 o es recibido por la antena ex350. El teléfono celular exll4 incluye además: una unidad de cuerpo principal que incluye un conjunto de teclas de operación ex366; una unidad de salida de audio ex357 tal como un altavoz para la salida de audio; una unidad de entrada de audio ex356 tal como un micrófono para la entrada de audio; una unidad de memoria ex367 para almacenar video o imágenes fijas capturados, audio grabado, datos codificados o decodificados del video recibido, las imágenes fijas, correos electrónicos u otros; y una unidad de ranura ex364 que es una unidad de interconexión para un medio de grabación que almacena datos de la misma manera que la unidad de memoria ex367.
Después, un ejemplo de una configuración del teléfono celular exll4 se describirá con referencia a la FIGURA 24B. En el teléfono celular exll4, una unidad de control principal ex360 diseñada para controlar en conjunto cada unidad del cuerpo principal que incluye la unidad de exhibición ex358 así como también las teclas de operación ex366 se conecta mutuamente, por vía de una barra colectora sincrónica ex370, a una unidad de circuitos de suministro de energía ex361, una unidad de control de entrada de operación ex362, una unidad de procesamiento de señales de video ex355, una unidad de interconexión de cámara ex363, una unidad de control de la pantalla de cristal líquido (LCD) ex359f una unidad de modulación/desmodulación ex352, una unidad de multiplexión/desmultiplexión ex353, una unidad de procesamiento de señales de audio ex354, la unidad de ranura ex364 y la unidad de memoria ex367.
Cuando una tecla de final de llamada o una tecla de energía es encendida por la operación de un usuario, la unidad de circuitos de suministro de energía ex361 provee a las unidades respectivas con energía de un empaque de baterías con el fin de activar el teléfono celular exll4.
En el teléfono celular exll4, la unidad de procesamiento de señales de audio ex354 convierte las señales de audio recolectadas por la unidad de entrada de audio ex356 en modo de conversación de voz en señales de audio digital bajo el control de la unidad de control principal ex360 que incluye una CPU, ROM y RAM. Luego, la unidad de modulación/desmodulación ex352 realiza un procesamiento de espectro expandido en las señales de audio digital y la unidad de transmisión y recepción ex351 realiza la conversión de digital a análogo y la conversión de frecuencia en los datos, con el fin de transmitir los datos resultantes por vía de la antena ex350. También, en el teléfono celular exll4, la unidad de transmisión y recepción ex351 amplifica los datos recibidos por la antena ex350 en modo de conversación de voz y realiza la conversión de frecuencia y la conversión de análogo a digital en los datos.
Luego, la unidad de modulación/desmodulación ex352 realiza el procesamiento de espectro expandido inverso en los datos y la unidad de procesamiento de señales de audio ex354 los convierte en señales de audio análogo, con el fin de enviarlos por vía de la unidad de salida de audio ex357. Adicionalmente , cuando un correo electrónico en modo de comunicación de datos se transmite, los datos de texto del correo electrónico introducidos al utilizar las teclas de operación ex366 y otros del cuerpo principal se envían a la unidad de control principal ex360 por vía de la unidad de control de entrada de operación ex362. La unidad de control principal ex360 .. . causa que la. unidad de modulación/desmodulación ex352 realice un procesamiento de espectro expandido en los datos de texto y la unidad de transmisión y recepción ex351 realiza la conversión de digital a análogo y la conversión de frecuencia en los datos resultantes para transmitir los datos a la estación base exllO por vía de la antena ex350. Cuando se recibe un correo electrónico, el procesamiento que es aproximadamente inverso al procesamiento para transmitir un correo electrónico se realiza en los datos recibidos y los datos resultantes se proporcionan a la unidad de exhibición ex358.
Cuando se transmite video, imágenes fijas o video y audio en el modo de comunicación de datos, la unidad de procesamiento de señales de video ex355 comprime y codifica señales de video suministradas de la unidad de cámara ex365 utilizando el método de codificación de imágenes en movimiento mostrado en cada una de las Modalidades y transmite los datos de video codificados a la unidad de multiplexión/desmultiplexión ex353. En contraste, cuando la unidad de cámara ex365 captura video, imágenes fijas y otros, la unidad de procesamiento de señales de audio ex354 codifica señales de audio recolectadas por la unidad de entrada de audio ex356 y transmite los datos de audio codificados a la unidad de multiplexión/desmultiplexión ex353.
La unidad de multiplexión/desmultiplexión ex353 multiplexa los datos de video codificados que son suministrados de la unidad de procesamiento de señales de video ex355 y los datos de audio codificados que son suministrados de la unidad de procesamiento de señales de audio ex354, utilizando un método predeterminado. Luego, la unidad de modulación/desmodulación ex352 realiza el procesamiento de espectro expandido en los datos multiplexados y la unidad de transmisión y recepción ex351 realiza la conversión de digital a análogo y la conversión de frecuencia en los datos con el fin de transmitir los datos resultantes por vía de la antena ex350.
Cuando se reciben datos de un archivo de video el cual está vinculado con una página Web y otros en el modo de comunicación de datos o cuando se recibe un correo electrónico con video y/o audio anexo, con el propósito de decodificar los datos multiplexados que son recibidos por vía de la antena ex350, la unidad de multiplexión/desmultiplexión ex353 desmultiplexa los datos multiplexados en una corriente de bits de datos de video y una corriente de bits de datos de audio y provee a la unidad de procesamiento de señales de video ex355 con los datos de video codificados y la unidad de procesamiento de señales de audio ex354 con los datos de audio codificados, a través de la barra colectora sincrónica ex370. La unidad de procesamiento de señales de video ex355 decodifica la señal de video utilizando un método de decodificación de imágenes en movimiento que corresponde al método de codificación de imágenes en movimiento mostrado en cada una de las Modalidades y luego la unidad de exhibición ex358 exhibe, por ejemplo, el video y las imágenes fijas que están incluidos en el archivo de video vinculado con la página Web por vía de la unidad de control de- LCD ex359. Adicionalmente , la unidad de procesamiento de señales de audio ex354 decodifica la señal de audio y la unidad de salida de audio ex357 proporciona el audio.
Adicionalmente , de manera similar a la televisión ex300, es posible que una terminal tal como el teléfono celular exll4 tenga 3 tipos de configuraciones de implementación que incluyen no únicamente (i) una terminal de transmisión y recepción que incluye tanto un aparato de codificación como un aparato de decodificación, sino también (ii) una terminal de transmisión que incluye únicamente un aparato de codificación y (iii) una terminal de recepción que incluye únicamente un aparato de decodificación. Aunque el sistema de difusión digital ex200 recibe y transmite los datos multiplexados que se obtienen al multiplexar datos de audio en datos de video en la descripción, los datos multiplexados pueden ser datos obtenidos al multiplexar no datos de audio sino datos de carácter relacionados con video en datos de video y pueden no ser datos multiplexados sino datos de video mismos.
Como tal, el método de codificación de imágenes en movimiento y .el método de decodificación de imágenes en movimiento en cada una de las Modalidades se pueden utilizar en cualquiera de los dispositivos y sistemas descritos. De esta manera, se pueden obtener las ventajas descritas en cada una de las Modalidades.
Adicionalmente, la presente invención no está limitada a las Modalidades y son posibles varias modificaciones y revisiones sin apartarse del alcance de la presente invención.
Modalidad 5 Los datos de video se pueden generar al conmutar, como sea necesario, entre (i) el método de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento mostrados en cada una de las Modalidades y (ii) un método de codificación de imágenes en movimiento o un aparato de codificación de imágenes en movimiento de conformidad con un estándar diferente, tal como MPEG-2, MPEG4-AVC y VC-1.
En este punto, cuando una pluralidad de datos de video que cumplen con los diferentes estándares se generan y luego se decodifican, es necesario que los métodos de decodificación se seleccionen para cumplir con los diferentes estándares. Sin embargo, puesto que no se puede detectar que estándar cumple cada uno de la pluralidad de datos de video que son, decodificados , existe el problema respecto a que no se puede seleccionar un método de decodificación apropiado.
Con el propósito de resolver el problema, los datos multiplexados que se obtienen al multiplexar datos de audio y otros en datos de video tienen una estructura que incluye información de identificación que indica que estándar cumplen los datos de video. La estructura específica de los datos multiplexados que incluyen los datos de video generados en el método de codificación de imágenes en movimiento y por el aparato de codificación de imágenes en movimiento mostrados en cada una de las Modalidades se describirá en lo sucesivo. Los datos multiplexados son una corriente digital en el formato de Corriente de Transporte de MPEG-2.
La FIGURA 25 ilustra una estructura de los datos multiplexados. Como se ilustra en la FIGURA 25, los datos mul iplexados se pueden obtener al multiplexar por lo menos una de una corriente de video, una corriente de audio, una corriente de gráficos de presentación (PG, por sus siglas en inglés) y una corriente de gráficos interactivos. La corriente de video representa video primario y video secundario de una película, la corriente de audio (IG) representa una parte de audio primario y una parte de audio secundario que se mezcla con la parte de audio primario y la corriente de gráficos de presentación representa subtítulos de una película. En este punto, el video primario es video normal que es exhibido en una pantalla y el video secundario es video que es exhibido en una ventana más pequeña en el video principal. Adicionalmente, la corriente de gráficos interactivos representa una pantalla interactiva que es generada al ordenar los componentes de GUI en una pantalla. La corriente de video se codifica en el método de codificación de imágenes en movimiento o por el aparato de codificación de imágenes en movimiento mostrados en cada una de las Modalidades, o en un método de codificación de imágenes en movimiento o por un aparato de codificación de imágenes en movimiento de conformidad con un estándar convencional, tal como MPEG-2, MPEG4-AVC y VC-1. La corriente de audio se codifica de acuerdo con un estándar, tal como Dolby-AC-3, Dolby Digital Plus, MLP, DTS, DTS-HD y PCM lineal.
Cada corriente incluida en los datos multiplexados es identificada por un PID. Por ejemplo, 0x1011 se asigna a la corriente de video que se utiliza para el video de una película, de 0x1100 a OxlllF se asignan a las corrientes de audio, de 0x1200 a 0xl21F se asignan a las corrientes de gráficos de presentación, de 0x1400 a 0xl41F se asignan a las corrientes de gráficos interactivos, de OxlBOO a OxlBlF se asignan a las corrientes de video que se utilizan para el video secundario de la película y de OxlAOO a OxlAlF se asignan a las corrientes de audio que se utilizan para el video secundario que se mezcla con el audio primario.
La FIGURA 26 ilustra esquemáticamente como se multiplexan los datos. En primer lugar, una corriente de video ex235 compuesta de tramas de video y una corriente de audio ex238 compuesta de tramas de audio se transforman en una corriente de paquetes PES ex236 y una corriente de • "paquetes PES ex239 y además en paquetes TS ex237 y paquetes TS ex240, respectivamente. Similarmente , los datos de una corriente de gráficos de presentación ex241 y los datos de una corriente de gráficos interactivos ex244 se transforman en una corriente de paquetes PES ex242 y una corriente de paquetes PES ex245 y además en paquetes TS ex243 y paquetes TS ex246., respectivamente. Estos paquetes TS son multiplexados en una corriente para obtener datos multiplexados ex247.
La FIGURA 27 ilustra con mayor detalle como se almacena una corriente de video en una corriente de paquetes PES. La primera barra en la FIGURA 27 muestra una corriente de tramas de video en una corriente de video. La segunda barra muestra la corriente de paquetes PES. Como es indicado por las flechas designadas como yyl, yy2, yy3 e yy4 en la FIGURA 27, la corriente de video se divide en imágenes como imágenes I, imágenes B e imágenes P cada una de las cuales es una unidad de presentación de video y las imágenes se almacenan en una carga útil de cada uno de los paquetes PES. Cada uno de los paquetes PES tiene un encabezado de PES y el encabezado de PES almacena un Registro de Tiempos de Presentación (PTS, por sus siglas en inglés) que indica un tiempo de exhibición de la imagen y un Registro de Tiempos de Decodificación (DTS, por sus siglas en inglés) que indica un tiempo de decodificación de la imagen.
La FIGURA 28 ilustra un formato de paquetes TS que se escriben finalmente en los datos multiplexados. Cada uno de los paquetes TS es un paquete de longitud fija de 188 bytes, que incluye un encabezado de TS de 4 bytes que tiene información, tal como un PID para identificar una corriente y una 'carga útil de TS de 184 bytes para almacenar datos. Los paquetes PES se dividen y se almacenan en las cargas útiles de TS, respectivamente. Cuando se utiliza un BD ROM, a cada uno de los paquetes TS se proporciona un TP_Extra_Header (Encabezado Adicional TP) de 4 bytes, dando por resultado de esta manera paquetes fuente de 192 bytes. Los paquetes fuente se escriben en los datos multiplexados . El TP_Extra_Header almacena información tal como un Arrival_Time_Stamp (Registro de Tiempos de Llegada) (ATS, por sus siglas en inglés) . El ATS muestra un tiempo de inicio de transferencia en el cual cada uno de los paquetes TS deben ser transferidos a un filtro de PID. Los números que incrementan desde la cabeza de los datos multiplexados son llamados números de paquete fuente (SPNs, por sus siglas en inglés) como se muestra en el fondo de la FIGURA 28.
Cada uno de los paquetes TS incluidos en los datos multiplexados incluye no únicamente corrientes de audio, video, subtítulos y otros, sino también una Tabla de Asociación de Programas (PAT, por sus siglas en inglés) , una Tabla de Mapa de Programas (PMT, por sus siglas en inglés) y una Referencia de Reloj de Programa (PCR, por sus siglas en inglés) . La PAT muestra lo que indica un PID en una PMT utilizada en los datos multiplexados y un PID de la PAT misma se registra como cero. La PMT almacena PIDs de las corrientes de video, audio, subtítulos y otros incluidas en los datos multiplexados y la información de atributos de las corrientes correspondientes a los PIDs . La PMT también tiene varios descriptores que se refieren a los datos multiplexados. Los descriptores tienen información tal como información de control de copias que muestra si se permite o no el copiado de los datos multiplexados. La PCR almacena la información de tiempo de STC que corresponde a un ATS que muestra cuando el paquete de PCR se transfiere a un decodificador, con el propósito de lograr una sincronización entre un Reloj de Tiempo de Llegada (ATC) que es un eje de tiempo de ATSs y un Reloj de Tiempo de Sistema (STC) que es un eje de tiempo de PTSs y DTSs.
La FIGURA 29 ilustra detalladamente la estructura de datos de la PMT. Un encabezado de PMT se coloca en la parte más alta de la PMT. El encabezado de PMT describe la longitud de datos incluidos en la PMT y otros. Una pluralidad de descriptores que se refieren a los datos multiplexados se coloca después del encabezado de PMT. Información tal como la información de control de copias se describe en los descriptores. Después de los descriptores, se coloca una pluralidad de piezas de información de corriente que se refiere a las corrientes incluidas en los datos multiplexados. Cada pieza de información de corriente incluye descriptores de corriente cada uno que describe información, tal como un tipo de corriente para identificar un codee de compresión de una corriente, un PID de corriente e información de atributos de corriente (tal como una velocidad de tramas o una relación dimensional) . Los descriptores de corriente son iguales en número al número de corrientes en los datos multiplexados.
Cuando los datos multiplexados se graban en un medio de grabación y otros, se graban junto con archivos de información de datos multiplexados.
Cada uno de los archivos de información de datos multiplexados es información de gestión de los datos multiplexados como se muestra en la FIGURA 30. Los archivos de información de datos multiplexados están en correspondencia de uno a uno con los datos multiplexados y cada uno de los archivos incluye información de datos multiplexados, información de atributos de corriente y un mapa de entrada.
Como se ilustra en la FIGURA 30, la información de datos multiplexados incluye una velocidad de sistema, un tiempo de inicio de reproducción y un tiempo de final de reproducción. La velocidad de sistema indica la velocidad de transferencia máxima a la cual un decodificador objetivo del sistema que se describe posteriormente transfiere los datos multiplexados a un filtro de PID. Los intervalos de los ATSs incluidos en los datos multiplexados se establecen a un nivel no más alto que una velocidad de sistema. El tiempo de inicio de reproducción indica un PTS en una trama de video en la cabeza de los datos multiplexados. Un intervalo de una trama se agrega a un PTS en una trama de video al final de los datos multiplexados y el PTS se establece al tiempo de final de reproducción.
Como se muestra en la FIGURA 31, una pieza de información de atributos se registra en la información de atributos de corriente, para cada PID de cada corriente incluida en los datos multiplexados. Cada pieza de información de atributos tiene diferente información dependiendo si la corriente correspondiente es una corriente de video, una corriente de audio, una corriente de gráficos de presentación o una corriente de gráficos interactivos. Cada pieza de información de atributos de corriente de video lleva información que incluye que clase de codee de compresión se utiliza para la compresión de la corriente de video y. la resolución, relación dimensional y velocidad de trama, de las piezas de datos de imagen que se incluyen en la corriente de video. Cada pieza de información de atributos de corriente de audio lleva información que incluye que clase de codee de compresión se utiliza para comprimir la corriente de audio, cuantos canales se incluyen en la corriente de audio, que lenguaje soporta la corriente de audio y que tan alta es la frecuencia de muestreo. La información de atributos de corriente de video y la información de atributos de corriente de audio se utilizan para la inicialización de un decodificador antes de que el reproductor repita la información .
En la Modalidad 5, los datos multiplexados que se utilizan son de un tipo de corriente incluido en la PMT. Adicionalmente , cuando los datos multiplexados se graban en un medio de grabación, la información de atributos de corriente de video incluida en la información de datos multiplexados se utiliza. Más específicamente, el método de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento descritos en cada una de las Modalidades incluye un paso o una unidad para asignar información única que indica los datos de video generados por el método de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento en cada una de las Modalidades, al tipo de corriente incluido en la PMT o la información de atributos de corriente de video. Con la estructura, los datos de video generados por el método de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento descritos en cada una de las Modalidades se pueden distinguir de los datos de video que cumplen con otro estándar.
Adicionalmente, la FIGURA 32 ilustra pasos del método de decodificación de imágenes en movimiento de acuerdo con la Modalidad 5. En el Paso exSlOO, el tipo de corriente incluido en la PMT o la información de atributos de corriente de video se obtiene de los datos multiplexados. Después, en el Paso exSlOl, se determina si el tipo de corriente o la información de atributos de corriente de video indica o no que los datos multiplexados son generados por el método de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento en cada una de las Modalidades. Cuando se determina que el tipo de corriente o la información de atributos de corriente de video indica que los datos multiplexados son generados por el método de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento en cada una de las Modalidades, en el Paso exS102, el tipo de corriente o la información de atributos de corriente de video se decodifica por medio del método de decodificación de imágenes en movimiento en cada una de las Modalidades. Adicionalmente , cuando el tipo de corriente o la información de atributos de corriente de video indica el cumplimiento de los estándares convencionales, tales como MPEG-2, MPEG4-AVC y VC-1, en el Paso exS103, el tipo de corriente o la información de atributos de corriente de video se decodifica por medio de un método de decodificación de imágenes en movimiento de conformidad con los estándares convencionales.
Como tal, la asignación de un nuevo valor único al tipo de corriente o a la información de atributos de corriente de video hace posible la determinación si el método de decodificación de imágenes en movimiento o el aparato de decodificación de imágenes en movimiento que se describen en cada una de las Modalidades pueden realizar o no la decodificación. Incluso con la introducción de datos multiplexados que cumplen con un estándar diferente, se puede seleccionar un método o aparato de decodificación apropiado. De' esta manera, se hace posible decodificar información sin ningún error. Adicionalmente, el método o aparato de codificación de imágenes en movimiento, o el método o aparato de decodificación de imágenes en movimiento en la Modalidad 5 se puede utilizar en los dispositivos y sistemas descritos anteriormente.
Modalidad 6 Cada uno del método de codificación de imágenes en movimiento, el aparato de codificación de imágenes en movimiento, el método de decodificación de imágenes en movimiento y el aparato de decodificación de imágenes en movimiento en cada una de las Modalidades se logra típicamente en la forma de un circuito integrado o un circuito Integrado a Gran Escala (LSI) . Como un ejemplo del LSI, la FIGURA 33 ilustra una configuración del LSI ex500 que se hace en un chip. El LSI ex500 incluye los elementos ex501, ex502, ex503, ex504, ex505, ex506, ex507, ex508 y ex509 que se describen posteriormente, y los elementos se conectan entre sí a través de una barra colectora ex510. La unidad de circuitos de suministro de energía ex505 es activada al proveer a cada uno de los elementos con energía cuando la unidad de circuitos de suministro de energía ex505 se enciende.
Por ejemplo, cuando se realiza la codificación, el LSI ex500 recibe una señal de AV de un micrófono exll7, una cámara exll3 y otros a través de una 10 de AV ex509 bajo control de una unidad de control ex501 que incluye una CPU ex502, un controlador de memoria ex503, un controlador de corriente ex504 y una unidad de control de frecuencia impulsora ex512. La señal de AV recibida se almacena temporalmente en una memoria externa ex511, tal como una SDRAM. Bajo control de la unidad de control ex501, los datos almacenados son segmentados en porciones de datos de acuerdo con la cantidad y velocidad de procesamiento que se transmite a una unidad de procesamiento de señales ex507. Luego, la unidad de procesamiento de señales ex507 codifica una señal de audio y/o una señal de video. En este punto, la codificación de la señal de video es la codificación descrita en cada una de las Modalidades. Adicionalmente , la unidad de procesamiento de señales ex507 multiplexa algunas veces los datos de audio codificados y los datos de video codificados, y una 10 de corriente ex506 proporciona los datos multiplexados al exterior: Los datos multiplexados proporcionados son transmitidos a la estación base exl07, o se escriben en el medio de grabación ex215. Cuando se multiplexan los conjuntos de datos, los conjuntos de datos se deben almacenar temporalmente en la memoria intermedia ex508 de modo que los conjuntos de datos se sincronizan entre sí.
Aunque la memoria ex511 es un elemento fuera del LSI ex500, se puede incluir en el LSI ex500. La memoria intermedia ex508 no está limitada a una memoria intermedia, sino que puede estar compuesta de memorias intermedias. Adicionalmente, el LSI ex500 se puede hacer en un chip o una pluralidad de chips .
Adicionalmente, aunque la unidad de control ex501 incluye la CPU ex502, el controlador de memoria ex503, el controlador de corriente ex504, la unidad de control de frecuencia impulsora ex512, la configuración de la unidad de control ex501 no está limitada a éstos. Por ejemplo, la unidad de procesamiento de señales ex507 puede incluir además una CPU. La inclusión de otra CPU en la unidad de procesamiento de señales ex507 puede mejorar la velocidad de procesamiento. Adicionalmente, como otro ejemplo, la CPU ex502 puede servir como o puede ser una parte de la unidad de procesamiento de señales ex507 y, por ejemplo, puede incluir una unidad de procesamiento de señales de audio. En este caso, la unidad de control ex501 incluye la unidad de procesamiento de señales ex507 o la CPU ex502 que incluye una parte de la unidad de procesamiento de señales ex507.
El nombre utilizado en este documento es LSI, pero también se puede llamar IC, sistema LSI, super LSI o ultra-LSI dependiendo del grado de integración.
Por otra parte, las maneras para lograr la integración no están limitadas al LSI y un circuito especial o un procesador de uso general y así por el estilo también puede lograr la integración. La Matriz de Puerta Programable de Campo (FPGA, por sus siglas en inglés) que se puede programar después de la manufactura de LSIs o un procesador reconfigurable que permite la reconfiguración de la conexión o la configuración de un LSI se puede utilizar para el mismo propósito.
En el futuro, con el avance en la tecnología de los semiconductores, una nueva tecnología puede reemplazar el LSI . Los bloques arborescentes funcionales se pueden integrar utilizando esta tecnología. La posibilidad es que la presente invención se aplique a la biotecnología.
Modalidad 7 Cuando los datos de video se decodifican por medio del método de codificación de imágenes en movimiento o por medio del aparato de codificación de imágenes en movimiento descritos en cada una de las Modalidades, en comparación a cuando los datos de video que cumplen con un estándar convencional, tales como MPEG-2, MPEG4-AVC y VC-1, es posible que la cantidad de cálculo se incremente. De esta manera, el LSI ex500 necesita ser establecido a una frecuencia impulsora más alta que aquella de la CPU ex502 que se utiliza cuando se decodifican datos de video de conformidad con el estándar convencional. Sin embargo, cuando la frecuencia impulsora se establece más alto, existe el problema respecto a que se incrementa el consumo de energía.
Con el propósito de resolver el problema, el aparato de decodificación de imágenes en movimiento, tal como la televisión ex300 y el LSI ex500 se configuran para determinar que estándar cumplen los datos de video y conmutar entre las frecuencias impulsoras de acuerdo con el estándar determinado. La FIGURA 34 ilustra una configuración ex800 en la Modalidad 7. Una unidad de conmutación de frecuencias impulsoras ex803 establece una frecuencia impulsora a una frecuencia impulsora más alta cuando los datos de video son generados · por el método de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento descritos en cada una de las Modalidades. Luego, la unidad de conmutación de frecuencias impulsoras ex803 da instrucciones a una unidad de procesamiento de decodificación ex801 que ejecuta el. método de decodificación de imágenes en movimiento descrito en cada una de las Modalidades para decodificar los datos de video. Cuando los datos de video cumplen con el estándar convencional, la unidad de conmutación de frecuencias impulsoras ex803 establece una frecuencia impulsora a una frecuencia impulsora más baja que aquella de los datos de video generados por el método de codificación de imágenes en movimiento o el aparato de codificación de imágenes en movimiento descritos en cada una de las Modalidades. Luego, la unidad de conmutación de frecuencias impulsoras ex803 da instrucciones a la unidad de procesamiento de decodificación ex802 que cumple con el estándar convencional para decodificar los datos de video.
Más específicamente, la unidad de conmutación de frecuencias impulsoras ex803 incluye la CPU ex502 y la unidad de control de frecuencias impulsoras ex512 en la FIGURA 33. En este punto, cada una de la unidad de procesamiento de decodificación ex801 que ejecuta el método de decodificación de imágenes en movimiento descrito en cada una de las Modalidades y la unidad de procesamiento de decodificación ex802 que cumple con el estándar convencional corresponde a la unidad de procesamiento de señales ex507 mostrada en la FIGURA 33. La CPU ex502 determina que estándar cumplen los datos de video. Luego, la unidad de control de frecuencias impulsoras ex512 determina una frecuencia impulsora con base en una señal de la CPU ex502. Adicionalmente , la unidad de procesamiento de señales ex507 decodifica los datos de video con base en una señal de la CPU ex502. Por ejemplo, es posible que la información de identificación descrita en la Modalidad 5 se utilice para identificar los datos de video. La información de identificación no está limitada a aquélla descrita en la Modalidad 5 sino que puede ser cualquier información siempre y cuando la información indique que estándar cumplen los datos de video. Por ejemplo, cuando se puede determinar que estándar cumplen los datos de video con base en una señal externa para determinar que los datos de video se utilizan para una televisión o un disco, etcétera, la determinación se puede hacer con base en esta señal externa. Adicionalmente , la CPU ex502 selecciona una frecuencia impulsora con base en, por ejemplo, una tabla de consulta en la cual los estándares de los datos de video se asocian con las frecuencias impulsoras como se muestra en la FIGURA 36. La frecuencia impulsora se puede seleccionar al almacenar la tabla de consulta en la memoria intermedia ex508 y en una memoria interna de un LSI y con referencia a la tabla de consulta por la CPU ex502.
La FIGURA 35 ilustra pasos para ejecutar un método en la Modalidad 7. En primer lugar, en el Paso exS200, la unidad de procesamiento de señales ex507 obtiene información de identificación de los datos raultiplexados . Después, en el Paso exS201, .la CPU ex502 determina si los datos de video se generan o no con base en la información de identificación por medio del método de codificación y el aparato de codificación descritos en cada una de las Modalidades. Cuando los datos de vidéo son generados por medio del método de codificación y el aparato de codificación descritos en cada una de las Modalidades, en el Paso exS202, la CPU ex502 transmite una señal para establecer la frecuencia impulsora a una frecuencia impulsora más alta a la unidad de control de frecuencias impulsoras ex512. Luego, la unidad de control de frecuencias impulsoras ex512 establece la frecuencia impulsora a la frecuencia impulsora más alta. Por otra parte, cuando la información de identificación indica que los datos de video cumplen con el estándar convencional, tal como MPEG-2, MPEG4-AVC y VC-1, en el Paso exS203, la CPU ex502 transmite una señal para establecer la frecuencia impulsora a una frecuencia impulsora más baja a la unidad de control de frecuencias impulsoras ex512. Luego, la unidad de control de frecuencias impulsoras ex512 establece la frecuencia impulsora a la frecuencia impulsora más baja que aquella en el caso donde los datos de video son generados por medio del método de codificación y el aparato de codificación descritos en cada una de las Modalidades.
Adicionalmente, junto con la conmutación de las frecuencias impulsoras, el efecto de conservación de energía se puede mejorar al cambiar el voltaje que se aplica al LSI ex500 o un aparato que incluye el LSI. ex500. Por ejemplo, cuando la frecuencia impulsora se establece más baja, es posible que el voltaje que se aplica al LSI ex500 o el aparato que incluye el LSI ex500 se establezca a un voltaje más bajo que aquel en el caso donde la frecuencia impulsora se establece más alta.
Adicionalmente, cuando la cantidad de cálculo para la decodificación es más grande, la frecuencia impulsora se puede establecer más alta, y cuando la cantidad de cálculo para la decodificación es más pequeña, la frecuencia 1 impulsora se puede establecer más baja como el método para establecer la frecuencia impulsora. De esta manera, el método de establecimiento no está limitado a aquellos descritos anteriormente. Por ejemplo, cuando la cantidad de cálculo para decodificar datos de video de conformidad con MPEG4-AVC es más grande que la cantidad de cálculo para la decodificación de datos de video generados por medio del método de codificación de imágenes en movimiento y el aparato de codificación de imágenes en movimiento descritos en cada una de las Modalidades, es posible que la frecuencia impulsora se establezca en orden inverso al establecimiento descrito anteriormente.
Adicionalmente, el método para establecer la frecuencia impulsora no está limitado al método para establecer la frecuencia impulsora más baja. Por ejemplo, cuando la información de identificación indica que los datos de video se generan por medio del método de codificación de imágenes en movimiento y . el aparato de codificación de imágenes en movimiento descritos en cada una de las Modalidades, es posible que el voltaje que se aplica al LSI ex500 o el aparato que incluye el LSI ex500 se establezca más alto. Cuando la información de identificación indica que los datos de video cumplen con el estándar convencional, tal como MPEG-2, MPEG4-AVC y VC-1, es posible que el voltaje que se aplica al LSI ex500 o el aparato que incluye el LSI ex500 se establezca más bajo. Como otro ejemplo, es posible que cuando la información de identificación indicai que los datos de video se generan por medio del método de codificación de imágenes en movimiento y el aparato de codificación de imágenes en movimiento descritos en cada una de las Modalidades, la impulsión de la CPU ex502 no tenga que suspenderse. Cuando la información de identificación indica que los datos de video cumplen con el estándar convencional, tal como MPEG-2, MPEG4-AVC y VC-1, es posible que la impulsión de la CPU ex502 se suspenda en un tiempo determinado debido a que la CPU ex502 tiene capacidad de procesamiento adicional. Incluso cuando la información de identificación indica que los datos de video se generan por medio del método de codificación de imágenes en movimiento y el aparato de codificación de imágenes en movimiento descritos en cada una de las Modalidades, es posible que en el caso donde la CPU ex502 puede tener un retardo de tiempo, la impulsión de la CPU ex502 se suspenda en un tiempo determinado. En este caso, es posible que el tiempo de suspensión se establezca más corto que aquel en el caso cuando la información de identificación indica que los datos de video cumplen con el estándar convencional, tal como MPEG-2, MPEG4-AVC y VC-1.
Por consiguiente, el efecto de conservación de energía se puede mejorar al conmutar entre las frecuencias impulsoras de acuerdo con el estándar que cumplen los datos de video. Adicionalmente , cuando el LSI ex500 o el aparato que incluye el LSI ex500 se impulsa utilizando una batería, la vida útil de la batería se puede extender con el efecto de conservación de energía.
Modalidad 8 Existen casos donde una pluralidad de datos de video que cumplen con diferentes estándares, se proporcionan a los dispositivos y sistemas, tal como una televisión y un teléfono celular. Con el propósito de hacer posible la decodificación de la pluralidad de datos de video que cumplen con los diferentes estándares, la unidad de procesamiento de señales ex507 del LSI ex500 necesita cumplir con los diferentes estándares. Sin embargo, los problemas del incremento en la escala del circuito del LSI ex500 y el incremento en el costo se elevan con el uso individual de las unidades de procesamiento de señales ex507 que cumplen con los estándares respectivos.
Con el propósito de resolver el problema, lo que se idea es una configuración en la cual la unidad de procesamiento de decodificación para implementar el método de decodificación de imágenes en movimiento descrito en cada una de las Modalidades y - la unidad de procesamiento de decodificación que cumple con el estándar convencional, tal como MPEG-2, MPEG4-AVC y VC-1 se comparten parcialmente. Ex900 en la FIGURA 37A muestra un ejemplo de la configuración. Por ejemplo, el método de decodificación de imágenes en movimiento descrito en cada una de las Modalidades y el método de decodificación de imágenes en movimiento que cumple con MPEG4-AVC tienen, parcialmente en común, los detalles del procesamiento, tal como la codificación entrópica, cuantificación inversa, filtrado de desbloqueo y predicción con compensación de movimiento. Es posible que los detalles de procesamiento que se comparten incluyan el uso de una unidad de procesamiento de decodificación ex902 que cumple con MPEG4-AVC. En contraste, es posible que una unidad de procesamiento de decodificación especializada ex901 se utilice para otro procesamiento que es único para la presente invención. Puesto que la presente invención se caracteriza por la decodificación aritmética en particular, por ejemplo, la unidad de procesamiento de decodificación especializada ex901 se utiliza para la decodificación aritmética. Por otra parte, es posible que la unidad de procesamiento de decodificación se comparta para uno de la cuantificación inversa, filtración de desbloqueo y compensación de movimiento o la totalidad del procesamiento. La unidad de procesamiento de decodificación para implementar el método de decodificación de imágenes en movimiento descrito en cada una de las Modalidades puede ser compartida para que el procesamiento sea compartido y una unidad de procesamiento de decodificación especializada se puede utilizar para el procesamiento único para aquel de MPEG4-AVC.
Adicionalmente, exlOOO en la FIGURA 37B muestra otro ejemplo en que se comparte parcialmente el procesamiento. Este ejemplo utiliza una configuración que incluye una unidad de procesamiento de decodificación especializada exlOOl que soporta el procesamiento único para la presente invención, una unidad de procesamiento de decodificación especializada exl002 que soporta el procesamiento único para otro estándar convencional y una unidad de procesamiento de decodificación exl003 que soporta el procesamiento que es compartido entre el método de decodificación de imágenes en movimiento en la presente invención y el método de decodificación de imágenes en movimiento convencional. En este punto, las unidades de procesamiento de decodificación especializadas exlOOl y exl002 no están especializadas necesariamente para el procesamiento de la presente invención y el procesamiento del estándar convencional, y pueden ser aquellas capaces de implementar el procesamiento general. Adicionalmente, la configuración de la Modalidad 8. uede ser implementada por el LSI ex500.
Como tal, la reducción de la escala del circuito de un LSI y la reducción del costo son posibles al compartir la unidad de procesamiento de decodificación para que el procesamiento sea compartido entre el método de decodificación de imágenes en movimiento en la presente invención y el método de decodificación de imágenes en movimiento de conformidad con el estándar convencional. 1 Aplicabilidad Industrial La presente invención es aplicable a un método de codificación de imágenes, un método de decodificación de imágenes, un aparato de codificación de imágenes y un aparato de decodificación de imágenes y en particular, es aplicable a un método de codificación de imágenes, un método de decodificación de imágenes, un aparato de codificación de imágenes y un aparato de decodificación de imágenes los cuales utilizan la codificación aritmética y la decodificación aritmética.
Lista de Signos de Referencia 100 Aparato de codificación de imágenes 101 Unidad de control 102 Unidad de sustracción 103 Unidad de transformación y cuant if icación 104 Unidad de codificación de longitud variable 105 Unidad de cuantificación inversa y de transformación inversa 106, 206 Unidad de adición 107, 207 Unidad de intra-predicción 108, 208 Unidad de inter-predicción 109, 209 Conmutador 121 Señal de imagen de entrada 122, 125, 225 Señal residual 123, 223 Coeficientes de transformación cuantif icados 124 Corriente de bits 126 Señal de imagen reconstruida 127, 128, 129, 227, 228 Señal de predicción de imágenes 130, 230 Parámetro de control 141 Unidad de binarización 142, 242 Unidad de control de contexto 143 Unidad de codi icación aritmética binaria 151, 251 Secuencia binaria 152, 252 Indice de contexto 200 Aparato de decodificación de imágenes 201 Unidad de control 202 Unidad de decodificación de longitud variable 204 Unidad de cuantificación inversa 205 Unidad de transformación inversa 224 Coeficientes de transformación ortogonal 226 Señal de imagen decodificada 229 Señal de imagen 241 , Unidad de binarización inversa 243 Unidad de decodificación aritmética binaria Se hace constar que con relación a esta fecha, el mejor método conocido por la solicitante para llevar a la práctica la citada invención, es el que resulta claro de la presente descripción de la invención.

Claims (16)

REIVINDICACIONES Habiéndose descrito la invención como antecede, se reclama como propiedad lo contenido en las siguientes reivindicaciones :
1. Un método de decodificación de imágenes que utiliza una decodificación aritmética, caracterizado porque comprende: determinar un contexto para el uso en un bloque arborescente actual, de entre una pluralidad de contextos; realizar una decodificación aritmética en una secuencia de bits que corresponde al bloque arborescente actual, utilizando el contexto determinado para decodificar una secuencia binaria, la secuencia de bits se obtiene al realizar una codificación aritmética en un parámetro de control del bloque arborescente actual; y binarizar de manera inversa la secuencia binaria para decodificar el parámetro de control del bloque arborescente actual, en donde la determinación de un contexto incluye: determinar un tipo de señal del parámetro de control del bloque arborescente actual; determinar el contexto bajo una primera condición de que se utilicen los parámetros de control decodificados de bloques arborescentes adyacentes del bloque arborescente actual, cuando el tipo de señal es un primer tipo, los bloques arborescentes adyacentes son un bloque arborescente izquierdo y un bloque arborescente superior del bloque arborescente actual; y determinar el contexto bajo una segunda condición de que no se utilice el parámetro de control decodificado del bloque arborescente superior, cuando el tipo de señal es un segundo tipo diferente del primer tipo, el primer tipo es uno de "split_coding_unit_flag" y "skip_flag" y el segundo tipo es uno de "mvd_lO" y "mvd_ll" .
2. El método de decodificación de imágenes de conformidad con la reivindicación 1, caracterizado porque la segunda condición es una condición de que no se utilicen los parámetros de control decodificados del bloque arborescente izquierdo y el bloque arborescente superior.
3. El método de decodificación de imágenes de conformidad con la reivindicación 2, caracterizado porque en la determinación de un contexto, un contexto predeterminado se determina bajo la segunda condición, como el contexto para el uso en la decodificación aritmética del bloque arborescente actual, cuando el tipo de señal es el segundo tipo.
4. El método de decodificación de imágenes de conformidad con cualquiera de las reivindicaciones 1 a 3, caracterizado porque la determinación de un contexto incluye además: determinar si el parámetro de control decodificado del bloque arborescente superior está disponible o no en la decodificación, con base en una posición del bloque arborescente actual; y ! determinar el contexto bajo la segunda condición, cuando el parámetro de control decodificado del bloque arborescente superior no está disponible.
5. El método de decodificación de imágenes de conformidad con la reivindicación 4, caracterizado porque en la determinación de un contexto, se determina que el parámetro de control decodificado del bloque arborescente superior no está disponible en la decodificación, cuando el bloque arborescente actual está en un límite de corte.
6. El método de decodificación de imágenes de conformidad con la reivindicación 4, caracterizado porque en la determinación de un contexto, se determina si el parámetro de control decodificado del bloque arborescente superior está disponible o no en la decodificación, de acuerdo con una profundidad jerárquica de una unidad de datos a la cual pertenece el parámetro -de · control del bloque arborescente actual.
7. El método de decodificación de imágenes de conformidad con cualquiera de las reivindicaciones 1 a 6, caracterizado porque el segundo tipo es un parámetro de control que tiene una estructura de datos predeterminada.
8. El método de decodificación de imágenes de conformidad con cualquiera de las reivindicaciones 1 a 7, caracterizado porque la determinación de un contexto incluye además determinar un contexto de un parámetro de control de una segunda unidad más pequeña que una primera unidad al conmutar entre la primera condición y la segunda condición, con base en un parámetro de control de la primera unidad.
9. El método de decodificación de imágenes de conformidad con cualquiera de las reivindicaciones 1 a 8, caracterizado porque, en la determinación de un contexto, una condición para determinar un contexto para "mvd_lc" se deduce a partir de por lo menos uno de los valores del "mvd_l0" y el "mvd_ll" del bloque arborescente actual .
10. El método de decodificación de imágenes de conformidad con cualquiera de las reivindicaciones 1 a 8, caracterizado porque en la determinación de un contexto, uno de los valores condicionales de una dirección horizontal y una dirección vertical para "mvd" se deduce a partir de los otros valores condicionales.
11. El método de decodificación de imágenes de conformidad con cualquiera de las reivindicaciones 1 a 10, caracterizado porque el "split_coding_unit_flag" indica si el bloque arborescente actual se particiona o no en una pluralidad de bloques arborescentes, el "skip_flag" indica si el bloque arborescente actual se debe omitir o no, el "mvd_lO" indica una diferencia entre un componente de vector de movimiento de una lista 0 y un valor predicho del componente de vector de movimiento, el componente de vector de movimiento y el valor predicho se utilizan para el bloque arborescente actual, el "mvd_ll" indica una diferencia entre un componente de vector de movimiento de una lista 1 y un valor predicho del componente de vector de movimiento, el componente de vector de movimiento y el valor predicho se utilizan para el bloque arborescente actual, y el "mvd_lc" indica una diferencia entre un componente de vector de movimiento de una combinación de listas y un valor predicho del componente de vector de movimiento, el componente de vector de movimiento y el valor predicho se utilizan para el bloque arborescente actual.
12. El método de decodificación de imágenes de conformidad con cualquiera de las reivindicaciones l a 11, caracterizado porque los procesos de decodificación de acuerdo con un primer estándar y los procesos de decodificación de acuerdo con un segundo estándar se conmutan de acuerdo con un identificador que indica uno del primer estándar y el segundo estándar, el identificador se incluye en una señal codificada, y la determinación de un contexto, la realización y la binarización de manera inversa se realizan como los procesos de decodificación de acuerdo con el primer estándar, cuando el identificador indique el primer estándar.
13. Un método de codificación de imágenes que utiliza una codificación aritmética, caracterizado porque comprende: binarizar un parámetro de control de un bloque arborescente actual para generar una secuencia binaria; determinar un contexto para el uso en el bloque arborescente actual, de entre una pluralidad de contextos; y realizar una codificación aritmética en la secuencia binaria utilizando el contexto determinado para generar una secuencia de bits, en donde la determinación de un contexto incluye: determinar un tipo de señal del parámetro de control del bloque arborescente actual ; determinar el contexto bajo una primera condición de que se utilicen los parámetros de control de bloques arborescentes adyacentes del bloque arborescente actual, cuando el tipo de señal es un primer tipo, los bloques arborescentes adyacentes son un bloque arborescente izquierdo y un bloque arborescente superior del bloque arborescente actual; y determinar el contexto bajo una segunda condición de que no se utilice el parámetro de control del bloque arborescente superior, cuando el tipo de señal es un segundo tipo diferente del primer tipo, el primer tipo es uno de "split_coding_unit_flag" y "skip_flag" y el segundo tipo es uno de "mvd_lO" y "mvd_ll" .
14. Un aparato de decodificación de imágenes que utiliza una decodificación aritmética, caracterizado porque comprende : una unidad de control de contexto configurada para determinar un contexto para el uso en un bloque arborescente actual, de entre una pluralidad de contextos; una unidad de decodificación aritmética configurada para realizar una decodificación aritmética en una secuencia de bits que corresponde al bloque arborescente actual, utilizando el contexto determinado para decodificar una secuencia binaria, la secuencia de bits se obtiene al realizar una codificación aritmética en un parámetro de control del bloque arborescente actual; y una unidad de binarización inversa configurada para binarizar de manera inversa la secuencia binaria para decodificar el parámetro de control del bloque arborescente actual , en donde la unidad de control de contexto se configura para: determinar un tipo de señal del parámetro de control del bloque arborescente actual; determinar el contexto bajo una primera condición de que se utilicen los parámetros de control decodificados de bloques arborescentes adyacentes del bloque arborescente actual, cuando el tipo de señal es un primer tipo, los bloques arborescentes adyacentes son un bloque arborescente izquierdo y un bloque arborescente superior del bloque arborescente actual; y determinar el contexto bajo una segunda condición de que no se utilice el parámetro de control decodificado del bloque arborescente superior, cuando el tipo de señal es un segundo tipo diferente del primer tipo, el primer tipo es uno de "split_coding_unit_flag" y "skip_flag" y el segundo tipo es uno de "mvd_l0" y "mvd_ll" .
15. Un aparato de codificación de imágenes que utiliza una codificación aritmética, caracterizado porque comprende : una unidad de binarización configurada para binarizar un parámetro de control de un bloque arborescente actual para generar una secuencia binaria; una unidad de control de contexto configurada para determinar un contexto para el uso en el bloque arborescente actual, de entre una pluralidad de contextos; y una unidad de codificación aritmética configurada para realizar una codificación aritmética en la secuencia binaria utilizando el contexto determinado para generar una secuencia de bits, en donde la unidad de control de contexto se configura para: determinar un tipo de señal del parámetro de control del bloque arborescente actual; determinar el contexto bajo una primera condición de que se utilicen los parámetros de control de bloques arborescentes adyacentes del bloque arborescente actual, cuando el tipo de señal es un primer tipo, los bloques arborescentes adyacentes son un bloque arborescente izquierdo y un bloque arborescente superior del bloque arborescente actual ; y determinar el contexto bajo una segunda condición de que no se utilice el parámetro de control del bloque arborescente superior, cuando el tipo de señal es un segundo tipo diferente del primer tipo, el primer tipo es uno de "split_coding_unit_flag" y "skip_flag" y- el segundo tipo es uno de "mvd_10" y "mvd_ll" .
16. Un aparato de codificación y decodificación de imágenes, caracterizado porque comprende: el aparato de decodificación de imágenes de conformidad con la reivindicación 14; y el aparato de codificación de imágenes de conformidad con la reivindicación 15.
MX2013013483A 2011-06-27 2012-06-22 Metodo de decodificacion de imagenes, metodo de codificacion de imagenes, aparato de decodificacion de imagenes, aparato de codificacion de imagenes y aparato de codificacion y decodificacion de imagenes. MX2013013483A (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201161501390P 2011-06-27 2011-06-27
PCT/JP2012/004060 WO2013001764A1 (ja) 2011-06-27 2012-06-22 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置

Publications (1)

Publication Number Publication Date
MX2013013483A true MX2013013483A (es) 2014-02-27

Family

ID=47361916

Family Applications (1)

Application Number Title Priority Date Filing Date
MX2013013483A MX2013013483A (es) 2011-06-27 2012-06-22 Metodo de decodificacion de imagenes, metodo de codificacion de imagenes, aparato de decodificacion de imagenes, aparato de codificacion de imagenes y aparato de codificacion y decodificacion de imagenes.

Country Status (13)

Country Link
US (5) US8811762B2 (es)
EP (2) EP2725793A4 (es)
JP (4) JP5933545B2 (es)
KR (1) KR102060621B1 (es)
CN (2) CN106878715B (es)
AU (1) AU2012277214B2 (es)
BR (1) BR112013030347B1 (es)
CA (1) CA2842646C (es)
MX (1) MX2013013483A (es)
MY (1) MY169636A (es)
RU (1) RU2608244C2 (es)
TW (1) TWI564818B (es)
WO (1) WO2013001764A1 (es)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5914962B2 (ja) * 2010-04-09 2016-05-11 ソニー株式会社 画像処理装置および方法、プログラム、並びに、記録媒体
USRE47366E1 (en) 2011-06-23 2019-04-23 Sun Patent Trust Image decoding method and apparatus based on a signal type of the control parameter of the current block
RU2602672C2 (ru) 2011-06-23 2016-11-20 Сан Пэтент Траст Способ декодирования изображения, способ кодирования изображения, устройство декодирования изображения, устройство кодирования изображения и устройство кодирования и декодирования изображения
RU2603552C2 (ru) * 2011-06-24 2016-11-27 Сан Пэтент Траст Способ декодирования изображения, способ кодирования изображения, устройство декодирования изображения, устройство кодирования изображения и устройство кодирования и декодирования изображения
WO2012176464A1 (ja) 2011-06-24 2012-12-27 パナソニック株式会社 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置
MX2013013483A (es) 2011-06-27 2014-02-27 Panasonic Corp Metodo de decodificacion de imagenes, metodo de codificacion de imagenes, aparato de decodificacion de imagenes, aparato de codificacion de imagenes y aparato de codificacion y decodificacion de imagenes.
MX2013012980A (es) 2011-06-28 2013-12-06 Panasonic Corp Metodo de decodificacion de imagenes, metodo de codificacion de imagenes, aparato de decodificacion de imagenes, aparato de codificacion de imagenes y aparato de codificacion y decodififcacion de imagenes.
WO2013001767A1 (ja) 2011-06-29 2013-01-03 パナソニック株式会社 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置
WO2013001770A1 (ja) 2011-06-30 2013-01-03 パナソニック株式会社 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置
AU2012277219A1 (en) 2011-06-30 2013-09-19 Sun Patent Trust Image decoding method, image encoding method, image decoding device, image encoding device, and image encoding/decoding device
CN103765885B (zh) 2011-07-11 2017-04-12 太阳专利托管公司 图像解码方法、图像编码方法、图像解码装置、图像编码装置及图像编解码装置
WO2013107027A1 (en) * 2012-01-19 2013-07-25 Mediatek Singapore Pte. Ltd. Methods and apparatuses of cbf coding in hevc
US9584812B2 (en) * 2012-01-20 2017-02-28 Blackberry Limited Methods and devices for context set selection
JP5867737B2 (ja) * 2013-01-17 2016-02-24 富士ゼロックス株式会社 画像処理装置及び画像処理プログラム
WO2015054812A1 (en) 2013-10-14 2015-04-23 Microsoft Technology Licensing, Llc Features of base color index map mode for video and image coding and decoding
CN105659602B (zh) 2013-10-14 2019-10-08 微软技术许可有限责任公司 用于视频和图像编码的帧内块复制预测模式的编码器侧选项
RU2654129C2 (ru) 2013-10-14 2018-05-16 МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи Функциональные возможности режима внутреннего предсказания с блочным копированием для кодирования и декодирования видео и изображений
US9224213B2 (en) 2013-12-31 2015-12-29 Facebook, Inc. Systems and methods for context based image compression
US10469863B2 (en) 2014-01-03 2019-11-05 Microsoft Technology Licensing, Llc Block vector prediction in video and image coding/decoding
US10390034B2 (en) 2014-01-03 2019-08-20 Microsoft Technology Licensing, Llc Innovations in block vector prediction and estimation of reconstructed sample values within an overlap area
US11284103B2 (en) 2014-01-17 2022-03-22 Microsoft Technology Licensing, Llc Intra block copy prediction with asymmetric partitions and encoder-side search patterns, search ranges and approaches to partitioning
US10542274B2 (en) 2014-02-21 2020-01-21 Microsoft Technology Licensing, Llc Dictionary encoding and decoding of screen content
EP3253059A1 (en) 2014-03-04 2017-12-06 Microsoft Technology Licensing, LLC Block flipping and skip mode in intra block copy prediction
CN105493505B (zh) 2014-06-19 2019-08-06 微软技术许可有限责任公司 统一的帧内块复制和帧间预测模式
AU2014408228B2 (en) 2014-09-30 2019-09-19 Microsoft Technology Licensing, Llc Rules for intra-picture prediction modes when wavefront parallel processing is enabled
US9591325B2 (en) 2015-01-27 2017-03-07 Microsoft Technology Licensing, Llc Special case handling for merged chroma blocks in intra block copy prediction mode
EP3099072A1 (en) * 2015-05-28 2016-11-30 Parabola Research Limited Method, system and device for image and video coding
US10659783B2 (en) 2015-06-09 2020-05-19 Microsoft Technology Licensing, Llc Robust encoding/decoding of escape-coded pixels in palette mode
CN116708785A (zh) 2016-07-12 2023-09-05 韩国电子通信研究院 图像编码/解码方法以及用于该方法的记录介质
US10462462B2 (en) * 2016-09-29 2019-10-29 Qualcomm Incorporated Motion vector difference coding technique for video coding
US10986349B2 (en) 2017-12-29 2021-04-20 Microsoft Technology Licensing, Llc Constraints on locations of reference blocks for intra block copy prediction
CN117676165A (zh) 2018-09-10 2024-03-08 华为技术有限公司 视频解码方法及视频解码器
CN117156128A (zh) * 2018-10-23 2023-12-01 韦勒斯标准与技术协会公司 通过使用基于子块的运动补偿处理视频信号的方法和设备
SG11202106789YA (en) 2018-12-28 2021-07-29 B1 Institute Of Image Technology Inc Intra prediction-based video encoding/decoding method and device
KR20210104895A (ko) 2018-12-28 2021-08-25 텔레호낙티에볼라게트 엘엠 에릭슨(피유비엘) 인코더 및 디코더에서 변환 선택을 선택하기 위한 방법 및 장치
WO2020143643A1 (en) * 2019-01-07 2020-07-16 Beijing Bytedance Network Technology Co., Ltd. Control method for merge with mvd
WO2020143774A1 (en) 2019-01-10 2020-07-16 Beijing Bytedance Network Technology Co., Ltd. Merge with mvd based on geometry partition
CN111339193B (zh) * 2020-02-21 2023-06-27 腾讯云计算(北京)有限责任公司 类别的编码方法及装置

Family Cites Families (129)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60125210A (ja) 1983-12-08 1985-07-04 Agency Of Ind Science & Technol ポリイミド膜の製膜改善方法
CN1305311C (zh) 2001-06-29 2007-03-14 株式会社Ntt都科摩 图像编码装置、图像解码装置、图像编码方法、及图像解码方法
US7457359B2 (en) * 2001-09-26 2008-11-25 Mabey Danny L Systems, devices and methods for securely distributing highly-compressed multimedia content
US7457358B2 (en) 2001-09-26 2008-11-25 Interact Devices, Inc. Polymorphic codec system and method
ES2721514T3 (es) 2001-11-06 2019-08-01 Panasonic Ip Corp America Procedimiento de codificación de imágenes en movimiento y procedimiento de decodificación de imágenes en movimiento
CN101448162B (zh) * 2001-12-17 2013-01-02 微软公司 处理视频图像的方法
JP2004088722A (ja) 2002-03-04 2004-03-18 Matsushita Electric Ind Co Ltd 動画像符号化方法および動画像復号化方法
US6632691B1 (en) 2002-04-11 2003-10-14 Solid State Measurements, Inc. Apparatus and method for determining doping concentration of a semiconductor wafer
CN1976456B (zh) 2002-04-19 2011-06-08 松下电器产业株式会社 图像解码方法及图像解码装置
ES2745044T3 (es) 2002-04-19 2020-02-27 Panasonic Ip Corp America Método de cálculo de vectores de movimiento
JP3807342B2 (ja) 2002-04-25 2006-08-09 三菱電機株式会社 デジタル信号符号化装置、デジタル信号復号装置、デジタル信号算術符号化方法、およびデジタル信号算術復号方法
JP2003319391A (ja) 2002-04-26 2003-11-07 Sony Corp 符号化装置および方法、復号装置および方法、記録媒体、並びにプログラム
EP1487113B1 (de) 2002-05-02 2006-10-18 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Kodierung und Dekodierung von Transformationskoeffizienten in Bild- oder Videokodierern
EP1427216A1 (en) 2002-07-02 2004-06-09 Matsushita Electric Industrial Co., Ltd. Image encoding method and image decoding method
EP2903272B1 (en) 2002-08-08 2018-03-28 Godo Kaisha IP Bridge 1 Moving picture encoding method and decoding method
US6795584B2 (en) 2002-10-03 2004-09-21 Nokia Corporation Context-based adaptive variable length coding for adaptive block transforms
JP2004297768A (ja) 2003-03-10 2004-10-21 Mitsubishi Electric Corp 映像信号符号化装置、および映像信号符号化方法
US8094715B2 (en) 2003-03-10 2012-01-10 Mitsubishi Denki Kabushiki Kaisha Video signal encoding device and video signal encoding method
US7945102B2 (en) 2003-03-24 2011-05-17 Sony Corporation Data encoding apparatus, data encoding method, data output apparatus, data output method, signal processing system, signal processing apparatus, signal processing method, data decoding apparatus, and data decoding method
US7630440B2 (en) 2003-05-28 2009-12-08 Broadcom Corporation Context adaptive binary arithmetic code decoding engine
US7426308B2 (en) * 2003-07-18 2008-09-16 Microsoft Corporation Intraframe and interframe interlace coding and decoding
US7724827B2 (en) * 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US7379608B2 (en) * 2003-12-04 2008-05-27 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung, E.V. Arithmetic coding for transforming video and picture data units
TWI330976B (en) 2003-12-05 2010-09-21 Trident Microsystems Far East Method and apparatus for encoding/decoding dynamic graphic content
JP2005184042A (ja) 2003-12-15 2005-07-07 Sony Corp 画像復号装置及び画像復号方法並びに画像復号プログラム
EP1551185A1 (en) 2004-01-05 2005-07-06 Thomson Licensing S.A. Encoding method, decoding method, and encoding apparatus for a digital picture sequence
US20090102973A1 (en) 2004-01-09 2009-04-23 Harris Scott C Video split device
KR100608050B1 (ko) 2004-01-14 2006-08-02 삼성전자주식회사 사용자의 요구에 의해 활성화되는 인터랙티브 그래픽스트림을 저장한 저장 매체, 재생 장치 및 그 재생 방법
US8190003B2 (en) 2004-01-14 2012-05-29 Samsung Electronics Co., Ltd. Storage medium storing interactive graphics stream activated in response to user's command, and reproducing apparatus for reproducing from the same
US7599435B2 (en) * 2004-01-30 2009-10-06 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Video frame encoding and decoding
PL1709801T3 (pl) 2004-01-30 2013-02-28 Panasonic Ip Corp America Sposób dekodowania video z wykorzystaniem adaptacyjnych macierzy kwantyzacji
US7469070B2 (en) * 2004-02-09 2008-12-23 Lsi Corporation Method for selection of contexts for arithmetic coding of reference picture and motion vector residual bitstream syntax elements
JP4273996B2 (ja) * 2004-02-23 2009-06-03 ソニー株式会社 画像符号化装置及び方法、並びに画像復号装置及び方法
ES2383655T3 (es) 2004-04-28 2012-06-25 Panasonic Corporation Aparato de generación de flujos de imágenes en movimiento, aparato de codificación de imágenes en movimiento, aparato multiplexador de imágenes en movimiento y aparato de descodificación de imágenes en movimiento
WO2006001384A1 (ja) 2004-06-25 2006-01-05 Matsushita Electric Industrial Co., Ltd. 画像符号化方法および画像復号化方法
JP4842265B2 (ja) 2004-07-14 2011-12-21 エージェンシー フォー サイエンス,テクノロジー アンド リサーチ 信号の状況(コンテキスト)ベース符号化及び復号化
KR20060016243A (ko) 2004-08-17 2006-02-22 엘지전자 주식회사 감시용 디지털 비디오 레코더에서의 멀티 채널 영상표시장치 및 방법
JP4375305B2 (ja) 2004-10-26 2009-12-02 ソニー株式会社 情報処理装置および情報処理方法、記録媒体、並びに、プログラム
US20060120461A1 (en) 2004-12-06 2006-06-08 Roy Knight Two processor architecture supporting decoupling of outer loop and inner loop in video decoder
WO2006075901A1 (en) 2005-01-14 2006-07-20 Sungkyunkwan University Methods of and apparatuses for adaptive entropy encoding and adaptive entropy decoding for scalable video encoding
WO2006106935A1 (ja) 2005-04-01 2006-10-12 Matsushita Electric Industrial Co., Ltd. 画像復号化装置及び画像復号化方法
RU2371881C1 (ru) * 2005-07-08 2009-10-27 ЭлДжи ЭЛЕКТРОНИКС ИНК. Способ моделирования информации кодирования видеосигнала для компрессии/декомпрессии информации
EP1911290A4 (en) 2005-07-08 2010-04-28 Lg Electronics Inc METHOD FOR MODELING A VIDEO SIGNAL CODE INFORMATION FOR COMPRESSING / DECOMPRIMING CODING INFORMATION
KR101158439B1 (ko) 2005-07-08 2012-07-13 엘지전자 주식회사 영상 신호의 코딩정보를 압축/해제하기 위해 모델링하는 방법
WO2007008018A1 (en) 2005-07-08 2007-01-18 Lg Electronics Inc. Method for modeling coding information of a video signal to compress/decompress the information
US20080137744A1 (en) 2005-07-22 2008-06-12 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
CA2610276C (en) * 2005-07-22 2013-01-29 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US8509551B2 (en) * 2005-07-22 2013-08-13 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recording with image encoding program and computer readable recording medium recorded with image decoding program
US20090123066A1 (en) 2005-07-22 2009-05-14 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method, image decoding method, image encoding program, image decoding program, computer readable recording medium having image encoding program recorded therein,
US20080123977A1 (en) 2005-07-22 2008-05-29 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US8488889B2 (en) 2005-07-22 2013-07-16 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US20080123947A1 (en) 2005-07-22 2008-05-29 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method, image decoding method, image encoding program, image decoding program, computer readable recording medium having image encoding program recorded therein
US20090034857A1 (en) 2005-07-22 2009-02-05 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US20080130990A1 (en) 2005-07-22 2008-06-05 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US20080130988A1 (en) 2005-07-22 2008-06-05 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US20080130989A1 (en) 2005-07-22 2008-06-05 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
US20080165849A1 (en) 2005-07-22 2008-07-10 Mitsubishi Electric Corporation Image encoder and image decoder, image encoding method and image decoding method, image encoding program and image decoding program, and computer readable recording medium recorded with image encoding program and computer readable recording medium recorded with image decoding program
CN100584025C (zh) 2005-08-04 2010-01-20 华为技术有限公司 一种基于内容自适应的算术解码***及装置
US7595743B1 (en) 2005-10-26 2009-09-29 Lsi Corporation System and method for reducing storage requirements for content adaptive binary arithmetic coding
JP5089878B2 (ja) * 2005-10-28 2012-12-05 パナソニック株式会社 画像符号化装置
CN100440979C (zh) 2005-12-15 2008-12-03 清华大学 基于上下文的自适应二维变长解码方法和装置
GB0600141D0 (en) 2006-01-05 2006-02-15 British Broadcasting Corp Scalable coding of video signals
KR101215615B1 (ko) 2006-01-10 2012-12-26 삼성전자주식회사 동일 채널 내에서 서로 다른 코덱을 이용하여 부호화된 비디오 및 오디오 데이터 스트림의 재생을 위한 코덱 변경 방법 및 장치
US7983343B2 (en) * 2006-01-12 2011-07-19 Lsi Corporation Context adaptive binary arithmetic decoding for high definition video
WO2007079781A1 (en) 2006-01-13 2007-07-19 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Picture coding using adaptive colour space transformation
US20070200949A1 (en) 2006-02-21 2007-08-30 Qualcomm Incorporated Rapid tuning in multimedia applications
KR100750165B1 (ko) 2006-02-22 2007-08-17 삼성전자주식회사 압축률 향상을 위해 개선된 컨텍스트 모델 선택을 사용하는cabac 부호화 방법 및 장치, 그리고 cabac복호화 방법 및 장치
JP2007300517A (ja) 2006-05-02 2007-11-15 Sony Corp 動画像処理方法、動画像処理方法のプログラム、動画像処理方法のプログラムを記録した記録媒体及び動画像処理装置
US7656326B2 (en) 2006-06-08 2010-02-02 Via Technologies, Inc. Decoding of context adaptive binary arithmetic codes in computational core of programmable graphics processing unit
US7262722B1 (en) 2006-06-26 2007-08-28 Intel Corporation Hardware-based CABAC decoder with parallel binary arithmetic decoding
JP4787100B2 (ja) 2006-07-27 2011-10-05 パナソニック株式会社 画像符号化装置
EP2124343A4 (en) 2006-12-14 2012-01-11 Nec Corp METHOD, DEVICE AND VIDEO PROGRAMMING PROGRAM
EP2105025B1 (en) 2007-01-11 2021-04-07 InterDigital VC Holdings, Inc. Methods and apparatus for using syntax for the coded_block_flag syntax element and the coded_block_pattern syntax element for the cavlc 4:4:4 intra, high 4:4:4 intra, and high 4:4:4 predictive profiles in mpeg-4 avc high level coding
US8204129B2 (en) * 2007-03-27 2012-06-19 Freescale Semiconductor, Inc. Simplified deblock filtering for reduced memory access and computational complexity
JP2008289125A (ja) * 2007-04-20 2008-11-27 Panasonic Corp 算術復号化装置及びその方法
CN100531386C (zh) 2007-06-15 2009-08-19 上海富瀚微电子有限公司 一种上下文自适应二进制算术编码器及其方法
RU2339181C1 (ru) 2007-06-25 2008-11-20 Государственное образовательное учреждение высшего профессионального образования Академия Федеральной службы охраны Российской Федерации (Академия ФСО России) Способ передачи дополнительной информации при фрактальном кодировании изображений
US8345968B2 (en) * 2007-06-28 2013-01-01 Mitsubishi Electric Corporation Image encoding device, image decoding device, image encoding method and image decoding method
WO2009028922A2 (en) 2007-09-02 2009-03-05 Lg Electronics Inc. A method and an apparatus for processing a video signal
TWI339074B (en) * 2007-09-05 2011-03-11 Via Tech Inc Operating method and device of coded block flag parameter
US7777654B2 (en) 2007-10-16 2010-08-17 Industrial Technology Research Institute System and method for context-based adaptive binary arithematic encoding and decoding
CN101478672B (zh) 2008-01-04 2012-12-19 华为技术有限公司 视频编码、解码方法及装置和视频处理***
US8542748B2 (en) 2008-03-28 2013-09-24 Sharp Laboratories Of America, Inc. Methods and systems for parallel video encoding and decoding
JP4962400B2 (ja) 2008-04-30 2012-06-27 ソニー株式会社 算術復号装置
US7592937B1 (en) 2008-06-02 2009-09-22 Mediatek Inc. CABAC decoding unit and method
KR20090129926A (ko) 2008-06-13 2009-12-17 삼성전자주식회사 영상 부호화 방법 및 그 장치, 영상 복호화 방법 및 그 장치
FR2932911A1 (fr) 2008-06-24 2009-12-25 France Telecom Procede et dispositif de remplissage des zones d'occultation d'une carte de profondeur ou de disparites estimee a partir d'au moins deux images.
EP2312856A4 (en) 2008-07-10 2011-12-28 Mitsubishi Electric Corp IMAGE ENCRYPTION DEVICE, IMAGE KEYING DEVICE, IMAGE ENCRYPTION METHOD AND IMAGE KEYING PROCESS
CN102187583B (zh) 2008-08-19 2013-09-11 汤姆森特许公司 基于上下文的自适应二进制算术编码(cabac)的视频流兼容性
US8634457B2 (en) 2008-09-26 2014-01-21 Qualcomm Incorporated Determining availability of video data units
US7932843B2 (en) * 2008-10-17 2011-04-26 Texas Instruments Incorporated Parallel CABAC decoding for video decompression
EP2182732A1 (en) 2008-10-28 2010-05-05 Panasonic Corporation Switching between scans in image coding
WO2010125606A1 (en) 2009-04-29 2010-11-04 Aspa-Japan Co., Ltd. Method for image data compression and compression system of image data
KR20120129944A (ko) 2010-02-10 2012-11-28 엘지전자 주식회사 비디오 신호의 처리 방법 및 장치
US9237355B2 (en) 2010-02-19 2016-01-12 Qualcomm Incorporated Adaptive motion resolution for video coding
JP5368631B2 (ja) 2010-04-08 2013-12-18 株式会社東芝 画像符号化方法、装置、及びプログラム
CN102215396A (zh) 2010-04-09 2011-10-12 华为技术有限公司 一种视频编解码方法和***
US8942282B2 (en) 2010-04-12 2015-01-27 Qualcomm Incorporated Variable length coding of coded block pattern (CBP) in video compression
US20110249754A1 (en) 2010-04-12 2011-10-13 Qualcomm Incorporated Variable length coding of coded block pattern (cbp) in video compression
CN105120287B (zh) 2010-04-13 2019-05-17 Ge 视频压缩有限责任公司 解码器、编码器以及用于解码和编码的方法
EP3739883B1 (en) 2010-05-04 2022-11-16 LG Electronics Inc. Method and apparatus for encoding and decoding a video signal
US20110310976A1 (en) 2010-06-17 2011-12-22 Qualcomm Incorporated Joint Coding of Partition Information in Video Coding
DK2924995T3 (en) 2010-07-09 2018-10-01 Samsung Electronics Co Ltd PROCEDURE FOR VIDEO DECODING, BY USING BLOCK COLLECTION
KR20120016980A (ko) 2010-08-17 2012-02-27 한국전자통신연구원 영상 부호화 방법 및 장치, 그리고 복호화 방법 및 장치
ES2868133T3 (es) 2010-09-27 2021-10-21 Lg Electronics Inc Método para partición de bloque y dispositivo de decodificación
CN103477635B (zh) 2010-10-08 2017-01-18 Ge视频压缩有限责任公司 编码器和编码方法与解码器和解码方法
EP4270957A3 (en) 2010-11-04 2024-06-19 GE Video Compression, LLC Picture coding supporting block merging and skip mode
US9008181B2 (en) 2011-01-24 2015-04-14 Qualcomm Incorporated Single reference picture list utilization for interprediction video coding
HUE044727T2 (hu) 2011-02-09 2019-11-28 Lg Electronics Inc Eljárás kép adatok kódolására és dekódolására egy ideiglenes mozgás vektor becsléssel és azt alkalmazó készülék
US20120224639A1 (en) 2011-03-03 2012-09-06 General Instrument Corporation Method for interpolating half pixels and quarter pixels
US9788019B2 (en) 2011-03-09 2017-10-10 Hfi Innovation Inc. Method and apparatus of transform unit partition with reduced complexity
HUE061938T2 (hu) 2011-03-21 2023-09-28 Lg Electronics Inc Mozgásvektor-prediktor kiválasztása
KR101539312B1 (ko) 2011-05-27 2015-07-24 미디어텍 인크. 비디오 프로세싱에 대한 라인 버퍼 감소를 위한 방법 및 장치
US8995523B2 (en) 2011-06-03 2015-03-31 Qualcomm Incorporated Memory efficient context modeling
US9860528B2 (en) 2011-06-10 2018-01-02 Hfi Innovation Inc. Method and apparatus of scalable video coding
RU2602672C2 (ru) 2011-06-23 2016-11-20 Сан Пэтент Траст Способ декодирования изображения, способ кодирования изображения, устройство декодирования изображения, устройство кодирования изображения и устройство кодирования и декодирования изображения
WO2012176464A1 (ja) 2011-06-24 2012-12-27 パナソニック株式会社 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置
RU2603552C2 (ru) 2011-06-24 2016-11-27 Сан Пэтент Траст Способ декодирования изображения, способ кодирования изображения, устройство декодирования изображения, устройство кодирования изображения и устройство кодирования и декодирования изображения
MX2013013483A (es) 2011-06-27 2014-02-27 Panasonic Corp Metodo de decodificacion de imagenes, metodo de codificacion de imagenes, aparato de decodificacion de imagenes, aparato de codificacion de imagenes y aparato de codificacion y decodificacion de imagenes.
MX2013012980A (es) 2011-06-28 2013-12-06 Panasonic Corp Metodo de decodificacion de imagenes, metodo de codificacion de imagenes, aparato de decodificacion de imagenes, aparato de codificacion de imagenes y aparato de codificacion y decodififcacion de imagenes.
WO2013001767A1 (ja) 2011-06-29 2013-01-03 パナソニック株式会社 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置
WO2013001770A1 (ja) 2011-06-30 2013-01-03 パナソニック株式会社 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置及び画像符号化復号装置
AU2012277219A1 (en) 2011-06-30 2013-09-19 Sun Patent Trust Image decoding method, image encoding method, image decoding device, image encoding device, and image encoding/decoding device
US20130003858A1 (en) 2011-06-30 2013-01-03 Vivienne Sze Simplified Context Selection For Entropy Coding of Transform Coefficient Syntax Elements
MY164252A (en) 2011-07-01 2017-11-30 Samsung Electronics Co Ltd Method and apparatus for entropy encoding using hierarchical data unit, and method and apparatus for decoding
CN103765885B (zh) 2011-07-11 2017-04-12 太阳专利托管公司 图像解码方法、图像编码方法、图像解码装置、图像编码装置及图像编解码装置
US8804816B2 (en) 2011-08-30 2014-08-12 Microsoft Corporation Video encoding enhancements
US20130188741A1 (en) 2012-01-21 2013-07-25 General Instrument Corporation Devices and methods for sample adaptive offset coding and/or selection of band offset parameters
SG10201510803WA (en) 2012-06-11 2016-01-28 Samsung Electronics Co Ltd Method and Apparatus for Encoding Videos Sharing SAO Parameter According to Color Component

Also Published As

Publication number Publication date
JP5933545B2 (ja) 2016-06-08
US20140301443A1 (en) 2014-10-09
US20170164000A1 (en) 2017-06-08
WO2013001764A1 (ja) 2013-01-03
KR102060621B1 (ko) 2019-12-30
CN103563375A (zh) 2014-02-05
EP4270950A2 (en) 2023-11-01
US10687074B2 (en) 2020-06-16
BR112013030347A2 (pt) 2017-08-01
KR20140028035A (ko) 2014-03-07
EP4270950A3 (en) 2024-02-14
US20180124424A1 (en) 2018-05-03
RU2608244C2 (ru) 2017-01-17
TWI564818B (zh) 2017-01-01
CN103563375B (zh) 2017-04-05
CA2842646C (en) 2018-09-04
CA2842646A1 (en) 2013-01-03
JP6112375B2 (ja) 2017-04-12
JP2017130951A (ja) 2017-07-27
AU2012277214A1 (en) 2013-12-12
JP6587076B2 (ja) 2019-10-09
TW201315239A (zh) 2013-04-01
US20120328209A1 (en) 2012-12-27
JP2018113710A (ja) 2018-07-19
AU2012277214B2 (en) 2016-05-05
JPWO2013001764A1 (ja) 2015-02-23
US9154783B2 (en) 2015-10-06
CN106878715A (zh) 2017-06-20
US20150373336A1 (en) 2015-12-24
CN106878715B (zh) 2019-05-28
US8811762B2 (en) 2014-08-19
EP2725793A1 (en) 2014-04-30
JP6308448B2 (ja) 2018-04-11
EP2725793A4 (en) 2014-12-03
US9912961B2 (en) 2018-03-06
US9591311B2 (en) 2017-03-07
BR112013030347B1 (pt) 2022-06-28
RU2013152611A (ru) 2015-08-10
MY169636A (en) 2019-04-24
JP2016167864A (ja) 2016-09-15

Similar Documents

Publication Publication Date Title
AU2012277215B2 (en) Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
AU2012277220B2 (en) Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
AU2012281918C1 (en) Decoding Method, Coding Method, Decoding Apparatus, Coding Apparatus, And Coding and Decoding Apparatus
AU2018201049C1 (en) Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
MX2013013483A (es) Metodo de decodificacion de imagenes, metodo de codificacion de imagenes, aparato de decodificacion de imagenes, aparato de codificacion de imagenes y aparato de codificacion y decodificacion de imagenes.
RU2603552C2 (ru) Способ декодирования изображения, способ кодирования изображения, устройство декодирования изображения, устройство кодирования изображения и устройство кодирования и декодирования изображения
MX2013013508A (es) Metodo de decodificacion de imagenes, metodo de codificacion de imagenes, aparato de decodificacion de imagenes, aparato de codificacion de imagenes y aparato de codificacion y decodificacion de imagenes.
AU2012294053B2 (en) Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
AU2017201384B2 (en) Moving picture coding method, moving picture decoding method, moving picture coding apparatus, moving picture decoding apparatus, and moving picture coding and decoding apparatus
AU2016269409B8 (en) Decoding method, coding method, decoding apparatus, coding apparatus, and coding and decoding apparatus
CA2830046C (en) Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
AU2013273044B2 (en) Video image encoding method, video image encoding device, video image decoding method, and video image decoding device
MX2013013909A (es) Metodo de decodificacion de imagenes, metodo de codificacion de imagenes, aparato de decodificacion de imagenes, aparato de codificacion de imagenes y aparato de codificacion y decodificacion de imágenes.
MX2013001774A (es) Metodo de decodificacion de imagen, metodo de codificacion de imagen, aparato de decodificacion de imagen, aparato codificacion de imagen, programa, y circuito integrado.
MX2013001773A (es) Metodo de codificacion de imagen, metodo de decodificacion de imagen, aparato de codificacion de imagen, aparato de decodificacion de imagen, y aparato de codificacion y decodificacion de imagen.
MX2013015089A (es) Metodo de codificacion de imagenes en movimiento, metodo de decodificacion de imagenes en movimiento, aparato de codificacion de imagenes en movimiento, aparato de decodificacion de imágenes en movimiento y aparato de codificacion y decodificacion de imagenes en movimiento.
MX2013014752A (es) Metodo de codificacion de imagenes, metodo de decodificacion de imagenes, aparato de codificacion de imagenes, aparato de decodificacion de imagenes y aparato de codificacion y decodificacion de imagenes.
MX2013013777A (es) Metodo de codificacion de imagenes, aparato de codificacion de imagenes, metodo de decodificacion de imagenes y aparato de decodificacion de imagenes.
MX2013015086A (es) Metodo de codificacion de imagenes, metodo de decodificacion de imagenes, aparato de codificacion de imagenes, aparato de decodificacion de imagenes y aparato de codificacion y decodificacion de imagenes.

Legal Events

Date Code Title Description
GB Transfer or rights

Owner name: PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AME

FG Grant or registration