MX2014005246A - Dispositivo de decodificacion aritmetica, dispositivo de decodificacion de imagenes, dispositivo de codificacion aritmetica, dispositivo de codificacion de imagenes y metodo de decodificacion aritmetica. - Google Patents

Dispositivo de decodificacion aritmetica, dispositivo de decodificacion de imagenes, dispositivo de codificacion aritmetica, dispositivo de codificacion de imagenes y metodo de decodificacion aritmetica.

Info

Publication number
MX2014005246A
MX2014005246A MX2014005246A MX2014005246A MX2014005246A MX 2014005246 A MX2014005246 A MX 2014005246A MX 2014005246 A MX2014005246 A MX 2014005246A MX 2014005246 A MX2014005246 A MX 2014005246A MX 2014005246 A MX2014005246 A MX 2014005246A
Authority
MX
Mexico
Prior art keywords
sub
context
frequency
decoding
region
Prior art date
Application number
MX2014005246A
Other languages
English (en)
Other versions
MX338671B (es
Inventor
Tomoyuki Yamamoto
Tomohiro Ikai
Yukinobu Yasugi
Takeshi Tsukuba
Original Assignee
Sharp Kk
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 Sharp Kk filed Critical Sharp Kk
Publication of MX2014005246A publication Critical patent/MX2014005246A/es
Publication of MX338671B publication Critical patent/MX338671B/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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/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/172Methods 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 picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/436Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation using parallelised computational arrangements

Landscapes

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

Abstract

La presente invención reduce emisión mientras mantiene alta eficiencia de codificación. Este dispositivo de decodificación aritmética está provisto con un medio de decodificación de sintaxis para decodificar cada una de al menos una primera sintaxis y una segunda sintaxis, que especifican coeficientes de transformación, por decodificación aritmética que usa un contexto y decodificación aritmética que no usa el contexto. El medio de decodificación de sintaxis al menos incluye: no decodificar la primera sintaxis, y decodificar la segunda sintaxis por decodificación aritmética que no usa el contexto; y decodificar la primera sintaxis por decodificación aritmética que usa el contexto, y decodificar la segunda sintaxis por decodificación aritmética que no usa el contexto.

Description

DISPOSITIVO DE DECODIFICACION ARITMETICA, DISPOSITIVO DE DECODIFICACION DE IMAGENES, DISPOSITIVO DE CODIFICACION ARITMETICA, DISPOSITIVO DE CODIFICACION DE IMAGENES Y METODO DE DECODIFICACION ARITMETICA Campo de la Invención La presente invención se refiere a un dispositivo de decodificación aritmética para decodificar datos codificados que han sido codificados aritméticamente, y a un dispositivo de decodificación de imágenes que incluye el dispositivo de decodificación aritmética. La presente invención se refiere además a un dispositivo de codificación aritmética para generar datos codificados que han sido codificados aritméticamente, y a un dispositivo de codificación de imágenes que incluye el dispositivo de codificación aritmética. La presente invención se refiere además¦ a un método de decodificación aritmética para decodificar datos codificados que han sido codificados aritméticamente .
Antecedentes de la Invención Los dispositivos de codificación de video (dispositivos de codificación de imágenes) para codificar imágenes en movimiento para generar datos codificados, y dispositivos de decodificación de video (dispositivos de decodificación de imágenes) para decodificar los datos Ref. 247969 codificados para generar imágenes decodificadas se usan para transmisión o grabación eficientes de imágenes en movimiento.
Ejemplos específicos de esquemas de codificación de video incluyen esquemas de codificación de video en H .264/MPEG-4.AVC, esquemas implementados en software KTA, que es un codee para desarrollo conjunto en VCEG (Grupo de Expertos en Codificación de Video) , esquemas implementados en software TMuC (Modelo de Prueba bajo Consideración) , y esquemas propuestos en HEVC (siglas en inglés para Codificación de Video de Alta Eficiencia) , que es un codee sucesor de H.264/MPEG-4.AVC (NPL 1).
En estos esquemas de codificación de video, imágenes (ilustraciones) que forman una imagen en movimiento se manejan usando una estructura jerárquica que está compuesta de segmentos obtenidos al dividir cada imagen, unidades de codificación obtenidas al dividir cada segmento, y bloques y divisiones obtenidos al dividir cada unidad de codificación. Las imágenes (ilustraciones) son generalmente codificadas/decodificadas sobre una base de bloque por bloque .
Estos esquemas de codificación incluyen generalmente la generación de una imagen de predicción con base en una imagen decodificada localmente obtenida al codificar y decodificar una imagen de entrada, y codificar coeficientes de transformación obtenidos al llevar a cabo una transformación de frecuencia tal como una transformación DCT (siglas en inglés para Transformación de Coseno Discreta) en una imagen de diferencia (también llamada una "imagen residual" o un "residuo de predicción") entre la imagen de predicción y la imagen de entrada sobre una base de bloque por bloque .
Los sistemas de codificación específicos conocidos para coeficientes de transformación incluyen codificación de longitud variable adaptiva a base de contextos (CAVLC, por sus siglas en inglés) y codificación aritmética binaria adaptiva a base de contextos (CABAC, por sus siglas en inglés) .
En CALVC, los coeficientes de t ansformación se escanean secuencialmente en un vector unidimensional, y luego elementos de sintaxis que representan los valores respectivos de los coeficientes de transformación, y elementos de sintaxis que representan longitudes (también conocidos como corridas) de ceros consecutivos, y similares son codificados.
En CABAC, se lleva a cabo un proceso de binarización en varios elementos de sintaxis que representan coeficientes de transformación, y datos binarios obtenidos en el proceso de binarización son codificados aritméticamente. Los diferentes elementos de sintaxis incluyen un indicador que indica si un coeficiente de transformación es o no 0, es decir, un indicador significant_coeff_flag que indica la presencia o ausencia de un coeficiente de transformación no cero (conocido también como un indicador de presencia/ausencia del coeficiente de transformación) , y elementos de sintaxis last_significant_coeff_x y last_significant_coeff_y que especifican la posición de un último coeficiente de transformación no cero en el orden de procesamiento .
En CABAC, además, la codificación de un símbolo (un bit de datos binarios, también conocido como un bin) incluye referirse a un índice de contextos asignado al componente de frecuencia que será procesado, y llevar a cabo codificación aritmética de acuerdo con la probabilidad de ocurrencia especificada por un índice de estados de probabilidad incluido en una variable de contexto identificada por el índice de contextos. La probabilidad de ocurrencia indicada por el índice de estados de probabilidad es actualizada para cada codificación de un símbolo.
NPL 1 describe (1) división de una región de frecuencia para un bloque que tenga un tamaño comparativamente grande tal como 16x16 pixeles o 32x32 pixeles en una pluralidad de sub-regiones, (2) la asignación de un índice de contextos (conocido también como un contexto de posición) a un componente de frecuencia incluido a una sub-región del lado de baja frecuencia, el índice de contextos siendo determinado de acuerdo con la posición del componente de frecuencia en la región de frecuencia, y (3) la asignación de un índice de contextos (conocido también como un contexto de referencia adyacente) a un componente de frecuencia incluido en una sub-región del lado de alta frecuencia, el índice de contextos siendo determinado con base en el número de coeficientes de transformación no cero en componentes de frecuencia adyacentes del componente de frecuencia. Esta tecnología puede mantener el número total de contextos que serán referidos en pequeño en el lado de alta frecuencia mientras reduce la cantidad de procesamiento en el lado de baja frecuencia.
En NPL 2 , se conoce una tecnología en la cual coeficientes de transformación son codificados usando codificación llamada codificación de derivación sin el uso de contextos mientras se usa codificación aritmética (es decir, codificación que es codificación aritmética y no usa contextos) , removiendo la actualización de contextos y mejorando la emisión. Esta tecnología no usa binarización existente para codificación CABAC sino que usa binarización para codificación CAVLC.
Literatura de patente Literatura no de patente NPL 1 : WD4 : Working Draft 4 of High-Efficiency Video Coding (JCTVC-F803 Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 P3 e ISO/IEC JTC1/SC29/ G11 6th Meeting: Torino, IT, julio 14-22, 2011 (publicado el 8 de octubre de 2011) .
NPL 2: J. Lainema, K. Ugur y A. Hallapuro ("Single entropy coder for HEVC ith a high throughput binarization mode", JCTVC-G569, Geneva, noviembre de 2011 (publicado en noviembre de 2011) .
Breve Descripción de la Invención Problema técnico En la tecnología descrita en NPL 1, contextos de referencia adyacentes son usados en el lado de alta frecuencia en donde el número de componentes es grande, causando un problema de una cantidad incrementada de cálculo para el cálculo de contextos para la decodificación del indicador significant_coeff_flag que indica la presencia o ausencia de un coeficiente de transformación no cero, llevando un retraso en el proceso de decodificación.
En la tecnología descrita en NPL 2, se usa binarización para codificación CAVLC. Así, dos modos, en particular, modo de corrida y modo de nivel, son necesarios, causando un problema de un incremento en la complej idad de procesamiento. Existe otro problema en que ya que no se usan contextos, la eficiencia de codificación es significativamente baja.
La presente invención se ha hecho en vista de los anteriores problemas, y un objetivo de la presente invención es lograr un dispositivo de decodificación aritmética y un dispositivo de codificación aritmética que puedan reducir la cantidad de procesamiento, en comparación con una configuración existente, mientras logren alta eficiencia de codificación .
Solución al problema Para superar los problemas anteriores, un dispositivo de decodificación aritmética de acuerdo con un aspecto de la presente invención es un dispositivo de decodificación aritmética para decodificar aritméticamente datos codificados de un coeficiente de transformación obtenidos al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región única, incluyendo un medio de decodificación de sintaxis para decodificar cada uno de al menos un primer elemento de sintaxis y un segundo elemento de sintaxis que indican el coeficiente de transformación usando decodificación aritmética con un contexto o decodificación aritmética sin un contexto. El medio de decodificación de sintaxis se configura para llevar a cabo decodificación que incluye al menos no decodificar el primer elemento de sintaxis y decodificar el segundo elemento de sintaxis usando la decodificación aritmética sin un contexto, y decodificar el primer elemento de sintaxis usando la decodificación aritmética con un contexto y decodificar el segundo elemento de sintaxis usando la decodificación aritmética sin un contexto.
Para superar los problemas anteriores, un dispositivo de codificación aritmética para generar datos codificados de un coeficiente de transformación obtenido al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, incluyendo un medio de codificación de sintaxis para codificar aritméticamente cada uno de por lo menos un primer elemento de sintaxis y un segundo elemento de sintaxis que indican el coeficiente de transformación usando codificación aritmética con un contexto o codificación aritmética sin un contexto. El medio de codificación de sintaxis está configurado para llevar a cabo codificación que al menos incluye no codificar el primer elemento de sintaxis y codificar el segundo elemento de sintaxis usando la codificación aritmética sin un contexto, y codificar el primer elemento de sintaxis usando la codificación aritmética con un contexto y codificar el segundo elemento de sintaxis usando la codificación aritmética sin un contexto.
Para superar los problemas anteriores, un método de decodificación aritmética de acuerdo con un aspecto de la presente invención, es un método de decodificación aritmética para decodificar aritméticamente datos codificados de un coeficiente de transformación obtenido al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, al menos incluyendo una etapa de decodificar cada uno de por lo menos un primer elemento de sintaxis y un segundo elemento de sintaxis que indican el coeficiente de transformación usando decodificación aritmética con un contexto o decodificación aritmética sin un contexto. La etapa de decodificar al menos incluye no decodificar el primer elemento de sintaxis y decodificar el segundo elemento de sintaxis usando la decodificación aritmética sin un contexto, y decodificar el primer elemento de sintaxis usando la decodificación aritmética con un contexto y decodificar el segundo elemento de sintaxis usando la decodificación aritmética sin un contexto.
Efectos adecuados de la invención De acuerdo con un aspecto de la presente invención, es posible reducir la cantidad de procesamiento mientras se logra alta eficiencia de codificación.
Breve Descripción de las Figuras La figura 1 es un diagrama de bloques que ilustra una configuración de un decodificador de información residual cuantificada incluido en un dispositivo de decodificación de video de acuerdo con la modalidad de la presente invención.
Las figuras 2A, 2B, 2C y 2D incluyen diagramas que ilustran una estructura de datos de datos codificados generados por un dispositivo de codificación de video de acuerdo con la modalidad de la presente invención y decodificados por el dispositivo de decodificación de video, en donde las figuras 2A-2D son diagramas que ilustran una capa de imagen, una capa de segmento, una capa de bloque de árbol, y una capa CU, respectivamente.
Las figuras 3A, 3B, 3C, 3D, 3E, 3F, 3G, y 3H incluyen diagramas que ilustran patrones de tipos de división de PU, en donde las figuras 3A-3H representan formas de división en los tipos de división de PU de 2Nx2N, 2NxN, 2NxnU, 2NxnD, Nx2N, nLx2N, nRx2N y NxN, respectivamente.
Las figuras 4A, 4B, 4C, 4D, 4E, 4F Y 4G incluyen diagramas que ilustran esquemas de división en los cuales un nodo cuadrado se divide en nodos cuadrados y no cuadrados usando división de árboles cuádruples, en donde la figura 4A ilustra divisiones cuadradas, la figura 4B ilustra divisiones rectangulares orientadas horizontalmente, la figura 4C ilustra divisiones rectangulares orientadas verticalmente , la figura 4D ilustra las divisiones orientadas horizontalmente de un nodo orientado horizontalmente, la figura 4E ilustra divisiones cuadradas de un nodo orientado horizontalmente, la figura 4F ilustra divisiones orientadas verticalmente de un nodo orientado verticalmente, y la figura 4G ilustra divisiones cuadradas de un nodo orientado verticalmente.
La figura 5 es un diagrama que ilustra elementos de sintaxis incluidos en información residual cuantificada de datos codificados de acuerdo con la modalidad.
Las figuras 6A, 6B, 6C, 6D, 6E, 6F y 6G incluyen diagramas que ilustran la operación del decodificador de información residual cuantificada de acuerdo con la modalidad, en donde la figura 6A ilustra el orden de procesamiento en el caso de un escaneo hacia adelante, la figura 6B ilustra el orden de procesamiento en el caso de un escaneo hacia atrás, la figura 6C ejemplifica coeficientes de transformación no cero en una región de frecuencias para procesamiento, la figura 6D ejemplifica valores del elemento de sintaxis significant_coeff_flag en la región de frecuencia objetivo, la figura 6E ejemplifica valores obtenidos al decodificar elementos de sintaxis coeff_abs_level_greaterl_flag, coeff_abs_level_greater2_flag, y coeff_abs_level_minus3 en la región de frecuencia objetivo, y la figura 6F ejemplifica valores del elemento de sintaxis coeff_sign_flag en la región de frecuencia objetivo.
La figura 7 es un diagrama de bloques que ilustra una configuración del dispositivo de decodificación de video de acuerdo con la modalidad.
La figura 8 es un diagrama de bloques que ilustra una configuración de un decodificador de códigos de longitud variable incluido en el dispositivo de decodificación de video de acuerdo con la modalidad.
La figura 9 es un diagrama que ilustra una región de frecuencia dividida en cuatro sub-regiones por una unidad de clasificación de frecuencia de acuerdo con la modalidad.
Las figuras 10A, 10B y 10C incluyen diagramas que ilustran la operación de una unidad de derivación de contextos de referencia adyacentes de acuerdo con la modalidad, en donde la figura 10A ilustra un componente de frecuencia objetivo x en caso de que el orden de procesamiento sea orden de escaneo inverso, y los componentes de frecuencia de referencia el a c5 incluidos en una región de referencia establecida cerca de la posición del componente de frecuencia objetivo x, la figura 10B ilustra un componente de frecuencia objetivo x en caso de que el orden de procesamiento sea orden de escaneo hacia adelante, y componentes de frecuencia de referencia el a c5 incluidos en una región de referencia establecida cerca de la posición del componente de frecuencia objetivo x, y la figura 10C ilustra una región de referencia que se extiende fuera de una región de frecuencia objetivo.
La figura 11A es un diagrama que ilustra una región de frecuencia dividida en tres sub-regiones por la unidad de clasificación de frecuencias de acuerdo con la modalidad, y la figura 11B es un diagrama que ilustra una región de frecuencia dividida en dos sub-regiones por la unidad de clasificación de frecuencias de acuerdo con la modalidad.
La figura 12 es un diagrama de bloques que ilustra un segundo ejemplo de configuración de una unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
Las figuras 13A y 13B incluyen diagramas que ilustran el segundo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad, en donde la figura 13A ilustra una secuencia de escaneo Lx y una secuencia de escaneo Lx+1, y la figura 13B ilustra una porción en donde last_cntx se cuenta y una porción en donde last_cnty se cuenta en la secuencia de escaneo Lx y la secuencia de escaneo Lx+1.
La figura 14 es un diagrama de bloques que ilustra un tercer ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
Las figuras 15A, 15B, 15C, 15D, 15E, 15F, 15G, 15H y 151 incluyen diagramas que ilustran una región de referencia a la que hace referencia una unidad de derivación de contexto de referencia adyacente en el tercer ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad, en donde las figuras 15A-15B ejemplifican regiones de referencia en donde el número de referencias es 4, las figuras 15C-15F ejemplifican regiones de referencia en donde el número de secuencias es 3, las figuras 15G a 15H ejemplifican regiones de referencia en donde el número de referencias es 2, y la figura 151 ilustra otro ejemplo de la región de referencia en donde el número de referencias es 3.
La figura 16 es un diagrama que ilustra el tercer ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad en caso de que las sub-regiones R2 y R3 de las subregiones RO a R3 que constituyen una región de frecuencia objetivo compartan algunos contextos.
La figura 17 es un diagrama de bloques que ilustra un cuarto ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
La figura 18 es un diagrama que ilustra el cuarto ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad en caso de que las sub-regiones R2 y R3 de las sub-regiones RO a R4 que constituyen una región de frecuencia objetivo compartan algunos contextos.
La figura 19 es un diagrama de bloques que ilustra un quinto ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
La figura 20 es un diagrama que ilustra el quinto ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad, en el cual una secuencia de escaneo Lx, una secuencia de escaneo Lx+1 y una secuencia de escaneo Lx+2 son ilustradas.
Las figuras 21A, 2IB y 21C incluyen diagramas que ilustran el quinto ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad, en donde las figuras 21A-21C ejemplifican una región de referencia en donde el número de referencias es 2.
La figura 22 es un diagrama de bloques que ilustra un sexto ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
La figura 23 es un diagrama que ilustra otro ejemplo de configuración del decodificador de información residual cuantificada de acuerdo con la modalidad, en el cual una sub-región del lado de baja frecuencia R0 ' y una sub-región del lado de alta frecuencia Rl' que se obtienen al dividir una región de frecuencias son ilustradas.
Las figuras 24A y 24B ilustran otro ejemplo de configuración del decodificador de información residual cuantificada de acuerdo con la modalidad, en donde la figura 24A ilustra valores de niveles y el establecimiento de restricciones que corresponden a los mismos, y la figura 24B ilustra valores de niveles y el establecimiento de valores umbral que corresponden a los mismos.
Las figuras 25A, 25B, 25C y 25D ilustran otro ejemplo de configuración del decodificador de información residual cuantificada de acuerdo con la modalidad, en donde la figura 25A ilustra valores de índices de contexto derivados por una unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con un ejemplo comparativo, la figura 25B ilustra valores de índices de contexto ctxldx derivados por una unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración, la figura 25C ilustra un ejemplo de ctxIdxH derivado por la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración, y la figura 25D ilustra un ejemplo de ctxIdxV derivado por la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con esta ejemplo de configuración.
La figura 26 es un diagrama de bloques que ilustra una configuración del dispositivo de codificación de video de acuerdo con la modalidad.
La figura 27 es un diagrama de bloques que ilustra la configuración de un codificador de códigos de longitud variable incluido en el dispositivo de codificación de video de acuerdo con la modalidad.
La figura 28 es un diagrama de bloques que ilustra una configuración de un codificador de información residual cuantificada incluido en el codificador de códigos de longitud variable de acuerdo con la modalidad.
Las figuras 29A y 29B incluyen diagramas que ilustran una configuración de un aparato de transmisión que incluye dispositivo de codificación de video descrito arriba y una configuración de un aparato receptor que incluye el dispositivo de decodificación de video descrito arriba, en donde la figura 29A ilustra el aparato de transmisión que incluye el dispositivo de codificación de video, y la figura 29B ilustra el aparato de recepción que incluye el dispositivo de decodificación de video.
Las figuras 30A y 30B incluyen diagramas que ilustran una configuración de un aparato de grabación que incluye el dispositivo de codificación descrito arriba y una configuración de un aparato reproductor que incluye el dispositivo de decodificación de video descrito arriba, en donde la figura 30A ilustra el aparato de grabación que incluye el dispositivo de codificación de video, y la figura 30B ilustra el aparato reproductor que incluye el dispositivo de decodificación de video.
La figura 31 es un diagrama de bloques que ilustra un séptimo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
La figura 32 es un diagrama que ilustra séptimo a noveno ejemplos de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad, en donde el escaneo usando un sub-bloque como una unidad es ilustrado.
La figura 33 es un diagrama de flujo que ilustra un ejemplo del flujo de la operación en el séptimo a noveno ejemplos de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
La figura 34 es un diagrama de flujo que ilustra otro ejemplo del flujo de la operación en el séptimo a noveno ejemplos de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
La figura 35 es un diagrama que ilustra un ejemplo de una región de frecuencia dividida en sub-regiones RO , Rl y R2 usando un proceso de clasificación por una unidad de clasificación de frecuencias incluida en el séptimo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
Las figuras 36A-36C son diagramas que ilustran el séptimo a noveno ejemplos de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad, en la cual los componentes de frecuencia de referencia el a c5 incluidos en una región de referencia establecida cerca de la posición de un componente de frecuencia objetivo x son ilustrados.
La figura 37 es un diagrama de bloques que ilustra un octavo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
La figura 38 es un diagrama que ilustra un ejemplo de una región de frecuencia dividida en sub- regiones RO, Rl, R2 y R3 usando un proceso de clasificación por una unidad de clasificación de frecuencias incluida en el octavo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad .
La figura 39 es un diagrama que ilustra otro ejemplo de la región de frecuencia dividida en sub- regiones RO, Rl, R2 y R3 usando un proceso de clasificación por la unidad de clasificación de frecuencias incluida en el octavo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
La figura 40 es un diagrama de bloques que ilustra un noveno ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
La figura 41 es un diagrama que ilustra un ejemplo de una región de frecuencia dividida en sub-regiones R0, Rl, R2, R3 y R4 usando un proceso de clasificación por una unidad de clasificación de frecuencia incluida en el noveno ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
La figura 42 es un diagrama que ilustra otro ejemplo de la región de frecuencia dividida en sub-regiones R0, Rl, R2 , R3 y R4 usando un proceso de clasificación por la unidad de clasificación de frecuencias incluida en el noveno ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
La figura 43 es un diagrama de flujo que ilustra el flujo de la operación con el séptimo a noveno ejemplos de configuración de la unidad de codificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
La figura 44 es un diagrama de bloques que ilustra el séptimo ejemplo de configuración de la unidad de codificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
La figura 45 es un diagrama de bloques que ilustra el octavo ejemplo de configuración de la unidad de codificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
La figura 46 es un diagrama de bloques que ilustra el noveno ejemplo de configuración de la unidad de codificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
Las figuras 47A, 47B y 47C incluyen diagramas que ilustran un indicador de presencia/ausencia de coeficientes de sub-bloques de acuerdo con la modalidad, en donde la figura 47A ilustra un ejemplo de valores de coeficientes residuales cuantificados para un total de 256 componentes de frecuencia incluidos en un bloque de transformación de 16x16, la figura 47B ilustra un ejemplo de números de sub-bloque para identificar los sub-bloques respectivos obtenidos por subdivisión del bloque de transformación de 16x16 en sub-bloques de 4x4, y la figura 47C ilustra un ejemplo de indicadores de presencia/ausencia de coeficientes de sub-bloques para los sub-bloques respectivos cuando los coeficientes residuales cuantificados ilustrados en la figura 47A son usados.
Las figuras 48A y 48B incluyen diagramas que ilustran un proceso de clasificación llevado a cabo por una unidad de clasificación de frecuencia incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad, en donde la figura 48A ilustra la subdivisión adecuada para usarse en la decodificación de coeficientes de transformación para valor de luma, y la figura 48B ilustra subdivisión adecuada para usarse en la decodificación de coeficientes de transformación para croma .
La figura 49 es un diagrama que ilustra un proceso de derivación de índices de contexto con otro ejemplo de configuración del tercer ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad, en el cual se ilustra pseudo código que indica un proceso de derivación para derivar un índice de contextos que será asignado a una región de frecuencia incluida en cada una de las sub-regiones R0 a R3 ilustrada en la figura 48A.
La figura 50 es un diagrama que ilustra un proceso de derivación de índices de contexto llevado a cabo por la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad, en el cual se ilustra pseudo código que indica un proceso de derivación para derivar un índice de contextos que será asignado a una región de frecuencia incluida en cada una de las sub-regiones RO a R3 ilustradas en la figura 48B.
Las figuras 51A y 51B incluyen diagramas que ilustran otro ejemplo de configuración del tercer ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad, en el cual se ilustran los componentes de frecuencia de referencia el, c2 y c5 incluidos en una región de referencia establecida cerca de la posición de un componente de frecuencia objetivo x.
La figura 52 es un diagrama que ilustra un proceso de derivación de índices de contexto con otro ejemplo de configuración del octavo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad, en el cual se ilustra pseudo código que indica un proceso de derivación para derivar un índice de contextos que será asignado a una región de frecuencia incluida en cada una de las sub-regiones R0 a R3 ilustradas en la figura 48A.
La figura 53 es un diagrama que ilustra un proceso de derivación de índices de contexto con otro ejemplo de configuración del octavo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad, en el cual se ilustra pseudo código que indica un proceso de derivación para derivar un índice de contexto que será asignado a una región de frecuencia incluida en cada una de las sub-regiones RO a R3 ilustradas en la figura 48B.
La figura 54 es un diagrama que ilustra un proceso de derivación de índices de contexto con otro ejemplo de configuración del octavo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad, en el cual se ilustra el pseudo código que indica un proceso de derivación para derivar un índice de contextos que será asignado a una región de frecuencia incluida en cada una de las sub-regiones RO a R3 ilustradas en la figura 48A.
La figura 55 es un diagrama que ilustra un proceso de derivación de índices de contexto con otro ejemplo de configuración del octavo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad, en el cual se ilustra pseudo código que indica un proceso de derivación para derivar un índice de contexto que será asignado a una región de frecuencia incluida en cada una de las sub-regiones RO a R3 ilustradas en la figura 48B.
La figura 56 es un diagrama que ilustra un proceso de derivación de índices de contexto con otro ejemplo de configuración del octavo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad, en el cual se ilustra pseudo código que indica un proceso de derivación para derivar un índice de contextos que será asignado a una región de frecuencia incluida en cada una de las sub-regiones RO a R3 ilustradas en las figuras 48A y 48B.
Las figuras 57A, 57B, 57C y 57D incluyen diagramas que ilustran un proceso de derivación de índices de contexto usando un ejemplo de configuración en el cual la remoción de retraso de actualización de contexto se toma en cuenta en el octavo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
Las figuras 58A, 58B 58C y 58D incluyen diagramas que ilustran un proceso de derivación de índices de contexto usando un ejemplo de configuración en el cual la remoción de retraso de actualización de contexto se toma en cuenta en el octavo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad.
La figura 59 es un diagrama que ilustra un proceso de derivación de índices de contexto usando un ejemplo de configuración en el cual la remoción de retraso de actualización de contextos se toma en cuenta en el octavo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad, en el cual se ilustra un pseudo código que indica un proceso de derivación para derivar un índice de contextos que será asignado a una región de frecuencia incluida en cada una de las sub-regiones RO a R3 ilustradas en las figuras 48A-48B.
La figura 60 es un diagrama que ilustra un proceso de derivación de índices de contexto usando un ejemplo de configuración en el cual la remoción de retraso de actualización de contexto se toma en cuenta en el octavo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la modalidad, en el cual se ilustra pseudo código que indica un proceso de derivación para derivar un índice de contexto que será asignado a una región de frecuencia incluida en cada una de las sub-regiones RO a R3 ilustradas en las figuras 48A-48B.
La figura 61 es un diagrama de bloques que ilustra una configuración de un decodificador de información residual cuantificada incluido en un dispositivo de decodificación de video 3 de acuerdo con la modalidad de la presente invención.
La figura 62 es un diagrama que ilustra una primera porción de una tabla de sintaxis que indica elementos de sintaxis incluidos en información residual cuantificada de datos codificados de la técnica relacionada.
La figura 63 es un diagrama que ilustra una segunda porción de la tabla de sintaxis que indica los elementos de sintaxis incluidos en la información residual cuantificada de los datos codificados de la técnica relacionada.
La figura 64 es un diagrama que ilustra una primera porción de una tabla de sintaxis que indica elementos de sintaxis incluidos en información residual cuantificada de datos codificados de acuerdo con la modalidad.
La figura 65 es un diagrama que ilustra una configuración normal en una segunda porción de la tabla de sintaxis que indica los elementos de sintaxis incluidos en la información residual cuantificada de los datos codificados de acuerdo con la modalidad.
La figura 66 es un diagrama que ilustra una primera configuración de simplificación en la segunda porción de la tabla de sintaxis que indica la sintaxis incluida en la información residual cuantificada de los datos codificados de acuerdo con la modalidad.
La figura 67 es un diagrama que ilustra una segunda configuración de simplificación en la segunda porción de la tabla de sintaxis que indica la sintaxis incluida en la información residual cuantificada de los datos codificados de acuerdo con la modalidad.
La figura 68 es un diagrama que ilustra una tercera configuración de simplificación en la segunda porción de la tabla de sintaxis que indica la sintaxis incluida en la información residual cuantificada de los datos codificados de acuerdo con la modalidad.
La figura 69 es un diagrama que ilustra una cuarta configuración de simplificación en la segunda porción de la tabla de sintaxis que indica la sintaxis incluida en la información residual cuantificada de los datos codificados de acuerdo con la modalidad.
La figura 70 es un diagrama que ilustra una quinta configuración de simplificación en la segunda porción de la tabla de sintaxis que indica la sintaxis incluida en la información residual cuantificada de los datos codificados de acuerdo con la modalidad.
La figura 71 es un diagrama que ilustra una estructura de sintaxis que indica un elemento de sintaxis coeff_abs_minus incluido en la información residual cuantificada de datos codificados de acuerdo con la modalidad.
La figura 72 es un diagrama de flujo que ilustra un proceso de derivación para un indicador de proceso simplificado cabac_lowcomp_flag de acuerdo con la modalidad.
Las figuras 73A y 73B son diagramas de flujo que ilustra un proceso detallado del proceso de derivación para el indicador de proceso simplificado cabac_lowcomp_flag de acuerdo con la modalidad.
La figura 74 es un diagrama de bloques que ilustra una configuración de un codificador de información residual cuantificada incluido en un dispositivo de codificación de video 2 de acuerdo con la modalidad de la presente invención.
La figura 75 es un diagrama de bloques que ilustra una configuración de una unidad de codificación de indicadores de presencia/ausencia de coeficientes Y224 de acuerdo con la modalidad.
Descripción Detallada de la Invención Una modalidad de un dispositivo de decodificación y un dispositivo de codificación de acuerdo con la presente invención se describirá en adelante con referencia a las figuras. Un dispositivo de decodificación de acuerdo con esta modalidad se configura para decodificar una imagen en movimiento o video de datos codificados. Así, en lo sucesivo, este dispositivo de decodificación es llamado un "dispositivo de decodificación de video". Además, un dispositivo de codificación de acuerdo con esta modalidad se configura para codificar una imagen en movimiento o video para generar datos codificados. De esta manera, en lo sucesivo, este dispositivo de codificación es llamado un "dispositivo de codificación de video" .
Sin embargo, el alcance al cual la presente invención se aplica no está limitado a aquél descrito arriba. Es decir, como también será aparente a partir de la siguiente descripción, las características de la presente invención se lograrán sin asumir una pluralidad de cuadros. Es decir, la presente invención es aplicable a dispositivos de decodificación generales y dispositivos de codificación generales no obstante de si son imágenes en movimiento o imágenes fijas objetivo.
Configuración de datos codificados #1 Un ejemplo de configuración de datos codificados #1 generados por un dispositivo de codificación de video 2 y decodificados por un dispositivo de decodificación de video 1 se describirá con referencia a la figura 2. Los datos codificados #1 incluyen, a manera de ejemplo, una secuencia y una pluralidad de imágenes que forman la secuencia.
En la capa de secuencia, un conjunto de datos referido por el dispositivo de decodificación de video 1 para decodificar la secuencia que será procesada es definido. La capa de secuencia incluye un conjunto de parámetros de secuencia SPS, un conjunto de parámetros de imagen PPS y una imagen PICT.
Una estructura de capas que incluye la capa de imagen y capas debajo de la capa de imagen en los datos codificados #1 se ilustra en la figura 2. Las figuras 2A-2D son diagramas que ilustran, respectivamente, una capa de imagen que define una imagen PICT, una capa de segmento que define un segmento S, una capa de bloque de árbol que define un bloque de árbol TBLK, y una capa de CU que define una unidad de codificación (CU) incluida en el bloque de árbol TBLK.
Capa de imagen La capa de imagen define un conjunto de datos al que hace referencia el dispositivo de decodificación de video 1 para decodificar la imagen PICT que será procesada (en adelante también denominada la imagen objetivo) . Como se ilustra en la figura 2A, la imagen PICT incluye un encabezado de imagen PH y segmentos Si a SNs (en donde NS es el número total de segmentos incluidos en la imagen PICT) .
En lo sucesivo, se pueden omitir subíndices si no hay necesidad de distinguir los segmentos Si a SNS unos de otros. Lo anterior aplica similarmente a otros datos con subíndices entre los datos incluidos en los datos codificados #1, descritos abajo.
El encabezado de imagen PH incluye un grupo de parámetros de codificación al que hace referencia el dispositivo de decodificación de video 1 para determinar un método de decodificación para la imagen objetivo. Por ejemplo, información de modo de codificación (entropy_coding_mode_flag) que indica un modo de codificación de longitud variable usado por el dispositivo de codificación de video 2 para codificación es un ejemplo de un parámetro de codificación incluido en el encabezado de imagen PH.
Si entropy_coding_mode_flag es igual a 0, la imagen PICT es una imagen codificada usando CAVLC (Codificación de Longitud Variable Adaptiva a base de Contextos) . Si entropy_coding_mode_flag es igual a l, la imagen PICT es una imagen codificada usando CABAC (Codificación Aritmética Binaria Adaptiva a base de Contextos) .
Capa de segmento La capa de segmento define un conjunto de datos al que hace referencia el dispositivo de decodificación de video 1 para decodificar el segmento S que será procesado (también denominado el segmento objetivo) . Como se ilustra en la figura 2B, el segmento S incluye un encabezado de segmento SH y bloques de árbol TBLKi a TBLKNC (en donde NC es el número total de bloques de árbol incluidos en el segmento S) .
El encabezado de segmento SH incluye un grupo de parámetros de codificación al que hace referencia el dispositivo de decodificación de video 1 para determinar un método de decodificación para el segmento objetivo. Información que especifica tipo de segmento (slice_type) que especifica un tipo de segmento es un ejemplo de un parámetro de codificación incluido en el encabezado de segmento SH.
Los tipos de segmento que pueden ser especificados por la información de especificación de tipo de segmento incluyen (1) segmento I que usa sólo intra predicción para codificación, (2) segmento P que usa uni -predicción o intra predicción para codificación, y (3) segmento B que usa uni-predicción, bi-predicción o intra predicción para codificación.
El encabezado de segmento SH incluye además un parámetro de filtro FP al que hace referencia un filtro de circuito incluido en el dispositivo de decodificación de video 1. El parámetro de filtro FP incluye un grupo de coeficientes de filtro. El grupo de coeficientes de filtro incluye (1) información que especifica número de tomas que especifique número de tomas del filtro, (2) coeficientes de filtro a0 a aNT-i (en donde NT es el número total de coeficientes de filtro incluidos en el grupo de coeficientes de filtro), y (3) un desplazamiento o.
Capa de bloque de árbol La capa de bloque de árbol define un conjunto de datos al que hace referencia el dispositivo de decodificación de video 1 para decodificar el bloque de árbol TBLK que será procesado (en adelante también denominado el bloque de árbol objetivo) .
El bloque de árbol TBLK incluye un encabezado de bloque de árbol RBLKH y elementos de información de unidad de codificación CUi a CUNL (en donde NL es el número total de elementos de información de unidad de codificación incluidos en el bloque de árbol TBLK) . La siguiente es una descripción de, primero, la relación entre bloque de árbol TBLK y la información de unidad de codificación CU.
El bloque de árbol TBLK es dividido en unidades para especificar tamaños de bloque para los procesos respectivos de intra predicción o inter predicción, y transformación.
Las unidades del bloque de árbol TBLK se obtienen por división de árboles cuádruples recursiva. La estructura de árbol obtenida por división de árboles cuádruples recursiva es en adelante denominada un árbol de codificación.
En lo sucesivo, las unidades que correspondan a nodos de hoja que son puntos finales en un árbol de codificación son denominadas nodos de codificación. Ya que un nodo de codificación es la unidad básica de un proceso de codificación, un nodo de codificación es en adelante también denominado una unidad de codificación (CU) .
Es decir, los elementos de información de unidad de codificación CUi a CUNL son elementos de información que corresponden a los nodos de codificación (unidades de codificación) obtenidos por la división de árboles cuádruples recursiva del bloque de árbol TBLK.
La raíz del árbol de codificación está asociada con el bloque de árbol TBLK. En otras palabras, el bloque de árbol TBLK está asociado con el nodo más alto de una estructura de árbol para división de árboles cuádruples que incluye recursivamente una pluralidad de nodos de codificación.
El tamaño de cada nodo de codificación individual es la mitad, tanto horizontal como verticalmente , del tamaño de un nodo de codificación al cual pertenece directamente el nodo de codificación individual (es decir, la unidad en el nodo que está una capa arriba del nodo de codificación individual) .
El tamaño que cada nodo de codificación individual puede adoptar depende de información de especificación de tamaño y la profundidad jerárquica máxima del nodo de codificación individual, que se incluyen en el conjunto de parámetros de secuencia SPS en los datos codificados #1. Por ejemplo, si el bloque de árbol TBLK tiene un tamaño de 64x64 pixeles y tiene una profundidad jerárquica máxima de 3, cada uno de los nodos de codificación en las capas en o debajo del bloque de árbol TBLK puede tener cualquiera de los siguientes cuatro tamaños: 64x64 pixeles, 32x32 pixeles, 16x16 pixeles, y 8x8 pixeles.
Encabezado de bloque de árbol El encabezado de bloque de árbol TBLKH incluye parámetros de codificación a los que hace referencia el dispositivo de decodificación de video 1 para determinar un método de decodificación para el bloque de árbol objetivo. Específicamente, como se ilustra en la figura 2C, el encabezado de bloque de árbol TBLKH incluye información de división de bloque de árbol SP_TBLK que especifica un patrón en el cual el bloque de árbol objetivo se divide en CUs individuales, y una diferencia de parámetros de cuantificación Aqp (qp_delta) que especifica un tamaño de etapa de cuantificación .
La información de división de bloques de árbol SP_TBLK es información que indica un árbol de codificación para dividir un bloque de árbol. Específicamente, la información de división de bloque de árbol SP_TBLK es información que especifica la forma y tamaño de las CUs incluidas en el bloque de árbol objetivo y que especifica además la posición de las CUs en el bloque de árbol objetivo.
La información de división de bloques de árbol SP_TBLK puede no necesariamente incluir explícitamente la forma o tamaño de las CUs. Por ejemplo, la información de división de bloque de árbol SP_TBLK puede incluir un conjunto de indicadores (Split_coding_unit_flag) que indiquen si se divide o no el bloque de árbol objetivo completo o una sub-región de un bloque de árbol en cuatro secciones. En este caso, la forma y tamaño de las CUs pueden identificarse usando el tamaño y forma del bloque de árbol en combinación con el conjunto de indicadores.
La diferencia de parámetro de cuantificación Aqp es una diferencia qp-qp' entre un parámetro de cuantificación qp en el bloque de árbol objetivo y un parámetro de cuantificación qp' en el bloque de árbol que ha sido codificado inmediatamente antes que el bloque de árbol objetivo.
Capa de CU La capa de CU define un conjunto de datos al que hace referencia el dispositivo de decodificación de video 1 para decodificar la CU que será procesada (en adelante también denominada la CU objetivo) .
Antes de proceder a la descripción del contenido específico de los datos incluidos en la información de unidad de codificación de CU, se dará una descripción de la estructura de árbol de datos incluidos en una CU. Un nodo de codificación es un nodo en la raíz de un árbol de predicción (PT, por sus siglas en inglés) y un árbol de transformación (TT, por sus siglas en inglés) . La siguiente es una descripción del árbol de predicción y el árbol de transformación.
En el árbol de predicción, el nodo de codificación se divide en uno o una pluralidad de bloques de predicción, y la posición y tamaño de los bloques de predicción individuales son especificados. En otras palabras, los bloques de predicción son una o una pluralidad de regiones no superpuestas que forman el nodo de codificación. El árbol de predicción incluye uno o una pluralidad de bloques de predicción obtenidos por el procedimiento de división descrito arriba.
Un proceso de predicción se lleva a cabo para cada bloque de predicción. En lo sucesivo, un bloque de predicción, el cual es la unidad de predicción, también es denominado una unidad de predicción (PU) .
Existen aproximadamente dos tipos de división para un árbol de predicción, en particular, intra predicción e ínter predicción.
Los métodos de división para intra predicción incluyen 2Nx2N (el mismo tamaño que aquél del nodo de codificación) y Nx .
Los métodos de división para inter predicción incluyen 2Nx2N (el mismo tamaño que aquél con del nodo de codificación), 2Nx , Nx2N, NxN y similares.
En el árbol de transformación, además, el nodo de codificación es dividido en uno o una pluralidad de bloques de transformación, y la posición y tamaño de los bloques de transformación individuales son especificados. En otras palabras, los bloques de transformación son uno o una pluralidad de regiones no superpuestas que forman un nodo de codificación. El árbol de transformación incluye uno o una pluralidad de bloques de transformación obtenidos por el procedimiento de división descrito arriba.
Un proceso de transformación se lleva a cabo para cada bloque de transformación. En lo sucesivo, un bloque de transformación, el cual es la unidad de transformación, también será denominado una unidad de t ansformación (TU) .
Estructura de datos de información de unidades de codificación A continuación se describirá con referencia a la figura 2D, el contenido específico de los datos incluidos en la información de unidades de codificación CU con referencia a la figura 2D. Como se ilustra en la figura 2D, específicamente, la información de unidad de codificación CU incluye un indicador de modo de salto (skip flag) SKIIP, información de tipo de predicción de CU Pred_type, información de PT PTI e información de TT TTI .
Indicador de salto El indicador de salto SKIP es un indicador que indica si un modo de salto se aplica o no a la CU objetivo. Si el valor del indicador de salto SKIP es igual a l, es decir, si un modo de salto se aplica a la CU objetivo, se omite la información de PT PTI en la información de unidad de codificación CU. El indicador de salto SKIP se omite en los segmentos I .
Información de tipo de predicción de CU La información de tipo de predicción de CU Pred_type incluye información de esquema de predicción de CU PredMode e información de tipo de división de PU PartMode. La información de tipo de predicción de CU puede ser llamada también información de tipo de predicción.
La información de esquema de predicción de CU PredMode especifica cuál de intra predicción (intra CU) e ínter predicción (inter CU) usar como un método de generación de imágenes por predicción o cada una de las PUs incluidas en el CU objetivo. En lo sucesivo, los tipos de salto, intra predicción e inter predicción en la CU objetivo son denominados modos de predicción de CU.
La información de tipo de división de PU PartMode especifica un tipo de división de PU que es un patrón en el cual la unidad de codificación (CU) objetivo se divide en PUs individuales. La división de la unidad de codificación objetivo (CU) en PUs individuales de la manera descrita arriba de acuerdo con el tipo de división de PU es en adelante denominada división de PU.
La información de tipo de división de PU PartMode puede ser, a manera de ejemplo, un índice que indique un tipo de patrón de división de PU, o puede especificar la forma y tamaño de las PUs incluidas en el árbol de predicción de objetivo y también especificar la posición de las PUs en el árbol de predicción de objetivos.
Los tipos de división de PU seleccionables difieren dependiendo del esquema de predicción de CU y del tamaño de la CU. Además, los tipos de división de PU seleccionables difieren dependiendo de inter predicción o intra predicción. Los detalles de los tipos de división de PU se describirán abajo.
En el caso de segmentos no I, el valor de la información de tipo de división de PU PartMode y el valor de la información de tipo de división PartMode pueden identificarse por un índice (cu_split_pred_part_mode) que especifique un método combinado de división de bloques de árbol, esquema de predicción y división de CU.
Información de PT La información de PT PTI es información que se refiere a una PT incluida en la CU objetivo. En otras palabras, la información de PT PTI es un conjunto de elementos de información que cada uno tienen que ver con una o una pluralidad de PUs incluidas en la PT. Como se describió arriba, ya que una imagen de predicción se genera sobre una base por PU, la información de PT PTI es referida por el dispositivo de decodificación de video 1 para generar una imagen de predicción. Como se ilustra en la figura 2D, la información de PT PTI incluye elementos de información de PU PUIi a PUINP (en donde NP es el número total de PUs incluidas en la PT objetivo) que cada uno incluyen información de predicción y similares sobre una de las PUs.
La información de predicción PUI incluye un parámetro de inter predicción PP_Intra o un parámetro de ínter predicción PP_Inter de acuerdo con el método de predicción la información de tipo de predicción Pred_mode que especifica. En lo sucesivo, una PU a la cual se aplica intra predicción es llamada también una intra PU, y una PU a la cual se aplica inter predicción es también llamada una inter PU.
El parámetro de inter predicción PP_Inter incluye parámetros de codificación referidos por el dispositivo de decodificación de video 1 para generar una imagen de inter predicción usando inter predicción.
Ejemplos del parámetro de inter predicción PP_Inter incluyen un indicador de fusión (merge_flag) , un índice de fusión (merge_idx) , un índice de predictores de vectores de movimiento (mvp_idx) , un índice de imágenes de referencia (ref_idx) , un indicador de inter predicción ( inter_pred_flag) y una diferencia de vector de movimiento (mvd) .
El parámetro de intra predicción PP_Intra incluye parámetros de codificación referidos por el dispositivo de decodificación de video 1 para generar una imagen de intra predicción usando intra predicción.
Ejemplos del parámetro de intra predicción PP_Intra incluyen un indicador de modo de predicción estimado, un índice de modos de predicción estimado y un índice de modos de predicción restante.
El parámetro de intra predicción puede incluir un indicador de modo PCM que indique si se usa o no un modo PCM. Si el indicador de modo PCM ha sido codificado y el indicador de modo PCM indica el uso del modo PCM, los procesos de predicción (intra) , transformación y codificación por entropía son omitidos.
Información de TT La información de TT TTI es información que se refiere a una TTI incluida en una CU. En otras palabras, la información de TT TTI es un conjunto de elementos de información que cada uno tienen que ver con una o una pluralidad de TUs incluidas en la TT, y es referenciada por el dispositivo de decodificación de video 1 para decodificar datos residuales. En lo sucesivo, una TU también puede ser referida como un bloque.
Como se ilustra en la figura 2D, la información de TT TTI incluye información de división de TT SP_TU que especifica un patrón en el cual la CU objetivo se divide en bloques de transformación individuales, y elementos de información de TU TUIi a TUINT (en donde NT es el número total de bloques incluidos en la CU objetivo) .
Específicamente, la información de división de TT SP_TU es información para determinar la forma y tamaño de las TUs incluidas en la CU objetivo y determinar también la posición de las TUs en la CU objetivo. La información de división de TT SP_TU puede estar compuesta de, por ejemplo, información (split_transform_flag) que indique si la división del nodo de interés se hace o no e información (trafoDepth) que indique la profundidad de división.
Por ejemplo, si el tamaño de la CU es 64x64, cada una de las TUs obtenidas por división puede tener un tamaño en el intervalo de 32x32 pixeles a 4x4 pixeles.
Los elementos de información de TU TUIi a TUINT son elementos de información separados que cada uno se refieren a una o una pluralidad de TUs incluidas en la ??. Por ejemplo, la información de TU TUI incluye residuos de predicción cuantificados (también denominados residuos cuantificados) .
Cada residuo de predicción cuantificado son datos codificados generados por el dispositivo de codificación de video 2 que lleva a cabo los procesos 1 a 3 en el bloque objetivo, que es un bloque que será procesado.
Proceso 1: Aplicación de una transformación de frecuencia (por ejemplo, una transformada DCT (Transformada de Coseno Discreta) ) a un residuo de predicción obtenido al restar una imagen de predicción de una imagen que será codificada; Proceso 2 : cuantificacion de un coeficiente de transformación obtenido por el proceso 1; y Proceso 3 : codificación de longitud variable del coeficiente de transformación cuantificado en el proceso 2.
El parámetro de cuantificación qp descrito arriba representa el tamaño de la etapa de cuantificación QP que se usa cuando el dispositivo de codificación de video 2 cuantifica un coeficiente de transformación (QP = 2qp/6) .
Tipo de división de PU Dado que el tamaño de la CU objetivo es 2Nx2N pixeles, el tipo de división de PU tiene ocho patrones en total como sigue: cuatro divisiones simétricas, en particular, 2Nx2N pixeles, 2Nx pixeles, Nx2N pixeles y Nx pixeles, y cuatro divisiones asimétricas, en particular, 2NxnU pixeles, 2NxnD pixeles, nLx2N pixeles y nRx2N pixeles. Nótese que N = 2m (en donde m es un entero arbitrario mayor que o igual a 1) . En lo sucesivo, las regiones obtenidas al dividir la CU objetivo también son denominadas divisiones.
Las figuras 3A-3H ilustran posiciones específicas de los límites de divisiones de PU en CUs para los tipos de división respectivos.
La figura 3A ilustra el tipo de división de PU de 2Nx2N en el cual la CU no es dividida. Las figuras 3B, 3C y 3D ilustran la forma de divisiones para los tipos de división de PU de 2NxN, 2NxnU y 2NxnD, respectivamente. Las figuras 3E, 3F y 3G ilustran la forma de divisiones para los tipos de división de PU de Nx2N, nLx2N y nRx2N, respectivamente. La figura 3H ilustra la forma de divisiones para el tipo de división de PU de NxN.
Los tipos de división de PU en las figuras 3A-3H son también denominados división cuadrada, la cual se basa en las formas de las divisiones. Los tipos de división de PU en las figuras 3B a 3G también son denominados división no cuadrada .
En las figuras 3A-3H, los números asignados a regiones individuales representan los números de identificación de las regiones, y las regiones son procesadas en orden ascendente de sus números de identificación. Es decir, los números de identificación representan el orden de escaneo de las regiones .
Tipo de división para inter predicción De los ocho tipos de división descritos arriba, siete tipos, que no son NxN (figura 3H) , son definidos para inter PUs . Las cuatro divisiones asimétricas descritas arriba también pueden ser denominadas AMP (Divisiones de Movimiento Asimétricas) .
El valor específico de N se especifica por el tamaño de la CU a la cual pertenece la PU correspondiente, y los valores específicos de un, nD, nL y n se determinan de acuerdo con el valor de N. por ejemplo, una inter CU que tenga 128x128 pixeles puede ser dividida en una inter PU que tenga 128x128 pixeles, o en inter PUs que tengan 128x64 pixeles, 64x128 pixeles, 64x64 pixeles, 128x32 pixeles, 128x96 pixeles, 32x128 pixeles o 96x128 pixeles.
Tipo de división para intra predicción Los siguientes dos patrones de división se definen para intra PUs: el patrón de división de 2Nx2N en la cual la CU no es dividida, la propia CU objetivo es manejada como una PU, y el patrón de NxN en el cual la CU objetivo se divide simétricamente en cuatro PUs .
Así, en referencia a los ejemplos ilustrados en la figura 3, una intra PU puede tener cualquiera de los patrones de división en las figuras 3A-3H.
Por ejemplo, una intra CU que tenga 128x128 pixeles puede ser dividida en una intra PU que tenga 128x128 pixeles o intra PUs que tengan 64x64 pixeles.
Tipo de división de TU Ahora se describirá un tipo de división de TU con referencia a la figura 4. Un patrón de división de TU se determina por el tamaño de la CU, la profundidad de división (trafoDepth) , y el tipo de división de PU de la PU objetivo.
Los patrones de división de TU incluyen divisiones de árboles cuádruples en cuadro y divisiones de árboles cuádruples no cuadradas .
Las figuras 4A-4C ilustran esquemas de división en los cuales un nodo cuadrado se divide en nodos cuadrados o no cuadrados usando división de árboles cuádruples. Más específicamente, la figura 4A ilustra un esquema de división en el cual un nodo cuadrado se divide en nodos cuadrados usando división de árboles cuádruples. La figura 4B ilustra un esquema de división en el cual un nodo cuadrado se divide en nodos rectangulares orientados horizontalmente usando división de árboles cuádruples. La figura 4C ilustra un esquema de división en el cual un nodo cuadrado es dividido en nodos rectangulares de orientación vertical usando división de árboles cuádruples.
Además, las figuras 4D a 4G ilustran esquemas no de división en los cuales un nodo no cuadrado se divide en nodos cuadrados o no cuadrados usando división de árboles cuádruples. Más específicamente, la figura 4D ilustra un esquema de división en el cual un nodo rectangular orientado horizontalmente es dividido en nodos rectangulares orientados horizontalmente usando división de árboles cuádruples. La figura 4E ilustra un esquema de división en el cual un nodo rectangular orientado horizontalmente se divide en nodos cuadrados usando división de árboles cuádruples. La figura 4F ilustra un esquema de división en el cual un nodo rectangular orientado verticalmente es dividido en nodos rectangulares orientados verticalmente usando división de árboles cuádruples. La figura 4G ilustra un esquema de división en el cual un nodo rectangular de orientación vertical es dividido en nodos cuadrados usando división de árboles cuádruples.
Configuración de información residual cuantificada QD La figura 5 es una tabla que indica elementos de sintaxis incluidos en información residual cuantificada QD (indicada por residual_coding_cabac ( ) en la figura 5).
Como se ilustra en la figura 5, la información residual cuantificada QD incluye elementos de sintaxis last_significant_coeff_x, last_significant_coeff_y, significant_coeff_flag, coeff_abs_level_greaterl_flag, coeff_abs_level_greater2_flag, coeff_sign_flag y coeff_abs_level_minus3.
Los elementos de sintaxis incluidos en la información residual cuantificada QD han sido codificados usando codificación aritmética binaria adaptiva a base de contexto (CABAC) .
En lo sucesivo, el procedimiento de decodificación para los elementos de sintaxis individuales será descrito con referencia a la figura 5 y figuras 6A-6G, tomando un ejemplo de un tamaño de bloque de 8x8 pixeles . En las figuras 6A a 6G, el eje horizontal representa frecuencias horizontales xC (0 < xC < 7) , y el eje vertical representa frecuencias verticales yC (0 < yC < 7) . En la siguiente descripción, entre las sub-regiones incluidas en la región de frecuencia, una sub-región identificada por una frecuencia horizontal xC y una frecuencia vertical yC también es llamada un componente de frecuencia (xC, yC) . Además, un coeficiente de transformación para el componente de frecuencia (xC, yC) también es indicado por Coeff (xC, yC) . El coeficiente de transformación Coeff (0, 0) representa el componente de DC, y otros coeficientes de transformación representan componentes no de DC. (xC, yC) puede ser representado aquí por (u, v) , (uiPosX, uiPosY) , o similares.
Las figuras 6A y 6B son diagramas que ilustran un ejemplo de orden de escaneo en una región de frecuencia FR que incluye 8x8 componentes de frecuencia.
En el ejemplo ilustrado en la figura 6A, el escaneo se lleva a cabo secuencialmente a partir del lado de baja frecuencia (izquierda superior en la figura 6A) hasta el lado de alta frecuencia (derecha inferior en la figura 6A) . En el ejemplo ilustrado en la figura 6A, además, el escaneo se lleva a cabo de acuerdo con las flechas indicadas en la región de frecuencia FR. El orden de escaneo ilustrado en la figura 6A también es llamado un escaneo hacia adelante.
Por otro lado, en el ejemplo ilustrado en la figura 6B, el escaneo se lleva a cabo secuencialmente desde el lado de alta frecuencia (derecha inferior en la figura 6B) hasta el lado de baja frecuencia (izquierda superior en la figura 6B) . En el ejemplo ilustrado en la figura 6B, además, el escaneo se lleva a cabo de acuerdo con flechas indicadas en la región de frecuencia FR. El orden de escaneo ilustrado en la figura 6B es también llamado escaneo inverso.
La figura 6C es un diagrama que ejemplifica coeficientes de transformación que no son iguales a 0 (coeficientes de transformación no cero) en una región de frecuencia que incluye 8x8 componentes de frecuencia.
Los elementos de sintaxis last significant_coeff_x and last_significant_coeff_y son elementos de sintaxis que indican la posición del último coeficiente de transformación no cero en la dirección de escaneo hacia adelante. En el ejemplo ilustrado en la figura 6C, last_significant_coeff_x = 6 y last_significant_coeff_y = 0.
El elemento de sintaxis significant_coeff_flag es un elemento de sintaxis que indica la presencia o ausencia de un coeficiente de transformación no cero para cada componente de frecuencia en la dirección de escaneo inverso con respecto a un coeficiente de transformación no cero como el origen. La figura 6D ilustra los valores del elemento de sintaxis significant_coeff_flag cuando los coeficientes de transformación que serán decodificados son aquellos ilustrados en la figura 6C. Como se ilustra en la figura 6D, el elemento de sintaxis significant_coeff_flag es un indicador con 0 si el coeficiente de transformación correspondiente es igual a 0 o con 1 si el coeficiente de transformación correspondiente no es igual a 0, para cada uno de xC y yC. El elemento de sintaxis significant_coeff_flag es también llamado un indicador de presencia/ausencia de coeficiente de transformación.
El elemento de sintaxis coeff_abs_level_greaterl_flag es un indicador que indica ei el valor absoluto del coeficiente de transformación correspondiente excede o no 1, y es codificado para un componente de frecuencia con el valor del elemento de sintaxis significant_coeff_flag siendo igual a l. Si el valor absoluto de un coeficiente de transformación excede 1, el valor de coeff_abs_level_greaterl_flag es igual a 1, y, de otro modo, el valor de coeff_abs_level_greaterl_flag es igual a 0.
El elemento de sintaxis coeff_abs_level_greater2_flag es un indicador que indica si el valor absoluto del coeficiente de transformación correspondiente excede o no 2 , y es codificado cuando el valor de coeff_abs_level_greaterl_flag es igual a 1. Si el valor absoluto de un coeficiente de transformación excede 2, el valor de coeff_abs_level_greater2_flag es igual a l, y, de otro modo, el valor de coeff_abs_level_greater2_flag es igual a 0.
El elemento de sintaxis coeff_abs_level_minus3 es un elemento de sintaxis para especificar el valor absoluto de un coeficiente de transformación cuando el valor absoluto del coeficiente de transformación sea mayor que o igual a 3, y es codificado cuando el valor de coeff_abs_level_greater2_flag es igual a 1. El valor del elemento de sintaxis coeff_abs_level_minus3 se obtiene al restar 3 del valor absoluto de un coeficiente de transformación. Por ejemplo, coeff_abs_level_minus3 = 1 indica que el valor absoluto del coeficiente de transformación es igual a 4.
La figura 6E ilustra los valores absolutos de coeficientes de transformación individuales obtenidos al decodificar los elementos de sintaxis coeff_abs_level_greaterl_flag, coeff_abs_level_greater2_flag, y coeff_abs_level_minus3.
El elemento de sintaxis coeff_sign_flag es un indicador que indica el signo (positivo o negativo) del coeficiente de transformación correspondiente, y es codificado para un componente de frecuencia con el valor del elemento de sintaxis significant_coeff_flag siendo igual a 1.
La figura 6F es un diagrama que ilustra el elemento de sintaxis coeff_sign_flag cuando los coeficientes de transformación que serán decodificados son aquellos ilustrados en la figura 6C. Como se ilustra en la figura 6F, el elemento de sintaxis coeff_sign_flag es un indicador con 1 para un coeficiente de transformación positivo y con 0 para un coeficiente de transformación negativo.
Un decodificador de códigos de longitud variable 11 incluido en el dispositivo de decodificación de video 1 puede generar un coeficiente de transformación Coeff(xC, yC) para cada componente de frecuencia al decodificar los elementos de sintaxis last_significant_coeff_x, last_significant_coeff_y, significant_coeff_flag, coeff_abs_level_greaterl_flag, coeff_abs_level_greater2_flag, coeff_sign_flag, y coeff abs level minus3.
Un conjunto de coeficientes de transformación no cero en una región específica (por ejemplo, una TU) es también llamado un mapa de significado.
Además, los elementos de sintaxis coeff_abs_level_greaterl_flag, coeff_abs_level_greater2_flag, coeff_sign_flag, y coeff_abs_level_minus3 son decodificados para cada grupo después de que los componentes de frecuencia en la región de frecuencia son agrupados en uno o una pluralidad de grupos. La figura 6G ilustra un ejemplo de grupos en una región de frecuencia que tiene 8x8 componentes de frecuencia. Los detalles del proceso de decodificación para varios elementos de sintaxis se describirán abajo. Ahora se dará una descripción de una configuración del dispositivo de decodificación de video 1.
Dispositivo de decodificación de video 1 El dispositivo de decodificación de video 1 de acuerdo con esta modalidad se describirá en adelante con referencia a la figura 1 y figura 7 a figura 25. El dispositivo de decodificación de video 1 es un dispositivo de decodificación que implementa las tecnologías adaptadas en la norma H.264/MPEG-4 AVC, las tecnologías adoptadas en software KTA, que es un codee para desarrollo conjunto en VCEG (Grupo de Expertos de Codificación de Video) , las tecnologías adoptadas en software TMuC (Modelo de Prueba bajo Consideración) , y las tecnologías propuestas en HEVC (Codificación de Video de Alta Eficiencia) , que es un codee sucesor de H .264/MPEG-4 AVC.
La figura 7 es un diagrama de bloques que ilustra una configuración del dispositivo de decodificación de video 1. Como se ilustra en la figura 7, el dispositivo de decodificación de video 1 incluye un decodificador de códigos de longitud variable 11, un generador de imágenes de predicción 12, un transformador inverso/descuantificador 13, un sumador 14, una memoria de cuadros 15 y un filtro de circuito 16. Como se ilustra en la figura 7, el generador de imágenes de predicción 12 incluye una unidad de restablecimiento de vectores de movimiento 12a, una unidad de generación de imágenes de Ínter predicción 12b, una unidad de generación de imágenes de intra predicción 12c y una unidad de determinación de esquemas de predicción 12d. El dispositivo de decodificación de video 1 es un aparato para decodificar datos codificados #1 para generar una imagen en movimiento #2.
Decodificador de códigos de longitud variable 11 La figura 8 es un diagrama de bloques que ilustra una configuración principal del decodificador de códigos de longitud variable 11. Como se ilustra en la figura 8, el decodificador de códigos de longitud variable 11 incluye un decodificador de información residual cuantificada 111, un decodificador de parámetros de predicción 112, un decodificador de información de tipos de predicción 113 y un decodificador de parámetros de filtro 114.
El decodificador de códigos de longitud variable 11 decodifica, por el decodificador de parámetros de predicción 112, parámetros de predicción PP para cada división a partir de los datos codificados #1, y suministran los parámetros de predicción PP al generador de imágenes de predicción 12. Específicamente, el decodificador de parámetros de predicción 112 decodifica un parámetro de inter predicción PP_inter para divisiones de inter predicción, que incluye un índice de imágenes de referencia, un índice de predictores de vectores de movimiento y una diferencia de vectores de movimiento, a partir de los datos codificados #1, y los suministra a la unidad de restablecimiento de vectores de movimiento 12A. Para divisiones de intra predicción, por otro lado, el decodificador de parámetros de predicción 112 decodifica un parámetro de intra predicción PP_Intra, el cual incluye un indicador de modo de predicción estimado, un índice de modos de predicción estimados, y un índice de modos de predicción restantes, de los datos codificados #1, y los suministra a la unidad de generación de imágenes de intra predicción 12c.
El decodificador de códigos de longitud variable 11 decodifica además, por el decodificador de información de tipo de predicción 113, información de tipo de predicción Pred_type para cada división a partir de los datos codificados #1, y la suministran a la unidad de determinación de esquemas de predicción 12d. Además, el decodificador de códigos de longitud variable 11 decodifica, por el decodificador de información residual cuantificada 111, información residual cuantificada QD que se refiere a un bloque y una diferencia de parámetros de cuantificación Aqp que se refiere a una TU que incluye al bloque de los datos codificados #1, y los suministra al descuantificador/transformador inverso 13. Más aún, el decodificador de códigos de longitud variable 11 codifica, por el decodificador de parámetros de filtro 114, un parámetro de filtro FP a partir de los datos codificados #1, y los suministra al filtro de circuito 16. Una configuración específica del decodificador de información residual cuantificada 111 se describirá abajo, y no se describe aquí.
Generador de imágenes de predicción 12 El generador de imágenes de predicción 12 identifica, con base en la información de tipo de predicción Pred_type para cada división individual, si la división individual es una división de ínter predicción que será inter-predicha o una división de intra predicción que será intra-predicha . En el primer caso, el generador de imágenes de predicción 12 genera una imagen de inter predicción Pred_inter, y suministra la imagen de inter predicción Pred_inter generada al sumador 14 como una imagen de predicción Pred. En el segundo caso, el generador de imágenes de predicción 12 genera una imagen de intra predicción Pred_intra, y suministra la imagen de intra predicción Pred_intra generada al sumador 14. Si se aplica un modo de salto a la PU que será procesada, el generador de imágenes de predicción 12 no decodifica otros parámetros para esta PU.
Unidad de restablecimiento de vectores de movimiento 12a La unidad de restablecimiento de vectores de movimiento 12a restablece un vector de movimiento mv para cada división de inter predicción individual a partir de una diferencia de vectores de movimiento para la división individual y un vector de movimiento previamente restablecido mv' para otra división. Específicamente, un vector de movimiento mv se obtiene al (1) derivar un vector de movimiento estimado a partir del vector de movimiento previamente restablecido mv' de acuerdo con un método de estimación especificado por el índice de predictores de vectores de movimiento, y (2) añadir el vector de movimiento estimado derivado y la diferencia de vector de movimiento. El vector de movimiento previamente restablecido mv' para la otra división puede ser leído a partir de la memoria de cuadros 15. La unidad de restablecimiento de vectores de movimiento 12a suministra el vector de movimiento actualmente restablecido mv a la unidad de generación de imágenes de inter predicción 12b junto con el índice de imágenes de referencia asociados RI .
Unidad de generación de imágenes de inter predicción 12b La unidad de generación de imágenes de inter predicción 12b genera una imagen compensada en movimiento me para cada división de inter predicción usando predicción inter-cuadros . Específicamente, la unidad de generación de imágenes de inter predicción 12b genera una imagen compensada en movimiento me a partir de una imagen decodificada filtrada adaptivamente P_ALF' especificada por el índice de imágenes de referencia RI suministrado desde la unidad de restablecimiento de vectores de movimiento 12a usando el vector de movimiento mv suministrado también desde la unidad de restablecimiento de vectores de movimiento 12a. La imagen decodificada filtrada adaptivamente P_ALF' es una imagen obtenida llevando a cabo un proceso de filtro usando el filtro de circuito 16 en una imagen decodificada en la cual se ha completado la decodificación de un cuadro completo. La unidad de generación de imágenes de inter predicción 12b puede leer los valores de pixel de pixeles que constituyan la imagen decodificada filtrada adaptivamente P_ALF' de la memoria de cuadros 15. La imagen compensada en movimiento me generada por la unidad de generación de imágenes de inter predicción 12b es suministrada a la unidad de determinación de esquemas de predicción 12d como una imagen de ínter predicción Pred_Inter.
Unidad de generación de imágenes de intra predicción 12c La unidad de generación de imágenes de intra predicción 12c genera una imagen de predicción Pred_Intra para cada división de intra predicción. Específicamente, primero, la unidad de generación de imágenes de intra predicción 12c identifica un modo de predicción con base en el parámetro de intra predicción PP_Intra suministrado desde el decodificador de códigos de longitud variable 11, y asigna el modo de predicción identificado a divisiones objetivo en, por ejemplo, orden de escaneo de cuadrícula.
El modo de predicción puede ser identificado con base en el parámetro de intra predicción PP_Intra de la siguiente manera: (1) un indicador de modo de predicción estimado es decodificado y, si el indicador de modo de predicción estimado indica que el modo de predicción para la división objetivo que será procesada es idéntico a un modo de predicción asignado a una división adyacente de la división objetivo, el modo de predicción asignado a la división adyacente de la división objetivo es asignado a la división objetivo. (2) Por otro lado, si el indicador de modo de predicción estimado indica que el modo de predicción para la división objetivo que será procesada no es idéntico a un modo de predicción asignado a una división adyacente de la división objetivo, el índice de modo de predicción restante es decodificado y el modo de predicción indicado por el índice de modos de predicción restantes es asignado a la división objetivo.
La unidad de generación de imágenes de intra predicción 12c genera una imagen de predicción Pred_Intra a partir de una imagen P decodificada (localmente) usando predicción intra-cuadros de acuerdo con el método de predicción indicado por el modo de predicción asignado a la división objetivo. La imagen de intra predicción Pred_Intra generada por la unidad de generación de imágenes de intra predicción 12c es suministrada a la unidad de determinación de esquemas de predicción 12d. La unidad de generación de imágenes de intra predicción 12c también puede ser configurada para generar una imagen de predicción Pred_Intra a partir de la imagen decodificada filtrada adaptivamente P_ALF usando predicción intra-cuadros.
Unidad de determinación de esquemas de predicción 12d La unidad de determinación de esquemas de predicción 12d determina, con base en la información de tipo de predicción Pred_type para la PU a la cual pertenezca cada división individual, si la división individual es una división inter predicción que será inter-predicha o una división intra predicción que será intra-predicha . En el primer caso, la imagen de ínter predicción Pred_Inter generada por la unidad de generación de imágenes de ínter predicción 12b es suministrada al sumador 14 como una imagen de predicción Pred. En el segundo caso, la imagen de intra predicción Pred_Intra generada por la unidad de generación de imágenes de intra predicción 12c es suministrada al sumador 14 como una imagen de predicción Pred.
Descuantificador/transformador inverso 13 El descuantificador/transformador inverso 13 (1) descuantifica un coeficiente de transformación Coeff decodificado a partir de la información residual cuantificada QD en los datos codificados #1, (2) lleva a cabo una transformación de frecuencia inversa tal como una transformación DCT inversa (Transformación de Coseno Discreta) en un coeficiente de transformación Coeff_IQ obtenido por descuantificacion, y (3) suministra un residuo de predicción D obtenido por la transformación de frecuencia inversa al sumador 14. Cuando descuantifica el coeficiente de transformación Coeff decodificado a partir de la información residual cuantificada QD, el descuantificador/transformador inverso 13 debido a una etapa de cuantificación QP a partir de la diferencia de parámetros de cuantificación Aqp suministrada desde el decodificador 11. El parámetro de cuantificación qp puede ser derivado por la adición de una diferencia de parámetros de cuantificación Aqp a un parámetro de cuantificación qp' para la TU transformada por frecuencia inversa y descuantificada inmediatamente precedente, y la etapa de cuantificación QP puede derivarse de la etapa de cuantificación qp usando, por ejemplo, QP = 2pq . El descuantificador/transformador inverso 13 genera residuos de predicción D en unidades de una TU o en unidades de un bloque obtenido por subdivisión de una TU.
La transformación DCT inversa llevada a cabo por el descuantificador/transformador inverso 13 se da por, por ejemplo, la expresión matemática (1) abajo si, por ejemplo, el tamaño de bloque objetivo es 8x8 pixeles, dado que un pixel en el bloque objetivo se ubica en una posición (i, j) (0 < i < 7, 0 < j < 7) , el valor del residuo de predicción D en la posición (i, j) es representado por D(i, j) , y el coeficiente de transformación descuantificado en el componente de frecuencia (u, v) (0 < u < 7, 0 < v < 7) es representado por Coeff_IQ(u, v) .
Aquí, (u, v) es una variable que corresponde a (xC, yC) descrita arriba. C(u) y C(v) Se dan como sigue.
¦ C(u) = 1/V2 (u = 0) • C(u) = 1 (u ? 0) ¦ C(v) = I/V2 (v = 0) · C(v) = 1 (v ? 0) Sumador 14 El sumador 14 suma la imagen de predicción Pred suministrada desde el generador de imágenes de predicción 12 y el residuo de predicción D suministrado desde el descuantificador/transformador inverso 13 para generar una imagen decodificada P. La imagen decodificada P generada es almacenada en la memoria de cuadros 15.
Filtro de circuito 16 El filtro de circuito 16 tiene (1) una función de un filtro de desbloqueo (DF) para bloquear suavemente límites en la imagen decodificada P o imágenes alrededor de límites de división (proceso de desbloqueo) , y (2) una función de un filtro adaptivo (ALF: Filtro de Circuito Adaptivo) para llevar a cabo un proceso de filtración adaptiva en una imagen a la cual se aplique el filtro de desbloqueo, usando un parámetro de filtro FP.
Decodificador de información residual cuantificada 111 El decodificador de información residual cuantificada 111 tiene una configuración para decodificar un coeficiente de transformación Coeff/uiPosX, uiPosY) que sea cuantificado para cada componente de frecuencia (uiPosX, uiPosY) a partir de la información residual cuantificada QD e incluida en los datos codificados #1. Aquí, uiPosX y uiPosY son índices que indican la posición de cada componente de frecuencia en una región de frecuencia, y son índices que corresponden a la frecuencia horizontal u y frecuencia vertical v descritas arriba, respectivamente. Además, los diferentes elementos de sintaxis incluidos en la información residual cuantificada QD han sido codificados usando codificación aritmética binaria adaptiva a base de contexto (CABAC) . En lo sucesivo, el coeficiente de transformación cuantificada Coeff también puede ser llamado simplemente el coeficiente de transformación Coeff.
La figura 1 es un diagrama de bloques que ilustra una configuración de un decodificador de información residual cuantificada 111. Como se ilustra en la figura 1, el decodificador de información residual cuantificada 111 incluye una unidad de decodificación de coeficientes de transformación 120 y una unidad de decodificación de códigos aritméticos 130.
Unidad de decodificación de códigos aritméticos 130 La unidad de decodificación de códigos aritméticos 130 tiene una configuración de decodificar cada bit incluido en la información residual cuantificada QD al hacer referencia a un contexto. Como se ilustra en la figura 1, la unidad de decodificación de códigos aritméticos 130 incluye una unidad de grabación/actualización de contexto 131 y una unidad de decodificación de bits 132.
Unidad de grabación/actualización de contextos 131 La unidad de grabación/actualización de contextos 131 tiene una configuración para grabar y actualizar una variable de contexto CV manejada por cada índice de contexto ctxldx. La variable de contexto CD incluye (1) un símbolo más probable MPS que se presenta con alta probabilidad, y (2) un índice de estados de probabilidad pStateldx que especifica la probabilidad de ocurrencia del símbolo MPS más probable.
La unidad de grabación/actualización de contextos 131 se refiere al índice de contexto ctxldx suministrado desde cada unidad incluida en la unidad de decodificación de coeficientes de transformación 120 y el valor de un bin decodificado por la unidad de decodificación de bits 132 para actualizar la variable de contexto CV, y registra la variable de contexto actualizada CV hasta el siguiente momento en que la variable de contexto CV sea actualizada. El símbolo MPS más probable es igual a 0 ó 1. El símbolo más probable MPS y el índice de estado de probabilidad pStateldx son actualizados cada vez que la unidad de decodificación de bits 132 decodifica un bin.
El índice de contextos ctxldx puede especificar directamente un contexto para cada componente de frecuencia, o puede ser un valor de incremento a partir del desplazamiento de un índice de contexto que sea establecido para cada TU que será procesada (esto aplica similarmente en la presente más adelante) .
En decodificación CABAC, se puede usar un proceso de decodificación llamado decodificación de derivación además del proceso descrito arriba. En modo de derivación, la variable de contexto CV no es usada, y la decodificación se lleva a cabo bajo la suposición de una pluralidad de 0.5. En este caso, la actualización del estado de la variable de contexto CV no es necesario, dando como resultado la reducción en un retraso causado por la actualización de un contexto. Si se usa o no modo de derivación puede determinarse de tal manera que el modo de derivación se active cuando ctxldx sea negativo y el modo de no derivación en el cual CV se selecciona de acuerdo con ctxldx se active cuando ctxldx sea no negativo. Un código decodificado en modo de derivación también es llamado un código aritmético CABAC que no usa un contexto. La codificación de derivación también puede ser denominada codificación EP (codificación de probabilidades iguales) .
Unidad de decodificación de bits 132 La unidad de decodificación de bits 132 se refiere a la variable de contexto CV registrada en la unidad de registro/actualización de contextos 131, y decodifica cada bit (también denominado bin) incluido en la información residual cuantificada QD. El valor de un bin obtenido por decodificación se suministra a cada unidad incluida en la unidad de decodificación de coeficientes de transformación 120. El valor del bin obtenido por decodificación también es suministrado a la unidad de grabación/actualización de contexto 131, y es referido para poder actualizar la variable de contexto CV.
En general, una unidad de decodificación de bits lleva a cabo un proceso de decodificación sobre una base de bit por bit de acuerdo con el estado de la variable de contexto CV. En modo de derivación, sin embargo, es posible la decodificación simultánea de una pluralidad de bits. El modo de derivación, el cual hace posible decodificación de una pluralidad de bits en un ciclo, puede mejorar significativamente la emisión.
Unidad de decodificación de coeficientes de transformación 120 Como se ilustra en la figura 1, la unidad de decodificación de coeficientes de transformación 120 incluye una unidad de decodificación de última posición 121, una unidad de almacenamiento de tablas de orden de escaneo 122, una unidad de control de decodificación de coeficientes 123, una unidad de decodificación de indicadores de presencia/ausencia de coeficientes, una unidad de decodificación de valores de coeficiente 125 y una unidad de memoria de coeficientes decodificados 126.
Unidad de decodificación de última posición 121 La unidad de decodificación de última posición 121 interpreta un bit decodificado (bin) suministrado desde la unidad de decodificación de bits 132, y decodifica los elementos de sintaxis last_significant_coeff_x and last_significant_coeff_y . Los elementos de sintaxis decodificados last_significant_coeff_x y last_significant_coeff_y son suministrados a la unidad de control de decodificación de coeficientes 123. El índice de contexto ctxldx usado para la decodificación de los elementos de sintaxis last_significant_coeff_x y last_significant_coeff_y es suministrado a la unidad de grabación/actualización de contextos 131.
Unidad de almacenamiento de tablas de órdenes de escaneo 122 La unidad de almacenamiento de tablas de órdenes de escaneo 122 almacena una tabla que proporciona la posición del componente de frecuencia que será procesado en la región de frecuencia usando el tamaño de la TU que será procesada, un índice de escaneo que indica un tipo de dirección de escaneo y un índice de identificación de componentes de frecuencia asignado en orden de escaneo como argumentos.
Ejemplos de la tabla de órdenes de escaneo incluyen ScanOrder ilustrado en la figura 5. En el ScanOrder ilustrado en la figura 5, log2TratoSize-2 representa el tamaño de la TU que será procesada, scanldx representa un índice de escaneo, y n representa un índice de identificación de componentes de frecuencia asignado en orden de escaneo. En la figura 5, además, xC y yC representan la posición del componente de frecuencia que será procesado en la región de frecuencia.
Unidad de control de decodificación de coeficientes 123 La unidad de control de decodificación de coeficientes 123 tiene una configuración para controlar el orden del proceso de decodificación en cada unidad incluida en el decodificador de información residual cuantificada 111. La unidad de control de decodificación de coeficientes 123 se refiere a los elementos de sintaxis lat_significant_coeff_x y last_significant_coeff_y suministrados desde la unidad de decodificación de última posición 121 para identificar la posición del último coeficiente de transformación no cero en un escaneo hacia adelante, y suministra la posición (uniPosX, uniPosY) de los componentes de frecuencia individuales a la unidad de decodificación de indicadores de presencia/ausencia de coeficientes en orden de escaneo que inicia con la posición identificada del último coeficiente de transformación no cero como el origen y que es orden de escaneo inverso al orden de escaneo provisto en la tabla de órdenes de escaneo almacenada en la unidad de almacenamiento de tablas de órdenes de escaneo 122.
La unidad de control de decodificación de coeficientes 123 suministra además sz, que es un parámetro que indica el tamaño de la TU que será procesada, es decir, el tamaño de la región de frecuencia objetivo, a cada unidad incluida en la unidad de decodificación de coeficientes de transformación 120 (no ilustrada en el dibujo). Aquí, específicamente, sz es un parámetro que indica el número de pixeles en un lado de la TU que será procesada, es decir, el número de componentes de frecuencia en un lado de la región de frecuencia objetivo.
La unidad de control de decodificación de coeficientes 123 puede ser configurada para suministrar la posición (uniPosX, uniPosY) de los componentes de frecuencia individuales a la unidad de decodificación de indicadores de presencia/ausencia de coeficientes en orden de escaneo hacia adelante que es el orden de escaneo provisto en la tabla de órdenes de escaneo almacenada en la unidad de almacenamiento de tablas de órdenes de escaneo 122.
Unidad de decodificación de valores de coeficientes 125 La unidad de decodificación de valores de coeficientes 125 interpreta cada bin suministrado desde la unidad de decodificación de bits 132, y decodifica los elementos de sintaxis coeff_abs_level_greaterl_flag, coeff_abs_level_greater2_flag , coeff_sign_flag, and coeff_abs_level_minus3. Además, la unidad de decodificación de valores de coeficientes 125 deriva el valor de un coeficiente de transformación (más específicamente, un coeficiente de transformación no cero) para el componente de frecuencia que será procesado con base en los resultados de decodificar estos elementos de sintaxis. El índice de contexto ctxldx usado para la decodificación de los diferentes elementos de sintaxis es suministrado a la unidad de grabación/actualización de contextos 131. El valor derivado del coeficiente de transformación es almacenado en la unidad de memoria de coeficientes decodificados 126.
Unidad de memoria de coeficientes decodificados 126 La unidad de memoria de coeficientes decodificados 126 tiene una configuración para almacenar los valores de coeficientes de transformación decodificados por la unidad de decodificación de valores de coeficiente 125. La unidad de memoria de coeficientes decodificados 126 almacena también los valores del elemento de sintaxis significant_coeff_flag decodificado por la unidad de decodificación de indicadores de presencia/ausencia de coeficientes. Los valores de los coeficientes de transformación almacenados en la unidad de memoria de coeficientes decodificados 126 son suministrados al descuantificador/transformador inverso 13.
Unidad de decodificación de indicadores de presencia/ausencia de coeficientes La unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con esta modalidad tiene una configuración para clasificar una región de frecuencia en una o una pluralidad de regiones de acuerdo con la magnitud de la frecuencia, derivar un índice de contexto ctxldx usando un método de derivación determinado para cada sub-región, y decodificar el elemento de sintaxis significant_coeff_flag que indique la presencia o ausencia de un coeficiente de transformación no cero usando el índice de contexto derivado ctxldx.
Primer ejemplo de configuración de unidad de decodificación de indicadores de presencia/ausencia de coeficientes La figura 1 ilustra una unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 que sirve como un primer ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con esta modalidad.
Como se ilustra en la figura 1, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 de acuerdo con este ejemplo de configuración incluye una unidad de clasificación de frecuencias 124a, una unidad de derivación de contextos de posición de baja frecuencia 124b, una unidad de derivación de contextos de referencia adyacentes 124c y una unidad de derivación de contextos de posición de alta frecuencia 124d.
Unidad de clasificación de frecuencias 124a La unidad de clasificación de frecuencias 124a tiene una configuración para clasificar el componente de frecuencia que será decodificado en cualquiera de una pluralidad de sub-regiones de acuerdo con la posición del componente de frecuencia en la región de frecuencia, y para asignar el índice de contexto ctxldx derivado por cualquiera de la unidad de derivación de contextos de posición de baja frecuencia 124b, la unidad de derivación de contextos de referencia adyacentes 124c, y la unidad de derivación de contextos de posición de alta frecuencia 124d al componente de frecuencia que será decodificado.
La unidad de clasificación de frecuencias 124a de acuerdo con este ejemplo de configuración se refiere a la posición (uiPosX, uiPosY) en la cual cada componente de frecuencia individual incluido en la región de frecuencia se ubica en la región de frecuencia, y clasifica el componente de frecuencia individual en una pluralidad de sub-regiones RO a R3. Se asume aquí que uiPosX = 0.1, sz-1 y uiPosY = 0, 1, sz-1 (en donde sz representa, como se describió arriba, el número de pixeles en un lado de la TU que será procesada, es decir, el número de componentes de frecuencia en un lado de la región de frecuencia objetivo; por ejemplo, sz = 16, 32, etc. ) .
Más específicamente, la unidad de clasificación de frecuencias 124a lleva a cabo el siguiente proceso de clasificación de frecuencia: Clasificar un componente de frecuencia que satisfaga uiPosX+uiPosY < 2 en la sub-región RO .
Clasificar un componente de frecuencia que satisfaga 2 < uiPosX+uiPosY < THl en la sub-región Rl .
· Clasificar un componente de frecuencia que satisfaga THl < uiPosX+uiPosY < TH2 en la sub-región R2.
Clasificar un componente de frecuencia que satisfaga TH2 < uiPosX+uiPosY en la sub-región R3.
Aquí, THl y TH2 representan valores umbral que satisfacen THl < TH2. Valores específicos pueden ser tales que, por ejemplo, TH = 5 y TH2 = 14 no obstante del tamaño de la región de frecuencia (el tamaño de la TU que será procesada. Los valores también pueden ser tales que THl = 5 y TH= 14 cuando el tamaño de la región de frecuencia sea 16x16, y THl = 5 y TH2 = 30 cuando el tamaño de la región de frecuencia sea 32x32. De esta manera, diferentes valores umbral pueden ser usados de acuerdo con el tamaño de la región de frecuencia.
La figura 9 ilustra un ejemplo de una región de frecuencia que se divide en sub-regiones RO , Rl , R2 y R3 usando un proceso de clasificación por la unidad de clasificación de frecuencia 124a de acuerdo con este ejemplo de configuración.
Además, la unidad de clasificación de frecuencia 124a asigna el índice de contexto derivado por la unidad de derivación de contextos de posición de baja frecuencia 124b a los componentes de frecuencia incluidos en la sub-región RO, asigna el índice de contexto derivado por la unidad de derivación de contextos de referencia adyacentes 124c a los componentes de frecuencia incluidos en las sub-regiones Rl y R2, y asigna el contexto derivado por la unidad de contextos de posición de alta frecuencia 124d a los componentes de frecuencia incluidos en la sub-región R3.
De preferencia, el valor de TH2 se establece para ser menor que o igual a sz-2 porque, como se describe abajo, la unidad de derivación de contextos de referencia adyacentes 124c puede omitir la determinación de si es posible o no hacer referencia a un componente de frecuencia adyacente del componente de frecuencia objetivo. En otras palabras, de preferencia, un contexto de referencia adyacente se usa para componentes de frecuencia para los cuales todos los pixeles de referencia usados para la derivación del contexto de referencia adyacente estén dentro de la TU que será procesada, y se usa un contexto de posición para los demás componentes de frecuencia.
El valor de TH2 se establece de preferencia para ser igual a sz-2 cuando componentes de frecuencia adyacentes también incluyen un componente en una posición que esté separada aparte por 2 con respecto a la posición objetivo. Como se describe abajo en la descripción del método de cálculo para un recuento de referencia limitado, si un componente en una posición que esté separado por 1 de la posición objetivo se usa como un componente de frecuencia adyacente, el valor de TH2 puede establecerse para ser igual a sz-1.
De acuerdo con el experimento de los inventores, el valor de TH2 se establece de preferencia para ser mayor que o igual a sz en el caso de un contexto de posición, que se describirá en la modalidad 1, para lograr así alta eficiencia de codificación.
De acuerdo con el experimento de los inventores, además, en el caso de un contexto de referencia adyacente que utiliza un recuento de referencia limitado descrito abajo en la modalidad 3, el valor de TH2 puede y es de preferencia establecido en menos que o igual a sz-2. En el caso de sz-2, TH2 puede determinarse usando un método que use sz-2 o también se puede determinar por la operación de multiplicar-acumular, tal como sz x 7 >> 3.
Los valores de los valores umbral pueden ser determinados por la referencia a una tabla determinada para cada sz. Por ejemplo, el valor del logaritmo log2(sz) del tamaño es 4 cuando el tamaño de región de frecuencia es 16x16, y es 5 cuando el tamaño de región de frecuencia es 32x32. La constante TH2 puede calcularse al hacer referencia a la tabla TH2 [] abajo con el valor del logaritmo del tamaño. tabla TH[] = {0, 0, 0, 0, 14, 30} TH2 = tabla [log2 (sz) ] Si los valores umbral se determinan por cálculo usando el tamaño sz, la tabla puede ser borrada. Por ejemplo, los valores umbral se determinan deseablemente por un método de cálculo que usa la diferencia o suma del tamaño y una constante predeterminada, tal como TH2 = sz - 2, o por un método que use el producto y división del tamaño y la constante o usando desplazamiento, tal como TH2 = sz x 7/8 o TH2 = sz x 7 >> 3.
En la anterior descripción, la unidad de clasificación de frecuencia 124a se refiere a (uiPosX, uiPosY) como la posición del componente de frecuencia objetivo. Sin embargo, esta modalidad no está limitada a esto. Por ejemplo, un índice de identificación de componentes de frecuencia asignado en orden de escaneo hacia adelante u orden de escaneo hacia atrás (por ejemplo, "n" en la figura 5) puede ser referenciado como la posición del componente de frecuencia objetivo, y el componente de frecuencia objetivo puede ser clasificado en cualquiera de una pluralidad de sub- regiones .
Además, la unidad de clasificación de frecuencias 124a calcula un índice de contextos ctxldx para determinar un contexto que se usará para decodificar el elemento de sintaxis significant_coeff_flag usando la unidad de decodificación de códigos aritméticos 130. El índice de contexto ctxldx se calcula para cada tamaño de región de frecuencia y para cada componente de frecuencia que será decodificado . El elemento de sintaxis decodificado significant_coeff_flag se almacena en la unidad de memoria de coeficientes decodificados 126, y es referenciado por la unidad de decodificación de valores de coeficiente 125. El índice de contexto ctxldx, el cual ha sido usado para decodificación, es suministrado a la unidad de grabación/actualización de contextos 131.
Unidad de derivación de contextos en posición de baja frecuencia 124b La unidad de derivación de contextos de posición de baja frecuencia 124b tiene una configuración para derivar un índice de contexto ctxldx para el componente de frecuencia que será decodificado, con base en la posición del componente de frecuencia en la región de frecuencia si el componente de frecuencia está incluido en una sub-región del lado de baja frecuencia. El contexto derivado o por ser derivado sobre la base de la posición del componente de frecuencia objetivo es también llamado aquí un "contexto de posición" . El contexto de posición es tal que un contexto para un indicador de presencia/ausencia de coeficiente en la posición de un coeficiente de transformación dado se determina no obstante del valor de un indicador de presencia/ausencia de coeficiente previamente decodificado, logrando la ventaja de proporcionar ejecución paralela de la derivación de contextos para indicadores de presencia/ausencia de coeficiente y la decodificación de indicadores de presencia/ausencia de coeficientes.
La unidad de derivación de contextos de posición de baja frecuencia 124b de acuerdo con este ejemplo de configuración deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R0 usando la expresión abajo, y suministra el índice de contexto ctxldx derivada a la unidad de clasificación de frecuencias 124a. ctxldx = NX + 2 x uiPosX + uiPosY NX representa una constante que indica el punto de partida del índice de contexto. Si el tamaño de la región de frecuencia es 4x4 y 8x8 y los números de contextos usados para la misma son N4 y N8 , respectivamente, el punto de partida para tamaños de región de frecuencia de 16x16 y 32x32 se da por NX = N4 + N8.
El índice de contexto de la unidad de derivación de contextos de posición puede ser un valor fijo. Es decir, un contexto puede ser asignado a las posiciones de todos los componentes de frecuencia incluidos en una sub-región que se asigne a un contexto de posición. Por ejemplo, el siguiente método de asignación puede ser usado, ctxldx = NX El valor fijo (el punto de partida NX) puede ser seleccionado de acuerdo con el componente de color y el tamaño de la región de frecuencia.
También en otras configuraciones que se describirán abajo, el término unidad de derivación de contextos de posición se usa para incluir también una unidad de derivación de contextos configurada para derivar un índice de contextos como un valor fijo. En realidad, un método en el cual subregiones se clasifican de acuerdo con las posiciones de coeficientes de transformación y luego un valor fijo se asigna a un índice de contexto para una subregión dada es equivalente a la asignación de un contexto de acuerdo con la posición. Este contexto puede ser un contexto de posición en este sentido.
Unidad de derivación de contextos de referencia adyacentes 124c La unidad de derivación de contextos de referencia adyacentes 124c tiene una configuración para derivar un índice de contexto ctxldx para el componente de frecuencia que será decodificado, con base en el número de coeficientes de transformación no cero decodificados para componentes de frecuencia adyacentes del componente de frecuencia que será decodificado .
El contexto derivado o por ser derivado con referencia a un coeficiente de transformación no cero decodificado para un componente de frecuencia adyacente del componente de frecuencia objetivo es también llamado en la presente un "contexto de referencia adyacente" .
La unidad de derivación de contextos de referencia adyacentes 124c de acuerdo con este ejemplo de configuración deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región Rl usando la siguiente expresión, y suministra el índice de contexto ctxldx derivado a la unidad de clasificación de frecuencias 124a. ctxldx = NX + 3 + min(4, cnt) aquí, el recuento cnt es cortado a un valor fijo (aquí, 4) logrando de esta manera un proceso de transformación de muchos a uno.
Aquí, el punto de partida del índice de contexto para la sub-región Rl es NX+3 por la siguiente razón. Ya que el intervalo de los valores del desplazamiento 2xuiPosX+uiPosY desde el punto de partida de la sub-región Rl es 0, 1 y 2, NX, NX+1 y NX+2 se usan en la sub-región Rl . En consecuencia, el punto de partida de Rl se determina de tal forma que los contextos para Rl y R2 no se superpongan. En lo sucesivo, el punto de partida de la sub-región RN más 1 se establece para ser igual al valor máximo del punto de partida de la sub-región RN y un valor umbral del desplazamiento de la sub-región RN más 1, a menos que se indique lo contrario. Esto puede evitar que se superpongan contextos para dos sub-regiones .
La unidad de derivación de contextos de referencia adyacentes 124c de acuerdo con este ejemplo de configuración deriva además un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R2 , usando la siguiente expresión, y suministra el índice de contexto ctxldx derivado a la unidad de clasificación de frecuencias 124a. ctxldx = NX + 8 + min(4, cnt) , en donde min(A, B) es una función que toma el valor más pequeño de A y B . Es decir, si A < B, min(A, B) = A. cnt representa el número (recuento) de coeficientes de transformación no cero decodificados para componentes de frecuencia adyacentes del componente de frecuencia objetivo. La figura 10A ilustra un componente de frecuencia objetivo x en caso de que el orden de procesamiento sea orden de escaneo inverso, y los componentes de frecuencia de referencia el a c5 que son componentes de frecuencia incluidos en una región de referencia RR establecida cerca de la posición del componente de frecuencia objetivo x. Como se ilustra en la figura 10A, si los valores de coeficientes de transformación decodificados para los componentes de frecuencia de referencia respectivos son representados por el a c5, cnt para el componente de frecuencia objetivo x puede derivarse usando, por ejemplo, la siguiente expresión: cnt = (cl!=0) + (c2!=0) + (c3!=0) + (c4!=0) + (c5!=0) Cada término toma 1 si el argumento entre paréntesis es verdadero) y toma 0 si e argumento entre paréntesis es falso.
La figura 10B ilustra un componente de frecuencia objetivo x en caso de que el orden de procesamiento sea orden de escaneo hacia adelante, y los componentes de frecuencia de referencia el a c5 que son componentes de frecuencia incluidos en una región de referencia RR establecida cerca de la posición del componente de frecuencia objetivo x. La expresión usada para calcular cnt es similar a aquella descrita arriba. Como se ilustra en la figura 10B, la posición de los componentes de frecuencia de referencia en el caso de escaneo hacia adelante puede obtenerse por la posición de cada uno de los componentes de frecuencia de referencia en el caso de que se invierta el escaneo hacia atrás en la dirección del eje X y la dirección del eje Y con respecto al componente de frecuencia objetivo x.
Como se ilustra en la figura 10C, si cualquiera de los componentes de frecuencia de referencia se encuentra fuera de la región de frecuencia, es decir, parte de la región de referencia se extiende fuera de la región de frecuencia objetivo, un componente de frecuencia que se encuentre fuera de la región de frecuencia objetivo se determina como no referible, y el valor del coeficiente de transformación para el componente de frecuencia se maneja como siendo igual a 0. Es decir, en el ejemplo ilustrado en la figura 10C, c2 = 0.
Unidad de derivación de contextos de posición de alta frecuencia 124d La unidad de derivación de contextos de posición de alta frecuencia 124d tiene una configuración para derivar un índice de contexto ctxldx para el componente de frecuencia que será decodificado, con base en la posición del componente de frecuencia en la región de frecuencia si el componente de frecuencia está incluido en una sub-región del lado de alta frecuencia .
La unidad de derivación de contextos de posición de alta frecuencia 124d de acuerdo con este ejemplo de configuración deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R3 , usando la expresión abajo, y suministra el índice de contexto ctxldx derivado a la unidad de clasificación de frecuencia 124a. ctxldx = X + 13 + min(maxR3, (uiPosX+uiPosY-TH2) >> shift) , en donde el signo ">>" representa la operación de desplazamiento de bit derecho. Además, por ejemplo, desplazamiento 4 y maxR3 3 se puede usar como desplazamiento y maxR3. Sin embargo, esta modalidad no está limitada a esto.
La unidad de derivación de contextos de posición de baja frecuencia 124b, la unidad de derivación de contextos de referencia adyacentes 124c y la unidad de derivación de contextos de posición de alta frecuencia 124d de acuerdo con este ejemplo de configuración pueden configurarse para derivar un índice de contexto ctxldx usando una expresión común no obstante de si el tamaño de la región de frecuencia objetivo es 16x16 o 32x32, o puede configurarse para derivar un índice de contexto ctxldx usando una expresión diferente dependiendo de si el tamaño de la región de frecuencia objetivo es 16x16 o 32x32. Un ejemplo de esta configuración puede ser una configuración en la cual Si el tamaño de la región de frecuencia objetivo es 16x16, la unidad de derivación de contextos de posición de alta frecuencia 124d use ctxldx = NX + 13 + min(maxR3, (uiPosX+uiPosY-TH2 ) >> shift) , y si el tamaño de la región de frecuencia objetivo es 32x32, la unidad de derivación de contexto de posición de alta frecuencia 124d usa ctxldx NX + 13 + maxR3 + 1 + min(maxR3, (uiPosX+uiPosY-TH2) >> shift) .
Otro ejemplo puede ser una configuración en la cual si el tamaño de la región de frecuencia objetivo es 16x16, la unidad de derivación de contextos de posición de alta frecuencia 124d usa ctxldx = NX + 13 + min(3, (uiPosX+uiPosY- 1 ) >> 4), y si el tamaño de la región de frecuencia objetivo es 32x32, la unidad de derivación de contextos de posición de alta frecuencia 124d usa ctxldx = NX + 13 + min(3, (uiPosX+uiPosY-30) >> 4). Otro ejemplo más puede ser una configuración en la cual si el tamaño de la región de frecuencia objetivo es 16x16, la unidad de derivación de contextos de posición de alta frecuencia 124d usa ctxldx = NX + 13 + min(3, (uiPosX+uiPosY-TH2 ) >> 3), y si el tamaño de la región de frecuencia objetivo es 32x32, la unidad de derivación de contextos de posición de alta frecuencia 124d usa ctxldx = NX + 13 + min(3, (uiPosX+uiPosY-TH2 ) >> 4) .
Otro ejemplo más puede ser una configuración en la cual Si el tamaño de la región de frecuencia objetivo es 16x16, la unidad de derivación de contextos de posición de alta frecuencia 124d usa ctxldx = NX + 13 + min(R3maz, (uiPosX+uiPosY-TH2) » 3) , y si el tamaño de la región de frecuencia objetivo es 32x32, la unidad de derivación de contextos de posición de alta frecuencia 124d usa ctxldx = NX + 13 + R3max + 1 + min(R3max, (uiPosX+uiPosY-TH2) >> 4) .
La unidad de derivación de contextos de posición de baja frecuencia 124b y la unidad de derivación de contextos de posición de alta frecuencia 124d pueden configurarse para derivar un índice de contexto ctxldx usando una expresión diferente para cada tamaño de región de frecuencia, y la unidad de derivación de contextos de referencia adyacentes 124c puede configurarse para derivar un índice de contexto ctxldx usando una expresión común para regiones de frecuencia que tengan diferentes tamaños.
Un ejemplo de una región de frecuencia que se divide usando el proceso de clasificación por la unidad de clasificación de frecuencia 124a de acuerdo con este ejemplo de configuración no está limitado al ilustrado en la figura 9. Por ejemplo, una región de frecuencia puede dividirse de una manera ilustrada en las figuras 11A u 11B.
El índice de contexto para la unidad de derivación de contextos de posición puede ser un valor fijo. Es decir, un contexto puede ser asignado a todas las posiciones de frecuencia en las sub-regiones que puedan ser asignadas usando un contexto de posición. Por ejemplo, el siguiente método de asignación también es referido como una unidad de derivación de contextos de posición, ctxldx = NX El valor fijo (el punto de partida NX) puede ser seleccionado de acuerdo con el componente de color y el tamaño de la región de frecuencia.
En el ejemplo ilustrado en la figura 11A, una región de frecuencia se clasifica en sub-regiones R0 , Rl y R3. Para los componentes de frecuencia incluidos en las sub-regiones R0, Rl y R3 , como se describió arriba, los índices de contexto ctxldx se calculan por la unidad de derivación de contextos de posición de baja frecuencia 124b, la unidad de derivación de contextos de referencia adyacentes 124c, y la unidad de derivación de contextos de posición de alta frecuencia 124d, respectivamente.
En el ejemplo ilustrado en la figura 11B, una región de frecuencia se clasifica en sub-regiones Rl y R3.
Para los componentes de frecuencia incluidos en las sub-regiones Rl y R3 , como se describió arriba, índices de contexto ctxldx son calculados por la unidad de derivación de contextos de referencia adyacentes 124c y la unidad de derivación de contextos de posición de alta frecuencia 124d, respectivamente .
Como se describió arriba, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración deriva un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que pertenezca a una sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones descritas arriba en la región de frecuencia objetivo, con base en la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo. Así, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente, mientras se logra alta eficiencia de codificación.
Segundo ejemplo de configuración de unidad de decodificación de indicadores de presencia/ausencia de coeficientes Un segundo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con esta modalidad se describirá con referencia a las figuras 12 y 13. La figura 12 es un diagrama de bloques que ilustra una configuración de una unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-1 de acuerdo con este ejemplo de configuración. La figura 13 es un diagrama que ilustra secuencias de escaneo en las cuales una unidad de recuento de coeficientes de transformación no cero 124f cuenta el número de coeficientes de transformación no cero.
Como se ilustra en la figura 12, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-1 de acuerdo con este ejemplo de configuración incluye una unidad de clasificación de frecuencias 124a, una unidad de derivación de contextos de posición de baja frecuencia 124b, una unidad de derivación de contextos de referencia adyacentes 124c, y una unidad de derivación de contextos de secuencia de escaneo precedentes 124e. La unidad de derivación de contextos de secuencia de escaneo precedentes 124e incluye la unidad de recuento de coeficientes de transformación no cero 124f. A los elementos que tengan las mismas funciones que los elementos ilustrados en el primer ejemplo de configuración descrito arriba se les dan los mismos números, y se omite una descripción de los mismos .
Este ejemplo de configuración es diferente al primer ejemplo de configuración descrito arriba en términos de un método de derivación para un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R3.
Así, también en este ejemplo de configuración, para los componentes de frecuencia incluidos en la sub-región RO, similarmente al primer ejemplo de configuración descrito arriba, un índice de contexto ctxldx se deriva usando la siguiente expresión. ctxldx = NX + 2 X uiPosX + uiPosY Para los componentes de frecuencia incluidos en la sub-región Rl , un índice de contexto ctxldx se deriva usando la siguiente expresión. ctxldx = NX + 3 min(4, cnt) Para los componentes de frecuencia incluidos en la sub-región R2, un índice de contexto ctxldx se deriva usando la siguiente expresión. ctxldx = NX + 8 + min(4, cnt) Para los componentes de frecuencia incluidos en la sub-región R3 , en contraste, la unidad de derivación de contextos de secuencia de escaneo precedentes 124e deriva un índice de contexto ctxldx usando el siguiente método.
Unidad de derivación de contextos de secuencias de escaneo precedentes 124e La unidad de derivación de contextos de secuencia de escaneo precedentes 124e tiene una configuración para derivar un índice de contexto ctxldx para el componente de frecuencia que será decodificado, con base en el número de coeficientes de transformación no cero incluidos en una secuencia de escaneo inmediatamente precedente en orden de escaneo si el componente de frecuencia está incluido en una sub-región del lado de alta frecuencia.
La unidad de recuento de coeficientes de transformación no cero 124f incluida en la unidad de derivación de contextos de secuencia de escaneo precedentes 124e tiene también una configuración para contar el número de coeficientes de transformación no cero que aparezcan en la secuencia de escaneo inmediatamente precedente.
La unidad de derivación de contextos de secuencia de escaneo precedentes 124e de acuerdo con este ejemplo de configuración deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R3 usando la siguiente expresión, y suministra el índice de contexto ctxldx derivado a la unidad de clasificación de frecuencia 124a. ctxldx NX + 13 + min(maxR3, last_cntxlinetbl [uiPosX+uiPosY] >> shift) Aquí, last_cnt representa el número de coeficientes de transformación no cero que apareció en la secuencia de escaneo inmediatamente precedente. Además, linetbl representa una tabla de coeficientes para normalizar el número de coeficientes de transformación no cero ya que el número de coeficientes de transformación no cero que están presentes difiere dependiendo de la secuencia de escaneo, y se genera usando las siguientes expresiones. linetbl (x) = 2shift1/ (x + 1) (x < sz) linetbl (x) = 2shift1/ (2 x sz - x - 1) (x > sz) Además, desplazamiento = shiftl+2, y, por ejemplo, shiftl = 3 (esto aplica similarmente en adelante aquí) .
Si el orden de escaneo es escaneo inverso y si la secuencia de escaneo Lx (figura 13A) que incluye el componente de frecuencia objetivo va a ser procesada, la unidad de recuento de coeficientes de transformación no cero 124f de acuerdo con este ejemplo de configuración cuenta el número de coeficientes de transformación no cero last_cnt que se presentó en la secuencia de escaneo precedente Lx+1. En el caso de escaneo hacia adelante, la unidad de recuento de coeficientes de transformación no cero 124f cuenta el número de coeficientes de transformación no cero que se presentó en la línea Lx-1.
La unidad de derivación de contextos de secuencia de escaneo precedentes 124e también puede configurarse para usar, en lugar del número de coeficientes de transformación no cero que apareció en una secuencia de escaneo inmediatamente precedente, el número de coeficientes de transformación no cero que apareció en una secuencia de escaneo que preceda a la secuencia de escaneo inmediatamente precedente. Por e emplo, last_cnt puede determinarse al añadir el valor last_cnt'>>l al número de coeficientes de transformación no cero curr_cnt en la secuencia de escaneo actual, en donde el valor last_cnt'>>l se obtiene al ponderar last_cnt' usado en la secuencia de escaneo inmediatamente precedente. Una expresión específica puede ser last_cnt = (last_cnt' >> 1) + curr_cnt .
La unidad de derivación de contextos de secuencia de escaneo precedentes 124e también puede configurarse para configurar un índice de contexto ctxldx usando un método diferente de acuerdo con la posición del componente de frecuencia .
Por ejemplo, si la posición de un componente de frecuencia satisface uiPosX > uiPosY, un índice de contexto ctxldx se deriva usando la siguiente expresión. ctxldx = 13 + min(maxR3, last_cntxxlinetbl [uiPosX+uiPosY] >> shift) Por otro lado, si la posición de un componente de frecuencia satisface uiPosX < uiPosY, un índice de contexto ctxldx se deriva usando la siguiente expresión. ctxldx = NX + 13 + maxR3 + 1 + mn(maxR3, last_cntyxlinetbl [uiPosX+uiPosY] >> shift) Aquí, last_cntx es el número de coeficientes de transformación no cero que apareció en una secuencia de escaneo inmediatamente precedente, el cual satisface uiPosX > uiPosY, y last_cnty es el número de coeficientes de transformación no cero que apareció en la secuencia de escaneo inmediatamente precedente, que satisface uiPosX < uiPosY. Es decir, en la secuencia de escaneo inmediatamente precedente, una porción de secuencia de escaneo en la dirección derecha superior desde el centro es el objetivo de contar last_cntx, y una porción de secuencia de escaneo en la izquierda inferior desde el centro es el objetivo de contar last_cnty (figura 13B) .
Además, desplazamiento = shiftl + 1.
La unidad de derivación de contextos de secuencia de escaneo precedentes 124e también se puede configurar para derivar un índice de contexto ctxldx usando la siguiente expresión . ctxldx 13 + min(maxR3, last_cnt >> shifttbl [uiPosX+uiPosY+1] ) Aquí , shifttbl [k] = Int (log2 (numLineCoeff [k] /maxR3) ) , y numLineCoeff [k] es el número de coeficientes de transformación no cero en la secuencia de escaneo en la posición de k. Int significa que las fracciones decimales de un argumento son cortadas .
Como se describió arriba, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración deriva un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que se encuentre a lo largo de la secuencia de escaneo actual en la sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones descritas arriba, con base en el número de coeficientes de transformación no cero que se encuentren a lo largo de la secuencia de escaneo precedente. Si el número de coeficientes de transformación no cero que se encuentran a lo largo de la secuencia de escaneo precedente se cuenta una vez, el número de coeficientes de transformación no cero puede usarse comúnmente para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que se encuentra a lo largo de la secuencia de escaneo actual. Así, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente que requiere derivación separada de índices de contexto para indicadores de presencia/ausencia de coeficientes de transformación en diferentes posiciones, y también es posible lograr alta eficiencia de codificación.
Tercer ejemplo de configuración de unidad de decodificación de indicadores de presencia/ausencia de coeficientes Un tercer ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con esta modalidad se describirá con referencia a las figuras 14 y 15A-I. La figura 14 es un diagrama de bloques que ilustran una configuración de una unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-2 de acuerdo con este ejemplo de configuración. Las figuras 15A a 151 son diagramas que ilustran componentes de frecuencia referidos por la unidad de derivación de contextos de referencia adyacentes 124g para derivar el contexto. Como se describió previamente en la relación entre la figura 10A y la figura 10B, también en las figuras 15A-15I, la posición de un componente de frecuencia de referencia correspondiente en escaneo hacia adelante puede obtenerse por las posiciones de cada uno de los componentes de frecuencia de referencia en el caso de que escaneo inverso sea invertido en la dirección del eje X y la dirección del eje Y con respecto al componente de frecuencia objetivo x. En consecuencia, la presente invención también se puede aplicar a una implementación de significant_coeff_flag en escaneo hacia adelante.
Como se ilustra en la figura 14, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-2 de acuerdo con este ejemplo de configuración incluye una unidad de clasificación de frecuencia 124a, una unidad de derivación de contextos de posición de baja frecuencia 124b y una unidad de derivación de contextos de referencia adyacentes 124g. A los elementos que tengan las mismas funciones que los elementos ilustrados en el primer ejemplo de configuración descrito arriba se les asignan los mismos números, y se omite una descripción de los mismos.
Este ejemplo de configuración es diferente del primer ejemplo de configuración descrito arriba en términos de un método de derivación para un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R3.
Así, también en este ejemplo de configuración, para los componentes de frecuencia incluidos en la sub-región R0, en forma similar al primer ejemplo de configuración descrito arriba, un índice de contexto ctxldx se deriva usando la siguiente expresión. ctxldx = NX + 2 X uiPosX + uiPosY Para los componentes de frecuencia incluidos en la sub-región Rl, un índice de contexto ctxldx se deriva usando la siguiente expresión. ctxldx = NX + 3 + min(4, cnt) Para los componentes de frecuencia incluidos en la sub-región R2 , un índice de contexto ctxldx se deriva usando la siguiente expresión. ctxldx = NX + 8 + min(4, cnt) Para los componentes de frecuencia incluidos en la sub-región R3 , en contraste, la unidad de derivación de contextos de referencia adyacentes 124g deriva un índice de contexto ctxldx usando el siguiente método.
Unidad de derivación de contextos de referencia adyacentes 124g La unidad de derivación de contextos de referencia adyacentes 124g tiene una configuración para derivar un índice de contextos ctxldx para el componente de frecuencia que será decodificado, con base en el número de coeficientes de transformación no cero decodificados para componentes de frecuencia adyacentes del componente de frecuencia que será decodificado.
La unidad de derivación de contextos de referencia adyacentes 124g deriva un índice de contextos ctxldx para los componentes de frecuencia incluidos en la sub-región R3 usando cnt2 (recuento de referencia limitado) con un número más pequeño de referencias que cnt usado para las regiones de baja frecuencia Rl y R2, de acuerdo con la siguiente expresión. El término "recuento de referencia limitada" significa una región de referencia que es más pequeña que y más limitada que aquella para el recuento usado en otras sub-regiones . Por otro lado, el cálculo de un recuento normal cnt con cinco referencias o similares es llamado un recuento de referencia normal. ctxldx = NX + 8 + cnt2 cnt2 se calcula usando la siguiente expresión. cnt2 = (cl!=0) + (c3!=0) + (c4!=0), en donde el, c3 y c4 son coeficientes de transformación decodificados para componentes de frecuencia adyacentes del componente de frecuencia objetivo x ilustrado en la figura 151.
La posición de referencia del recuento de referencia limitado cnt2 no está limitada a la descrita arriba, y otra posición de referencia en la cual el número de referencia sea más pequeño que 5 puede ser usada. Por ejemplo, cuando el número de referencias sea igual a 2, un ejemplo es el siguiente: cnt2 = (el !=0) + (c3 !=0) .
Además, si el tamaño de la región de frecuencia objetivo es 16x16, la unidad de derivación de contextos de referencia adyacentes 124g deriva un índice de contexto ctxldx usando ctxldx = NX+8+cnt2.
Si el tamaño de la región de frecuencia objetivo es 32x32, la unidad de derivación de contextos de referencia adyacentes 124g deriva un índice de contexto ctxldx usando ctxldx = NX + 8 +9 cnt2.
De esta manera, de preferencia, los valores de recuento para un número de referencias a una región en el lado de alta frecuencia más pequeño que el número de referencias a una región en el lado de baja frecuencia son usados, y los valores de recuento son añadidos a puntos de partida cada uno determinados para una región para determinar un índice de contexto.
En el ejemplo descrito arriba, el punto de partida del contexto para la sub-región R3 es NX+8, que es igual a punto de partida del contexto para la sub-región R2. Esto significa que la sub-región R2 y la sub-región R3 tienen el mismo índice de contexto ctxldx si los recuentos cnt y cnt2 tienen el mismo valor. En otras palabras, la sub-región R2 y la sub-región R3 comparten el mismo contexto. De esta manera, en caso de que las regiones ubicadas en diferentes regiones de frecuencia comparten el mismo contexto, el contexto obtenido en la región que sea escaneada primero (si el orden de codificación de significant_coeff_flag es escaneo inverso, R3) puede usarse para la región que se escanee después (si el orden de codificación de significant_coeff_flag es escaneo inverso, R2) , dando como resultado codificación de alta eficiencia. Además, también cuando una región se divida en sub-regiones , el número de contextos no es incrementado, dando como resultado una reducción en uso de memoria causada por contextos .
La figura 16 ilustra el compartir algunos contextos entre sub-regiones R2 y R3 entre sub-regiones R0 a R3 que constituyen una región de frecuencia objetivo. Más específicamente, contextos identificados por los mismos índices de contexto (aquí, NX+8 a NX+11) son compartidos entre el recuento de referencia normal usado en la sub-región R2 y el recuento de referencia limitado usado en la sub-región R3.
El experimento de los inventores demuestra que usando el mismo punto de partida tanto para una región con un recuento pequeño (la sub-región R2) como una región con un recuento largo (la sub-región R3) y al compartir un contexto entre las dos regiones se hace posible una eficiencia de codificación más alta que al no compartir un contexto. Un método en el cual no se comparten contextos entre las dos regiones también es posible. En este caso, se usa lo siguiente para la sub-región R3. ctxldx = NX + 13 + cnt2.
Como se describió arriba, la unidad de derivación de contextos de referencia adyacentes 124g de acuerdo con este ejemplo de configuración se configura para derivar un índice de contexto al añadir juntos un punto de partida predeterminado (por ejemplo, NX descrito arriba) determinado para cada sub-región y una variable (por ejemplo, cnt2 descrita arriba) determinada para cada sub-región, y se configura para establecer los puntos de partida para una pluralidad de sub-regiones para cada una de las cuales se derive una variable usando un método diferente al mismo valor de tal manera que un contexto común se use para la pluralidad de sub-regiones para cada una de las cuales se derive un índice de contexto usando un método diferente.
Otro ejemplo de configuración del tercer ejemplo de configuración de unidad de decodificación de indicadores de presencia/ausencia de coeficientes Otro ejemplo de proceso llevado a cabo por la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-2 se describirá en adelante con referencia a la figura 48 a figura 50.
Las figuras 48A-48B son diagramas que ilustran sub-regiones obtenidas por subdivisión por la unidad de clasificación de frecuencia 124a usando este ejemplo de proceso. La figura 48A ilustra sub-regiones adecuadas para usarse en la decodificación de coeficientes de transformación para valor de luminancia (luma) y la figura 48B ilustra subregiones adecuadas para usarse en la decodificación de coeficientes de transformación para crominancia (croma) . En las figuras 48A y 48B, el valor umbral TH y el valor umbral TH2 se determinan de acuerdo con el valor máximo del ancho y altura de la región de frecuencia objetivo usando las siguientes expresiones: TH = Max (ancho, altura) >> 2 TH2 = 3 x Max (ancho, altura) >> 4.
Aquí, ancho representa el ancho de la región de frecuencia objetivo expresado en términos del componente de frecuencia como una unidad, y altura representa la altura de la región de frecuencia objetivo expresada en términos de un componente de frecuencia como una unidad. Por ejemplo, en caso de que la región de frecuencia objetivo tenga un ancho de 16 componentes (que corresponde a 16 pixeles) y una altura de 4 componentes (que corresponda a 4 pixeles) , llamada una transformación de 16x4, ancho = 16 y altura = 4.
Como se ilustra en la figura 49, la unidad de clasificación de frecuencia 124a clasifica la sub-región Rl y la sub-región R2 de acuerdo con la posición (xC, yC) del coeficiente de transformación objetivo sobre los componentes de frecuencia, usando comparación entre la suma de la coordenada X y la coordenada Y y el valor umbral TH, como se indica en la siguiente expresión. xC+yC < TH (o xC+yC > = TH) Como se ilustra en la figura 49, además, la unidad de clasificación de frecuencia 124a clasifica la sub-región R2 y la sub-región R3 que tiene diferentes números de referencias de acuerdo con un valor (coordenadas de sub- bloque) obtenido al dividir la posición (xC, yC) del coeficiente de transformación objetivo sobre los componentes de frecuencia por un tamaño de sub-bloque dado (aquí, 4) , usando comparación entre la suma de la coordenada X y la coordenada Y en las coordenadas de sub-bloque y el valor umbral TH2 , según se da en la siguiente expresión. (xC>>2) + (yC>>2) < TH2 Aquí, el valor umbral TH2 que distingue entre las dos sub-regiones satisface de preferencia la relación en la cual un valor dado por TH2 x tamaño de sub-bloque (= 4) es más pequeño que el tamaño sz (= Max (ancho, altura)) de la región de frecuencia objetivo. En este caso, la determinación de si es posible o no referirse a un componente de frecuencia adyacente del componente de frecuencia objetivo puede ser omitida. Por ejemplo, 3 x Max (ancho, altura) >> 4 es igual a Max (ancho, altura) x 3/4, y la relación descrita arriba es satisfecha.
Además, en términos del equilibrio entre una reducción en la cantidad de procesamiento y una reducción en eficiencia de codificación, el valor de TH2 es de preferencia menor que o igual a Max (ancho, altura) >> 2 (>> 2 representa un proceso de división por sub-bloque cuando el tamaño de sub-bloque es 4) .
Es decir, si el tamaño de la región de frecuencia objetivo se representa por sz, en términos del equilibrio entre una reducción en la cantidad de procesamiento y una reducción en eficiencia de codificación, los valores umbral TH y TH2 son de preferencia valores menores que o iguales a sz cuando la suma de la coordenada X y la coordenada Y se usa para determinación, y tienen una magnitud menor que o igual a sz/sub-bloque cuando la suma de la coordenada X y la coordenada Y de un sub-bloque es usada. TH y TH2 Descritos arriba satisfacen esta relación.
Además, si el tamaño de la región de frecuencia objetivo es representado por sz, para poder omitir la determinación de si es posible o no referirse a un componente de frecuencia adyacente, los valores umbral TH y TH2 son de preferencia valores menores que sz cuando la suma de la coordenada X y la coordenada Y se usa para determinación, y tienen una magnitud menor que sz/sub-bloque cuando la suma de la coordenada X y la coordenada Y de un sub-bloque es usada. TH y TH Descritos arriba satisfacen esta relación.
Los valores umbral también pueden ser determinados de acuerdo con el tamaño de la región de frecuencia objetivo. Por ejemplo, como se indica en las expresiones abajo, un valor obtenido al desplazar a la derecha el valor máximo del ancho y altura de la región de frecuencia objetivo, y un valor obtenido al sumar o restar un valor predeterminado después del desplazamiento a la derecha puede ser usado: TH2 = 3 x Max (ancho, altura) >> 4 TH2 = (3x Max (ancho, altura) >> 4) + 4 La figura 49 es pseudo código para un proceso de derivación para derivar un índice de contexto cxtldx para luma, que es un índice de contexto que será asignado a una región de frecuencia incluida en cada una de las sub-regiones R0 a R3 ilustradas en la figura 48A. En la figura 49, el contexto para la región R0 se deriva por la unidad de derivación de contextos de posición de baja frecuencia 124b, y el contexto para las regiones Rl a R3 se deriva por la unidad de derivación de contextos de referencia adyacentes 124g.
La unidad de derivación de contextos de referencia adyacentes 124g deriva un índice de contexto sigCtx para, por ejemplo, los componentes de frecuencia incluidos en la sub-región Rl usando la expresión abajo, y suministra el resultado de derivación sigCtx a la unidad de clasificación de frecuencias 124a. sigCtx = sigCtxOffsetRl + Min(2, ctxCnt) De esta manera, el índice de contexto sigCtx puede determinarse usando la suma de punto de partida sigCtxOffsetRl y el valor de desplazamiento ctxCnt . El valor de desplazamiento ctxCnt en esta configuración es un valor obtenido de acuerdo con un valor de recuento. Aquí, el valor de desplazamiento ctxCnt es un valor obtenido al desplazar a la derecha de tal manera que el valor de recuento se reduzca a aproximadamente 1/2, y se determina por ctxCnt = (cnt+1) >> 1 (ec.
A4) .
El proceso de transformación de muchos a uno puede no necesariamente llevarse a cabo usando desplazamiento a la derecha, y puede ser un procesado para cortar el valor de recuento en un valor fijo (aquí, 3) como sigue. ctxCnt = min(3, cnt) En este caso, un índice de contexto se calcula usando sigCtx = sigCtxOffsetRl + ctxCnt.
El recuento cnt de coeficientes de ransformación no cero puede calcularse al cambiar el coeficiente de transformación que será referido de acuerdo con la posición (xC, yC) del coeficiente de transformación objetivo sobre los componentes de frecuencia. Por ejemplo, en el pseudo código ilustrado en la figura 49, la referencia a cinco, en particular, el, c2, c3, c4 y c5, y la referencia a cuatro, en particular, el, c2, c4 y c5, se cambian de acuerdo con la posición. si(( ( xC & 3 ) || ( yC & 3 ) ) && ( { (xC+1) & 3 ) I I ( (yC+2) & 3 ) ) ) ) { cnt = (cl!=0) + (c2!=0) + (c4!=0) + (c5!=0); } si no{ cnt= (cl!=0) + (c2!=0) + (c3!=0) + (c4!=0) + (c5 !=0) ; } La unidad de derivación de contextos de referencia adyacentes 124g deriva además un índice de contexto sigCtx para, por ejemplo, los componentes de frecuencia incluidos en la sub-región R2 usando un punto de partida (aquí, sigCtxOffsetR2) diferente a aquél para la sub-región Rl, usando la expresión abajo, y suministra el resultado de derivación sigCtx a la unidad de clasificación de frecuencia 124a. sigCtx = sigCtxOffsetR2 + Min(2, ctxCnt) El método de cálculo para el valor de desplazamiento ctxCnt es similar a aquél para la sub-región Rl . En lo anterior, un proceso para fijar el valor en 2 o menos es añadido. Esto se puede considerar como un proceso de transformación de muchos a uno.
La unidad de derivación de contextos de referencia adyacentes 124g deriva además un índice de contexto sigCtx para, por ejemplo, los componentes de frecuencia incluidos en la sub-región R3 , que son componentes de alta frecuencia, usando la expresión abajo, y suministra el resultado de la derivación sigCtx a la unidad de clasificación de frecuencia 124a. sigCtx = sigCtxOffsetR2 + Min(2, ctxCnt) En forma similar a la sub-región R2 , el punto de partida de la sub-región R3 es sigCtxOffsetR2. En consecuencia, como se describió arriba, el compartir un contexto puede lograr tanto alta eficiencia de codificación como una reducción en el número de contextos.
El valor de desplazamiento ctxCnt se calcula usando las siguientes expresiones: cnt = (el 1=0) + (c5 !=0) ; ctxCnt = cnt; En la sub-región R3 de componentes de alta frecuencia, por lo tanto, el recuento cnt se calcula con un número más pequeño de referencias que las sub-regiones Rl y R2 de componentes de baja frecuencia. Así, la cantidad de procesamiento puede reducirse.
En las expresiones dadas arriba, el recuento cnt se calcula usando dos puntos, en particular, el y c5 ilustrados en la figura 51A. En este caso, el coeficiente de transformación en las coordenadas (por ejemplo, c3 ilustrado en la figura 10A) de la posición inmediatamente precedente en el orden de procesamiento (si el orden de procesamiento es orden de escaneo invertido, el coeficiente de transformación debajo de la posición del coeficiente de transformación objetivo) no es referido. En consecuencia, la ejecución paralela del proceso de derivación de contextos y el proceso de decodificación puede ser lograda.
Para incrementar más el grado de procesamiento paralelo, es deseable que, además del coeficiente de transformación en las coordenadas de la posición inmediatamente precedente, el coeficiente de transformación en las coordenadas (por ejemplo, el ilustrado en la figura 10A) de la posición que precede inmediatamente la posición inmediatamente precedente en el orden de procesamiento no es referido. En este caso, el valor de recuento puede ser calculado usando dos puntos, en particular, c2 y c5 ilustrados en la figura 51B, como se indica en la siguiente expresión . cnt = (c2!=0) + (c5!=0) Aquí, para la sub-región (R2) que tiene un número más grande de referencias de la sub-región R2 y la sub-región R3 que tiene números de referencias diferentes, el valor de desplazamiento ctxCnt se determina por el proceso de transformación de muchos a uno (también conocido como un proceso de agregación) del valor de recuento usando desplazamiento a la derecha o similar para calcular un índice de contexto, mientras que, para la sub-región (R3) que tiene un número de referencias más pequeño, un índice de contexto se calcula directamente sin usar un proceso para reducir el valor de recuento. En la sub-región R3 , en comparación con la sub-región R2 , el proceso de agregación del valor de recuento puede ser omitido, dando como resultado una reducción en la cantidad de procesamiento. Nótese que se puede dar prioridad a uniformidad en diseño para el procesamiento de dos sub-regiones, y un proceso de agregación similar (tal como desplazamiento a la derecha para la sub-región R3) se puede llevar a cabo para dos sub-regiones . El proceso de transformación de muchos a uno del valor de recuento puede considerarse como de un proceso para reducir el intervalo de los valores del valor de recuento.
También para croma, procesamiento similar a aquél para luma es llevado a cabo en la sub-región RO, la sub-región Rl y la sub-región R3 en la figura 48B. Primero, la unidad de clasificación de frecuencia 124a clasifica la sub-región Rl y la sub-región R3 que tienen diferentes números de referencias, usando, como se ilustra en la figura 50, comparación entre la suma de la coordenada X y la coordenada Y en las coordenadas de sub-bloque que se obtiene al dividir la posición (xC, yC) del coeficiente de transformación objetivo sobre los componentes de frecuencia entre un tamaño de sub-bloque dado (aquí, 4) y el valor umbral TH2 calculado a partir de la suma del ancho y altura de la región de frecuencia. Como se ilustra en la figura 50, además, para la sub-región RO , la unidad de derivación de contextos en posición de baja frecuencia 124b deriva un contexto usando un contexto de posición, y, para las sub-regiones Rl y R3 , la unidad de derivación de contextos de referencia adyacentes 124g deriva un contexto usando un contexto de referencia adyacente, la sub-región Rl y la sub-región R3 , que usan diferentes números de referencias, comparten un contexto. Además, para la sub-región Rl que tiene un gran número de referencias, un índice de contexto se derivó usando un proceso de agregación de los valores de recuento. Para la sub-región R2 que tiene un pequeño número de referencias, un índice de contextos se deriva sin usar procesos de agregación de los valores de recuento.
En el ejemplo descrito arriba, un pequeño valor de recuento se usa para una región de alta frecuencia. Así, la cantidad de procesamiento puede reducirse, en comparación con el caso en donde un gran valor de recuento se usa para una región de baja frecuencia. Además, para una sub-región que usa un pequeño valor de recuento, un índice de contexto se deriva sin usar un proceso de transformación de muchos a uno tal como desplazamiento a la derecha o fijación del valor de recuento. En consecuencia, la cantidad de procesamiento puede reducirse más.
De acuerdo con la configuración descrita arriba, en una pluralidad de sub-regiones para cada una de las cuales se usa un método de derivación diferente, los puntos de partida determinados para las sub-regiones respectivas se hacen iguales. En consecuencia, es posible reducir la cantidad de procesamiento, sin incrementar el número de contextos, mientras se logra alta eficiencia de codificación.
Como se indica abajo, la unidad de derivación de contextos de referencia adyacentes 124g puede cambiar el coeficiente de transformación que será referido, de acuerdo con la desviación.
Más específicamente, la unidad de derivación de contextos de referencia adyacentes 124g de acuerdo con este ejemplo de configuración puede configurarse para derivar un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R3 usando la expresión abajo y para suministrar el índice de contexto ctxldx derivado a la unidad de clasificación de frecuencias 124a. ctxldx = NX + 13 + min(3, pref_y_flag? cnty:cntx) Aquí, pref_y_flag es un indicador de preferencia vertical pref_y_flag derivado tomando en cuenta una desviación de un coeficiente de transformación. El indicador de preferencia vertical puede usarse para determinar cuál de cnty y cntx referir. El indicador de preferencia vertical puede determinarse usando los siguientes tres métodos.
¦ Determinación a base de la posición objetivo Si uiPosY > uiPosX, el indicador de preferencia vertical se establece en verdadero. Es decir, pref_y_flag = uiPosY > uiPosX ? verdadero : falso . · Determinación con base en la posición del último coeficiente de transformación no cero en el orden de escaneo.
Si last_significant_coeff_x < last_significant_coeff_y, el indicador de preferencia vertical se establece en verdadero. Es decir, pref_y_flag = last_significant_coeff_x < last_significant_coeff_y ? verdadero : falso .
• Determinación con base en una secuencia de escaneo inmediatamente precedente.
Si last_cntx < last_cnty, el indicador de preferencia vertical se establece en verdadero. Es decir, pref_y_flag = last_cntx < last_cnyt ? verdadero . falso .
La determinación del indicador de preferencia vertical no se limita a los tres métodos descritos arriba.
También en un caso en donde se use un indicador de preferencia vertical, el mismo contexto puede ser compartido entre el recuento de referencia normal y el recuento de referencia limitado. Esto puede lograrse al establecer el punto de partida del contexto para la sub-región R3 en NX+8, que es lo mismo que el punto de partida para la sub-región R2, como sigue: ctxldx = NX + 8 + min(3, pref_y_flag? Cnty:cntx), en donde cnty y cntx representan cada uno el número de coeficientes de transformación no cero decodificados para componentes de frecuencia que serán referidos entre componentes de frecuencia adyacentes del componente de frecuencia objetivo. El número de componentes de frecuencia que será referido para poder derivar cnty y cntx está en el intervalo de 2 a 4 , inclusive, que es más pequeño que el número de referencias de cnt descrito arriba, o 5. En lo sucesivo, cnty y cntx también son denominados recuento de referencia de prioridad.
A continuación se describirá con referencia a las figuras 15A y 15B un método de cálculo de cnty y cntx. Las figuras 15A y 15B ilustran un componente de frecuencia objetivo x en caso de que el orden de procesamiento sea orden de escaneo hacia adelante, y coeficientes de transformación (el a c5) decodificados para componentes de frecuencia de referencia adyacentes del componente de frecuencia objetivo x.
Primero, las figuras 15A y 15B ilustran el caso en donde el número de referencias es 4. Si el número de referencias es 4, cnty y cntx se calculan con referencia a el, c3 , c4 y c5 ilustrados en la figura 15A o el, c2, c3 y c4 ilustrados en la figura 15B, usando las siguientes expresiones . cnty = (cl!=0) + (c3!=0) + (c4!=0) + (c5!=0) cntx = (cl!=0) + (c2!=0) + (c3!=0) + (c4!=0) Cada término toma 1 si el argumento entre paréntesis es verdadero y toma 0 si el argumento entre paréntesis es falso. Esto aplica símilármente a la siguiente descripción.
Si el número de referencias es igual a 3, cnty y cntx se calculan con referencia a el, c3 y c5 ilustrados en la figura 15C o el, c2 y c3 ilustrados en la figura 15D, usando las siguientes expresiones. cnty = (cl!=0) + (c3!=0) + (c5!=0) cntx = (cl!=0) + (c2!=0) + (c3!=0) Si el número de referencia es igual a 3, cnty y cntx pueden calcularse con referencia a c3, c4 y c5 ilustrados en la figura 15E o el, c2 y c4 ilustrados en la figura 15F, usando las siguientes expresiones. cnty = (c3!=0) + (c4!=0) + (c5!=0) cntx = (cl!=0) + (c2!=0) + (c4!=0) Si el número de referencias es igual a 2, cnty y cntx pueden calcularse con referencia a c3 y c5 ilustrados en la figura 15G o el y c2 ilustrados en la figura 15H, usando las siguientes expresiones. cnty = (c3!=0) + (c5!=0) cntx = (cl!=0) + (c2!=0) Como se describió arriba, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración deriva un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación, con base en el número de coeficientes de transformación no cero decodificados incluidos en una región de referencia establecida cerca de la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo. En la pluralidad de sub-regiones descritas arriba, el conjunto de regiones de referencia en una sub-región del lado de alta frecuencia es más pequeño que el conjunto de regiones de referencia en una sub-región del lado de baja frecuencia. Así, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente en la cual un conjunto de regiones de referencia en una sub-región del lado de baja frecuencia y un conjunto de regiones de referencia en una sub-región del lado de alta frecuencia tienen el mismo tamaño, y también es posible lograr alta eficiencia de codificación.
Cuarto ejemplo de configuración de unidad de decodificación de indicadores de presencia/ausencia de coeficientes Un cuarto ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con esta modalidad se describirá con referencia a la figura 17. Este ejemplo de configuración es una configuración obtenida al combinar el primer ejemplo de configuración y el tercer ejemplo de configuración. A los elementos que tengan las mismas funciones que los elementos ilustrados en el primero a tercer ejemplos de configuración les son asignados los mismos números, y una descripción de los mismos es omitida.
La figura 17 es un diagrama de bloques que ilustra una configuración de una unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración. Como se ilustra en la figura 17, una unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124a' de acuerdo con este ejemplo de configuración incluye una unidad de clasificación de frecuencias 124a' , una unidad de derivación de contextos de posición de baja frecuencia 124b, una unidad de derivación de contextos de referencia adyacentes 124g, y una unidad de derivación de contextos de posición de alta frecuencia 124d.
Este ejemplo de configuración es diferente del tercer ejemplo de configuración descrito arriba en que una sub-región R4 se proporciona adicionalmente y un índice de contexto ctxldx para componentes de frecuencia incluidos en R4 se deriva usando el contexto de posición dado en el primer ejemplo de configuración.
Así, también en este ejemplo de configuración, para los componentes de frecuencia incluidos en la sub-región R0, de manera similar al primer ejemplo de configuración descrito arriba, la unidad de derivación de contextos de posición de baja frecuencia 124b deriva un índice de contexto ctxldx usando la siguiente expresión. ctxldx = NX + 2 X uiPosX + uiPosY Para los componentes de frecuencia incluidos en la sub-región Rl, la unidad de derivación de contextos de referencia adyacentes 124g deriva un índice de contexto ctxldx usando la siguiente expresión. ctxldx = NX + 3 + min(4, cnt) Para los componentes de frecuencia incluidos en la sub-región R2; la unidad de derivación de contextos de referencia adyacentes 124g deriva un índice de contexto ctxldx usando la siguiente expresión. ctxldx = NX + 8 + min(4, cnt) La unidad de derivación de contextos de referencia adyacentes 124g también deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R3 , usando cnt2 (recuento de referencia limitado) con un número más pequeño de referencias que cnt usado para las regiones de baja frecuencia Rl y R2 , de acuerdo con la expresión abajo. También en este ejemplo, cnt2 es referido también como un recuento de referencia limitado. ctxldx = NX + 8 + cnt2 La unidad de derivación de contextos de posición de alta frecuencia 124d de acuerdo con este ejemplo de configuración deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R4, usando la siguiente expresión, ctxldx = NX + 13 En el ejemplo descrito arriba, el número de contextos para la sub-región R4 es 1. Así, si se determina que la sub-región actual es la sub-región R4 , el proceso para derivar más índice de contexto ctxldx no es necesario. El experimento de los inventores demuestra que también si el número de contextos es igual a l, un valor umbral TH4 es determinado adecuadamente, haciendo posible reducir la cantidad de procesamiento mientras se logra alta eficiencia de codificación.
En el ejemplo descrito arriba, ya que el número de contextos para la sub-región R4 es igual 1, la unidad de derivación de contextos de posición de alta frecuencia 124d deriva un índice de contexto usando un valor fijo.
La figura 18 ilustra el compartir algunos contextos entre sub-regiones R2 y R3 entre sub-regiones R0 a R4 que constituyen una región de frecuencia objetivo. Más específicamente, los contextos identificados por los mismos índices de contexto (aquí, NX8 a NX+11) son compartidos entre el recuento de referencia normal usado en la sub-región R2 y el recuento de referencia limitado usado en la sub-región R3. En la figura 18, el número de contextos usados para la sub- región R4 es igual a 1. Sin embargo, como abajo, el número de contextos puede ser dos. Por ejemplo, una configuración para distinguir entre dos contextos de acuerdo con el tamaño de región de frecuencia: ctxldx = (sz ==16)? NX + 13:NX + 14, o una configuración para distinguir entre dos contextos usando comparación entre la coordenada X y la coordenada Y: ctxldx = (uiPosY>uiPosX) ? NX+13:NX+14 puede ser posible.
Como en el primer ejemplo de configuración, un contexto puede derivarse generalmente usando el siguiente formato . ctxldx = NX + 13 + min(maxR3, (uiPosX+uiPosY-TH2 ) >> desplazamiento) Como se ilustra en la figura 18, además, la unidad de clasificación de frecuencia 124a' usada en esta modalidad clasifica componentes de frecuencia en cinco sub-regiones R0 a R4. Más específicamente, la unidad de clasificación de frecuencia 124a' lleva a cabo el siguiente proceso de clasificación : • Clasificación de un componente de frecuencia que satisfaga uiPosX+uiPosY < 2 en la sub-región R0.
• Clasificación de un componente de frecuencia que satisfaga 2 < uiPosX+uiPosY < TH1 en la sub-región Rl .
• Clasificación de un componente de frecuencia que satisfaga TH1 uiPosX+uiPosY < TH2 en la sub-región R2.
• Clasificación de un componente de frecuencia que satisfaga TH2 < uiPosX+uiPosY < TH3 en la sub-región R3.
· Clasificación de un componente de frecuencia que satisfaga TH3 < uiPosX+uiPosY en la sub-región R4.
TH1 descrito arriba puede establecerse en, por ejemplo, 5. TH2 y TH3 Pueden determinarse de acuerdo con sz usando las siguientes expresiones.
TH2 = sz x 7 >> 3 TH3 = sz + 6 Si el tamaño de esta región de frecuencia es 16x16, TH2 = 14 y TH3 = 22. Si el tamaño de esta región de frecuencia es 32x32, TH2 = 28 y TH3 = 38.
Además, para mitigar una degradación de rendimiento a bajo QP, los valores umbral TH2 y TH3 pueden establecerse como sigue.
TH2 = sz TH3 = sz + 8 Es decir, cuando el tamaño de la región de frecuencia sea 16x16, TH2 16 y TH3 = 24 pueden ser establecidos. Cuando e tamaño de región de frecuencia sea 32x32, TH2 = 32 y TH3 = 40 pueden ser establecidos.
Las expresiones generales para calcular los valores umbral son TH2 = sz x a2/b2 + c2 TH3 = sz x a3/b3 + c3, en donde a2 , b2 , c2, a3, b3 y c3 son constantes predeterminadas. El procesamiento de división entre b2 y b3 puede llevarse a cabo usando operación de desplazamiento. En general, entre más grandes sean los valores umbral, más alta se vuelve la eficiencia de codificación. Sin embargo, el área del sub-espacio del lado de lata frecuencia R3 y sub-espacio R4, en donde la cantidad de procesamiento reducida, se hace más pequeña, disminuyendo la ventaja de una reducción en la cantidad de procesamiento.
En caso de que una constante usada para el cálculo de los valores umbral dependa del tamaño sz, el cálculo con referencia a una tabla puede omitir ramificación que depende del tamaño. Si la constante no depende del tamaño, un proceso para referirse a una tabla puede ser omitido. Si la constante no depende del tamaño, los valores umbral pueden ser determinados como sigue.
TH2 = sz x a/b + c TH3 = sz x a/b + c Los valores umbral pueden controlarse usando una relación de a/b o la adición de c . Si los valores umbral van a ser controlados usando a/b, la relación del área de un sub-espacio del lado de alta frecuencia al área de un sub-espacio del lado de baja frecuencia no depende del tamaño sz, mientras que si los valores umbral van a ser controlados usando la adición de c, la relación de las áreas depende del tamaño. En el experimento de los inventores, para 32x32, no habrá problema si la relación de área en la sub-región R4 es más grande que aquella para 16x16, y de esta manera es adecuado usar la adición de c para el cálculo de TH3. En este ejemplo, las expresiones abajo que no son las expresiones descritas arriba también pueden ser usadas .
TH2 = sz x 7 >> 3 TH3 = sz + 12 De acuerdo con el experimento de los inventores, TH2 menor que o igual a sz - 2 es adecuado para obtener una gran cantidad de procesamiento, y TH3 mayor que o igual a sz es adecuado para lograr alta eficiencia de codificación. Por ejemplo, las siguientes expresiones son adecuadas además de las expresiones anteriores. Además, si TH2 = sz - 1, la determinación de si es posible o no referirse a un componente de frecuencia adyacente del componente de frecuencia objetivo puede omitirse para la sub-región Rl . En consecuencia, en términos de aseguramiento, TH2 = sz-1 puede usarse aunque la ventaja de una reducción en la cantidad de procesamiento puede disminuirse ligeramente.
TH2 = sz x 7 >> 3 TH3 = sz x 11 >> 3 Como se describió arriba, de acuerdo con la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración, el intervalo que un índice de contexto será asignado a cada indicador de presencia/ausencia de coeficientes de transformación puede tomar en una sub-región del lado de frecuencia más alta que el valor umbral predeterminado TH2 es más pequeño que el umbral de valores que puede ser tomado en la región de referencia establecida en una sub-región del lado de baja frecuencia. Así, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia. Además, un índice de contexto para otra sub-región del lado de frecuencia más alta que el valor umbral TH3 se deriva con base en la posición. De esta manera, es posible reducir más la cantidad de procesamiento.
En una forma de la configuración anterior, en dos sub-regiones para las cuales un valor de recuento se deriva usando un método diferente, los puntos de partida determinados para las sub-regiones respectivas se hacen iguales. En consecuencia, es posible reducir la cantidad de procesamiento, sin incrementar el número de contextos, mientras se logra alta eficiencia de codificación.
En una forma de la configuración anterior, además, el número de contextos derivado con base en la posición es tan pequeño como 1 ó 2. Esto puede minimizar el incremento en el número de contextos, y puede reducir la cantidad de procesamiento para distinguir entre contextos. Es posible reducir la cantidad de procesamiento mientras se logra alta eficiencia de codificación.
Como se describió arriba, en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración, la unidad de clasificación de frecuencia 124a' se configura para clasificar la región de frecuencia objetivo en al menos tres sub-regiones de acuerdo con la posición del indicador de presencia/ausencia de coeficientes de transformación que será procesado. La unidad de derivación de contextos de referencia adyacentes 124g se refiere a NI coeficientes de transformación no cero decodificados (en donde NI es un número natural) para una primera sub-región (la sub-región Rl o R2) y se refiere a N2 coeficientes de transformación no cero decodificados (en donde N2 es un número natural que satisface N2 < NI) para una segunda sub-región (la sub-región R3) para derivar un índice de contexto. Para una tercera sub-región (la sub-región R4) , la unidad de derivación de contextos de posición de alta frecuencia 124d deriva un índice de contexto de acuerdo con la posición del indicador de presencia/ausencia de coeficientes de transformación.
De acuerdo con la configuración descrita arriba, una sub-región para la cual el número de coeficientes de transformación no cero decodificados que serán derivados para poder referirse a un índice de contexto se establece para ser más pequeña, y una sub-región para la cual un índice de contexto se deriva con base en la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo se combinan. Así, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente, mientras se logra alta eficiencia de codificación.
Quinto ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Un quinto ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con esta modalidad se describirá con referencia a las figuras 19 a figura 21. La figura 19 es un diagrama de bloques que ilustra una configuración de una unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-3 de acuerdo con este ejemplo de configuración. La figura 20 es un diagrama que ilustra secuencias de escaneo en las cuales el número de coeficientes de transformación no cero es contado. Las figuras 21A-21C son diagramas que ilustran objetivos que serán referidos para derivar un contexto.
Como se ilustra en la figura 19, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-3 de acuerdo con este ejemplo de configuración incluye una unidad de clasificación de frecuencia 124a, una unidad de derivación de contextos de posición de baja frecuencia 124b, y una unidad de derivación de contextos de región de alta frecuencia 124h. La unidad de derivación de contextos de región de alta frecuencia 124h incluye una unidad de recuento de referencias adyacentes 124i y una unidad de recuento de coeficientes de transformación no cero de secuencia de escaneo precedente 124j . A los elementos que tengan las mismas funciones que los elementos ilustrados en el primero a tercer ejemplos de configuración descritos arriba se les dan los mismos números, y una descripción de los mismos se omite.
Este ejemplo de configuración es diferente del primer ejemplo de configuración descrito arriba en términos de un método de derivación para un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R3.
Así, también en este ejemplo de configuración, para los componentes de frecuencia incluidos en la sub-región R0, de manera similar al primer ejemplo de configuración descrito arriba, un índice de contexto ctxldx se deriva usando la siguiente expresión. ctxldx = X + 2 X uiPosX + uiPosY Para los componentes de frecuencia incluidos en la sub-región Rl, un índice de contexto ctxldx se deriva usando la siguiente expresión. ctxldx = NX + 3 + min(4, cnt) Para los componentes de frecuencia incluidos en la sub-región R2 , un índice de contexto ctxldx se deriva usando la siguiente expresión. ctxldx = NX + 8 + min(4, cnt) Para los componentes de frecuencia incluidos en la sub-región R3 , en contraste, la unidad de derivación de contextos de región de alta frecuencia 124h deriva un índice de contexto ctxldx usando el siguiente método.
Unidad de derivación de contextos de región de alta frecuencia 124h La unidad de derivación de contextos de región de alta frecuencia 124h tiene una configuración para derivar un índice de contexto ctxldx para el componente de frecuencia que será decodificado, con base en el número de coeficientes de transformación no cero decodificados para componentes de frecuencia adyacentes del componente de frecuencia que será decodificado y el número de coeficientes de transformación no cero incluido en la secuencia de escaneo inmediatamente precedente .
La unidad de recuento de referencias adyacentes 124i incluida en la unidad de derivación de contextos de región de alta frecuencia 124h se refiere a un coeficiente de transformación decodificado adyacente al componente de frecuencia objetivo, y deriva ctn2' usando la expresión abajo. cnt2' también es referido como un recuento de referencia limitado. cnt2' = (cl!=0) + (c3!=0) Aquí, el y c3 son coeficientes de transformación decodificados para componentes de frecuencia adyacentes del componente de frecuencia objetivo x ilustrado en la figura 21A.
La unidad de recuento de coeficientes de transformación no cero de secuencias de escaneo precedentes 124j incluida en la unidad de derivación de contextos de región de alta frecuencia 124h deriva cnt3 usando la siguiente expresión. cnt3= (last_cnt>THc) ? 1:0 Aquí, el valor umbral THc puede usar, por ejemplo, THc = 1, que no limita esta modalidad. THc Puede ser un valor umbral que dependa de uiPosX y uiPosY. Más específicamente, THc puede ser un valor umbral que tenga una correlación positiva con el número de componentes de frecuencia que se encuentren a lo largo de la secuencia de escaneo incluyendo el componente de frecuencia objetivo.
Además, como se describió arriba, last cnt representa el número de coeficientes de transformación no cero que apareció en la secuencia de escaneo que precede a la secuencia de escaneo actual por uno.
La unidad de recuento de coeficientes de transformación no cero de secuencias de escaneo precedentes 124j también puede ser configurada para derivar cnt3 usando la siguiente expresión. cnt3= (last_cnt2>THc) ? 1:0 Aquí, last_cnt2 representa el número de coeficientes de transformación no cero que aparecieron en la secuencia de escaneo que precede a la secuencia de escaneo actual por dos .
La figura 20 ilustra un ejemplo de una secuencia de escaneo que será procesada Lx, una secuencia de escaneo inmediatamente precedente Lx+1 que precede la secuencia de escaneo que será procesada por una secuencia de escaneo, y una segunda secuencia de escaneo inmediatamente precedente Lx+2 que precede la secuencia de escaneo que será procesada por dos secuencias de escaneo cuando el orden de escaneo es orden de escaneo inverso.
La unidad de recuento de coeficientes de transformación no cero de secuencias de escaneo precedentes 124j actualiza, por ejemplo, last_cnt y last_cnt2 como abajo cuando el procesamiento para la secuencia de escaneo subsecuente va a ser llevado a cabo después de que se complete el procesamiento para la secuencia de escaneo actual .
Iast_cnt2 = last_cnt last_cnt = curr_cnt Aquí, como se describió arriba, curr_cnt representa el número de coeficientes de transformación no cero en la secuencia de escaneo actual.
La unidad de derivación de contextos de región de alta frecuencia 124h de acuerdo con este ejemplo de configuración se refiere a cnt2' derivado por la unidad de recuento de referencias adyacentes 12 i y cnt3 derivado por la unidad de recuento de coeficientes de transformación no cero de secuencias de escaneo precedentes 124j para derivar un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R3 usando la expresión abajo, y suministra el índice de contextos ctxldx derivado a la unidad de clasificación de frecuencia 124a. ctxldx = NX + 13 + min(3, cnt2'+cnt3) Como se describió arriba, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración se configura para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que se encuentra a lo largo de la secuencia de escaneo actual en una sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones descritas arriba, con base en el número de coeficientes de transformación no cero que se encuentren a lo largo de la secuencia de escaneo precedente y el número de coeficientes de transformación no cero decodificados incluidos en una región de referencia establecida cerca de la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo. La región de referencia establecida en la sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones descritas arriba es más pequeña que la región de referencia establecida en una sub-región del lado de baja frecuencia. Así, es posible reducir de manera más efectiva la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, que una configuración existente, y también es posible lograr alta eficiencia de codificación.
La unidad de recuento de referencias adyacentes 124i puede ser configurada para derivar cnt2' usando la siguiente expresión. cnt2 ' =pref_y_flag? cnty 1 : cnt ' , en donde el recuento de referencia de prioridad cnty' puede derivarse para, por ejemplo, los componentes de frecuencia de referencia ilustrados en la figura 2IB usando los coeficientes de transformación decodificados c3 y c5 de acuerdo con cnty' = (c3!=0) + (c5!=0), o puede derivarse para los componentes de frecuencia de referencia ilustrados en la figura 21C usando los coeficientes de transformación decodificados el y c2 de acuerdo con cntx' = (el !=0) + (c2 !=0) .
Sexto ejemplo de configuración de unidad de decodificación de indicadores de presencia/ausencia de coeficientes Un sexto ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con esta modalidad se describirá con referencia a la figura 22. La figura 22 es un diagrama de bloques que ilustra una configuración de una unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-4 de acuerdo con este ejemplo de configuración.
Como se ilustra en la figura 22, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-4 de acuerdo con este ejemplo de configuración incluye una unidad de clasificación de frecuencia 124a, una unidad de derivación de contextos de posición de baja frecuencia 124b, y una unidad de derivación de contextos de referencia adyacentes 124k. A los elementos que tengan las mismas funciones que los elementos ilustrados en el primero a cuarto ejemplos de configuración se les dan los mismos números, y una descripción de los mismos se omite.
Este ejemplo de configuración es diferente del primer ejemplo de configuración descrito arriba en términos de un método de derivación para un índice de contextos ctxldx para los componentes de frecuencia incluidos en las sub-regiones Rl a R3.
Así, también en este ejemplo de configuración, para los componentes de frecuencia incluidos en la sub-región R0, de manera similar al primer ejemplo de configuración descrito arriba, un índice de contexto ctxldx se deriva usando la siguiente expresión. ctxldx = NX + 2 x uiPosX + uiPosY Para los componentes de frecuencia incluidos en la sub-región Rl, en contraste, la unidad de derivación de contextos de referencia adyacentes 124k deriva un índice de contexto ctxldx usando el siguiente método. ctxldx = NX + 3 + min(4, pref_y_flag? cnty:cntx) Además, para los componentes de frecuencia incluidos en la sub-región R2 , la unidad de derivación de contextos de referencia adyacentes 124k deriva un índice de contexto ctxldx usando el siguiente método. ctxldx = NX + 8 + min(4, pref_y_flag? cnty:cntx) Más aún, para los componentes de frecuencia incluidos en la sub-región R3, la unidad de derivación de contextos de referencia adyacente 124k deriva un índice de contexto ctxldx usando el siguiente método. ctxldx = NX + 13 + min(4, pref_y_flag? cnty:cntx) Aq í, pref_y_flag, cnty y cntx han sido descritos arriba, y no se describen aquí.
Como se describió arriba, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración se configura para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación, con base en el número de coeficientes de transformación no cero decodificados incluidos en un conjunto de regiones de referencia cerca de la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo. El número de coeficientes de transformación decodificados incluido en la región de referencia descrita arriba es menor que o igual a 4. De esta manera, sólo se necesita hacer referencia a un número de coeficientes de transformación decodificados más pequeño que aquél en una configuración existente. De acuerdo con la configuración descrita arriba, por lo tanto, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente, y también es posible lograr alta eficiencia de codificación.
Otro ejemplo de configuración 1 de unidad de decodificación de coeficientes de transformación 120 Aunque la unidad de decodificación de coeficientes de transformación 120 de acuerdo con esta modalidad ha sido descrita enfocándose en un ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes, la configuración de la unidad de decodificación de coeficientes de transformación 120 de acuerdo con esta modalidad no está limitada a los ejemplos descritos arriba.
Por ejemplo, el conjunto de parámetros de secuencia SPS en los datos codificados #1 puede incluir un indicador (indicador de restricción) high_coeff_restriction_flag que restringa la codificación de un componente de alta frecuencia. En esta configuración, la unidad de decodificación de coeficientes de transformación 120 se configura para decodificar el indicador high_coeff_restriction_flag y para restringir la decodificación de coeficientes de transformación de la siguiente manera. Si high_coeff_restriction_flag = 0, la unidad de decodificación de coeficientes de transformación 120 decodifica coeficientes de transformación para todos los componentes de frecuencia incluidos en la región de frecuencia que será procesada. Si high_coeff_restriction_flag 1, la unidad de decodificación de coeficientes de transformación 120 decodifica sólo un coeficiente de transformación para un componente de frecuencia que satisfaga la siguiente condición. uiPosX+uiPosY < TH2.
Además, la restricción descrita arriba puede aplicarse sólo cuando la TU que será procesada tenga un tamaño específico (por ejemplo, 32x32 ó 16x16) .
La figura 23 es un diagrama que ilustra una región R0' que incluye componentes de frecuencia que satisfacen uiPosX+uiPosY < TH2, y una región restante Rl' en la región de frecuencia que será procesada. En la figura 23, para los componentes de frecuencia incluidos en la región R0', se decodifican coeficientes de transformación. Para los componentes de frecuencia incluidos en la región Rl', coeficientes de transformación no se decodifican y se establecen uniformemente en un valor predefinido (por ej emplo, 0 ) .
El valor umbral TH2 descrito arriba puede ser un valor fijo, por ejemplo, TH = 14, y el elemento de sintaxis que indique el valor del valor umbral TH2 puede ser incluido en los datos codificados #1.
El elemento de sintaxis que indica el valor del valor umbral TH2 puede ser, por ejemplo, un elemento de sintaxis sps_coeff_restriction_value_minusl4_div2 que indique el valor dado por (TH2 - 14) /2.
Además, si se aplica la restricción descrita arriba puede determinarse de acuerdo con el nivel . El término nivel significa el medio al cual un intervalo de valores usado en un elemento de sintaxis es restringido. El nivel de restricción varía de 0 a un valor predeterminado, en el cual un nivel con un valor más pequeño corresponde a restricción más alta. El nivel se usa para restringir, en particular, la complejidad de decodificación, y el ancho o altura de una imagen, una velocidad de cuadros, y así sucesivamente y se incluye en el elemento de sintaxis que será restringido. El perfil se usa para la restricción de las herramientas que serán usadas. Si el elemento de sintaxis difiere dependiendo de la herramienta, el elemento de sintaxis cambia de acuerdo con el perfil. El nivel se determina para cada perfil. El perfil y nivel son codificados usando, por ejemplo, pero no limitados a, el conjunto de parámetros de secuencia.
Por ejemplo, como se ilustra en la figura 24A, la restricción puede establecerse para un nivel de 0 a 2, inclusive, y puede no establecerse una restricción para un nivel de 3 o más.
Como alternativa, el valor umbral puede cambiarse de manera adaptiva de acuerdo con el nivel. Por ejemplo, como se ilustra en la figura 24B, la restricción para TH2 = 14 puede aplicarse para un nivel de O ó 1, la restricción para TH2 = 22 puede aplicarse para un nivel de 2 , la restricción para TH2 = 30 puede aplicarse para un nivel de 3, y ninguna restricción puede aplicarse para un nivel de 4.
Si el intervalo de valores utilizable en un elemento de sintaxis va a ser restringido, el intervalo que será restringido puede determinarse usando, como una expresión de determinación, la expresión abajo en la cual la suma de la coordenada x y la coordenada y de la posición de la región de frecuencia se compara con el valor umbral. uiPosX+uiPosY < TH2, o usando una posición de sub-bloque obtenida al dividir la posición de la región de frecuencia entre un tamaño de sub-bloque (aquí, 4) , como se indica en la siguiente expresión, por comparación entre la suma de la coordenada x y la coordenada y en las coordenadas de sub-bloques y el valor umbral . (uiPosX>>2) + (uiPosY>>2) < (TH2>>2) Es decir, si el tamaño de la región de frecuencia objetivo se representa por sz, en términos del equilibrio entre una reducción en la cantidad de procesamiento y una degradación en eficiencia de codificación, los valores umbral TH y TH2 son de preferencia valores menores que o igual a sz cuando la suma de la coordenada X y la coordenada Y se usa para determinación, y tienen una magnitud menor que o igual a sz/sub-bloque cuando la suma de la coordenada X y la coordenada Y de un sub-bloque es usada. TH y TH2 descritos arriba satisfacen esta relación.
Además, si el tamaño de la región de frecuencia objetivo se representa por sz, para poder omitir la determinación de si es posible o no referirse a un componente de frecuencia adyacente, los valores umbral TH y TH2 son de preferencia valores menores que sz cuando la suma de la coordenada X y la coordenada Y se usa para determinación, y tienen una magnitud menor que sz/sub-bloque cuando la suma de la coordenada X y la coordenada Y de un sub-bloque es usada. TH y TH2 descritos arriba satisfacen esta relación.
El valor umbral también puede determinarse de acuerdo con el tamaño de la región de frecuencia objetivo. Por ejemplo, como se indica en las expresiones abajo, un valor obtenido al desplazar a la derecha el valor máximo del ancho y altura de la región de frecuencia objetivo, y un valor obtenido al sumar o restar un valor predeterminado después de desplazar a la derecha puede ser usado.
TH2 = 3 x Max (ancho, altura) >> 4 TH2 = (3 x Max (ancho, altura) >> 4) + 4 Los datos codificados #1 que tienen la configuración descrita arriba incluyen un indicador de restricción que indica si se decodifica o no un coeficiente de transformación del lado de alta frecuencia en cada región de frecuencia objetivo que corresponda a una región de unidad. Si el indicador de restricción indica que un coeficiente de transformación del lado de alta frecuencia no es decodificado, la unidad de decodificación de coeficientes de transformación 120 puede omitir el proceso de decodificación para el coeficiente de transformación del lado de alta frecuencia. En consecuencia, la cantidad de procesamiento para decodificar coeficientes de transformación puede ser reducida.
Otro ejemplo de configuración 2 de la unidad de decodificación de coeficientes de transformación 120 Además, si el tamaño de la TU objetivo es un tamaño comparativamente pequeño tal como 8x8 pixeles, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes incluida en la unidad de decodificación de coeficientes de transformación 120 puede ser configurada para derivar un índice de contexto ctxldx usando las expresiones abajo y para asignar el índice de contexto ctxldx a cada componente de frecuencia. ctxldx = N8 + 4 X tbl [uiPosY] + tbl [uiPosX] tbl = {0, 1, 1, 2, 2, 3, 3, 3}.
Aquí, N8 es el punto de partida de un índice de contexto cuando el tamaño de la región de frecuencia es 8x8.
La unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración interpreta un bin suministrado desde la unidad de decodificación de bits 132, y decodifica el elemento de sintaxis significant_coeff_flag para el componente de frecuencia que será decodificado, usando el índice de contexto ctxldx asignado al componente de frecuencia que será decodificado . El elemento de sintaxis decodificado significant_coeff_flag es almacenado en la unidad de memoria de coeficientes decodificados 126, y es referenciado por la unidad de decodificación de valores de coeficiente 125. El índice de contextos ctxldx usado para decodificación se suministra a la unidad de grabación/actualización de contextos 131.
La figura 25A ilustra los valores de índices de contexto ctxldx derivados por una unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con un ejemplo comparativo, y la figura 25B ilustra los valores de índices de contexto ctxldx derivados por la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración.
Aquí, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con el ejemplo comparativo es configurada para derivar un índice de contexto ctxldx usando ctxldx = N8 + 4 X tbl [uiPosY] + tbl [uiPosX] tbl = {O, O, 1, 1, 2, 2, 3, 3} Como se ilustra en la figura 25B, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración asigna índices de contexto ctxldx más finos a componentes de baja frecuencia que la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con el ejemplo comparativo.
Como se ilustra en la figura 25B, la unidad de unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración divide un componente de baja frecuencia en regiones más pequeñas que un componente de alta frecuencia, y asigna diferentes índices de contexto ctxldx a las regiones individuales.
Usando la configuración descrita arriba, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración puede decodificar eficientemente significant_coeff_flag para el lado componente de baja frecuencia, dando como resultado un incremento en eficiencia de codificación.
El proceso de derivación para el índice de contexto ctxldx por la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración no está limitado a aquél en el ejemplo descrito arriba. Por ejemplo, ctxIdxH puede calcularse usando las expresiones debajo de tal forma que los componentes de frecuencia cerca de PosX = 0 se dividen en secciones más pequeñas, y los valores individuales puedan establecerse en el índice de contextos ctxldx. ctxIdxH = N8 + 4 x (uiPosY >>1) + tbl [uiPosX] tbl = {0, 1, 1, 2, 2, 3, 3, 3} La figura 25C ilustra un ejemplo de ctxIdxH derivado por la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración.
Con el uso de esta configuración, significant_coeff_flag para componentes de frecuencia cerca de PosX = 0 pueden decodificarse eficientemente, dando como resultado un incremento en eficiencia de codificación.
Además, ctxIdxV puede calcularse usando las expresiones debajo de tal manera que los componentes de frecuencia cerca de PosY = 0 se dividen en secciones más pequeñas, y los valores individuales pueden establecerse en el índice de contexto ctxldx. ctxIdxV = N8 + 4 X tbl [uiPosY] + (uiPosX>>l) tbl = {0, 1, 1, 2, 2, 3, 3, 3} La figura 25D ilustra un ejemplo de ctxIdxV derivado por la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración.
Con el uso de esta configuración, significant_coeff_flag para componentes de frecuencia cerca de PosY = 0 pueden decodificarse eficientemente, dando como resultado un incremento en eficiencia de codificación.
La unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración también se puede configurar para referirse al valor del indicador de preferencia vertical pref_y_flag descrito arriba, y para cambiar entre ctxIdxV y ctxIdxH que serán usados, de acuerdo con el valor del indicador de preferencia vertical pref_y_flag. Más específicamente, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración puede configurarse para derivar un índice de contexto ctxldx usando ctxldx = pref_y_flag? ctxIdxV : ctxIdxH .
Con el uso de esta configuración, un índice de contexto ctxldx más adecuado puede usarse de acuerdo con la desviación y el coeficiente de transformación, dando como resultado un incremento en eficiencia de codificación.
Como se describió arriba, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración se configura para dividir la región de frecuencia objetivo que corresponda a la región de unidad que será procesada en una pluralidad de sub-regiones, para asignar un índice de contexto diferente a cada sub-región, y para decodificar aritméticamente cada indicador de presencia/ausencia de coeficientes de transformación que sea un elemento de sintaxis que indique si cada uno de los coeficientes de transformación que pertenecen a las sub-regiones respectivas es igual o no a cero, con base en un estado de probabilidad especificado por el índice de contexto asignado a la sub-región a la cual pertenezca el indicador de presencia/ausencia de coeficientes de transformación. En la pluralidad de sub-regiones descritas arriba, una sub-región del lado de baja frecuencia es más pequeña que una sub-región del lado de alta frecuencia. Así, índices de contexto más finos pueden asignarse a regiones del lado de baja frecuencia. De acuerdo con la configuración descrita arriba, por lo tanto, es posible decodificar eficientemente un elemento de sintaxis para el lado de baja frecuencia, dando como resultado un incremento en eficiencia de codificación.
Ejemplo de proceso de decodificación sub-bloque por sub-bloque para indicador de presencia/ausencia de coeficientes La unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con esta modalidad también se puede configurar para, en lugar de decodificar un indicador de presencia/ausencia de coeficientes usando una región de frecuencia completa como un bloque (bloque de transformación) , dividir un bloque que indique una región de frecuencia completa en, por ejemplo, 4x4 sub-bloques y para decodificar un indicador de presencia/ausencia de coeficientes para cada sub-bloque.
La figura 32 incluye diagramas que ilustran escaneo de sub-bloques. El escaneo de sub-bloques es escaneo sobre una base de sub-bloque por sub-bloque. Como se ilustra en la figura 32, por ejemplo, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes divide un bloque que corresponde a una región de frecuencia completa en cuatro sub-bloques en la dirección UiPosX y cuatro sub-bloques en la dirección uiPosY, es decir, 16 sub-bloques en total, y decodifica un indicador de presencia/ausencia de coeficientes usando un sub-bloque como la unidad de procesamiento .
La unidad de decodificación de indicadores de presencia/ausencia de coeficientes decodifica un indicador de presencia/ausencia de coeficientes usando sub-bloques al, como se ilustra en la figura 32A, decodificar, para cada bus-bloque, un indicador (indicador de presencia/ausencia de coeficiente de sub-bloque significant_coeffgroup_flag) que indica si al menos un coeficiente de transformación no cero está presente o no en el sub-bloque, en orden de escaneo inverso de sub-bloque (la dirección de la flecha indicada en el bloque en la figura 32) . Si el indicador de presencia/ausencia de coeficientes de sub-bloque significant_coeffgruup_flag no es igual a 0, como se ilustra en la figura 32B, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes decodifica un indicador de presencia/ausencia para cada coeficiente de transformación en el sub-bloque que será procesado, en orden de escaneo inverso dentro del sub-bloque, la dirección de la flecha indicada en los sub-bloques en la figura 32.
El orden de escaneo de escaneo de sub-bloques ilustrado en la figura 32A y el orden de escaneo para escanear dentro de sub-bloques ilustrados en la figura 32B son simplemente ejemplos, y se puede usar otro orden de escaneo. Por ejemplo, se pudiera usar también escaneo en zigzag, escaneo de prioridad horizontal o un escaneo de prioridad vertical.
En lo sucesivo, se dará una descripción de un ejemplo de la decodificación/codificación de bloque por sub-bloque de indicadores de presencia/ausencia de coeficientes no cero de sub-bloques e indicadores de presencia/ausencia de coeficientes no cero.
Primero, se describirá con referencia a las figura 47A-47C un ejemplo de un indicador de presencia/ausencia de coeficientes de sub-bloque para un tamaño de bloque de transformación de 16x16 y un tamaño de sub-bloque de 4x4.
La figura 47A ilustra un ejemplo de los valores de coeficientes residuales cuantificados para un total de 256 componentes de frecuencia incluidos en un bloque de transformación de 16x16. La figura 47B es un diagrama que ilustra un ejemplo de números de sub-bloque para identificar los sub-bloques respectivos obtenidos por subdivisión del bloque de transformación de 16x16 en sub-bloques de 4x4. La figura 47C ilustra un ejemplo de indicadores de presencia/ausencia de coeficientes de sub-bloques para los sub-bloques respectivos cuando se usan los coeficientes residuales cuantificados ilustrados en la figura 47A.
En la figura 47A, el símbolo l representa la posición del último coeficiente. En la figura 47A, los coeficientes cero que son aclarados son coeficientes cero ubicados después del último coeficiente Wl en orden de escaneo hacia adelante. En la figura 47A, además, los valores de todos los coeficientes residuales cuantificados en sub-bloques identificados por símbolos SBK_A a ABK_D (en la figura 47B, los sub-bloques con números de sub-bloque 3, 7, 12 y 13) son cero.
En esta situación, como es normal, si la presencia o ausencia de un coeficiente no cero se representa usando un indicador de presencia/ausencia de coeficientes para cada uno de los coeficientes a partir del coeficiente de DC hasta el último coeficiente, se requiere un total de 218 indicadores de presencia/ausencia de coeficientes.
En contraste, si la presencia o ausencia de un coeficiente no cero se expresa en términos de un sub-bloque como una unidad, indicadores de presencia/ausencia de coeficientes de sub-bloque para los sub-bloques respectivos en la figura 47A, que indica si hay o no un coeficiente no cero, son representados de la manera ilustrada en la figura 47C. Es decir, en sub-bloques (con los números de sub-bloque 3, 7, 12, 13, 14 y 15 en la figura 47B) , el número de coeficientes no cero es igual a 0. Así, el indicador de presencia/ausencia de coeficientes de sub-bloque significant_coeffgroup_flag se establece en "0", e indicadores de presencia/ausencia de coeficientes en cada sub-bloque no son añadidos.
Más aún, en sub-bloques (con los números de sub-bloque 0, 1, 2, 4, 5, 6, 8, 9, 10 y 11 en la figura 47B) , el número de coeficientes no cero es mayor que o igual a 1. Así, el indicador de presencia/ausencia de coeficientes de sub-bloque significant_coeffgroup_flag se establece en "1", y se usan indicadores de presencia/ausencia de coeficientes para cada sub-bloque.
Es decir, si la presencia o ausencia de un coeficiente no cero es expresa en términos de un sub-bloque como una unidad, el número de indicadores de presencia/ausencia de coeficientes es 154 en total ya que un total de 64 indicadores de presencia/ausencia de coeficientes en sub-bloques (con los números de sub-bloque 3, 7, 12 y 13 en la figura 47B) son borrados. Aunque 16 indicadores de presencia/ausencia de coeficientes de sub-bloque adicionales son necesarios, hay 170 indicadores juntos, el número de los cuales es más pequeño que el número de indicadores en la estructura existente en al menos 48. De esta manera, la presencia o ausencia de coeficientes de transformación es representada para cada sub-bloque, dando como resultado una reducción significativa en el número de indicadores de presencia/ausencia de coeficientes que serán codificados/decodificados . Es decir, el proceso de derivación de contexto necesario para la codificación/decodificación de indicadores de presencia/ausencia de coeficientes puede ser reducido, mejorando la emisión de codificación/decodificación.
Posteriormente, se describirá en adelante una modalidad ejemplar de la decodificación sub-bloque por sub-bloque de indicadores de presencia/ausencia de coeficientes.
Séptimo ejemplo de configuración de unidad de decodificación de indicadores de presencia/ausencia de coeficientes La figura 31 es un diagrama de bloques que ilustra una unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -A que sirve como un séptimo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con esta modalidad. La figura 33 es un diagrama de flujo que ilustra el flujo de un proceso de decodificación llevado a cabo por la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-A.
Como se ilustra en la figura 31, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-A de acuerdo con este ejemplo de configuración incluye una unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques XI, una unidad de clasificación de frecuencias 124a, una unidad de derivación de contextos de posición de baja frecuencia 124b y una unidad de derivación de contextos de referencia adyacentes 124c.
Unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloque XI La unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques XI interpreta un bin suministrado desde la unidad de decodificación de bits 132, y decodifica un indicadores de presencia/ausencia de coeficientes de sub-bloques (significant_coeffgroup_flag) que indica si al menos un coeficiente de transformación no cero está o no presente en cada uno de los sub-bloques que constituyen la región de frecuencia (etapa SY1 en figura 33) .
Como se ilustra en la figura 32A, el orden de escaneo de los sub-bloques puede ser tal que los sub-bloques sean decodificados en orden desde el sub-bloque que incluye el último coeficiente hasta el sub-bloque que incluye el coeficiente de DC, u opuesto. Además, indicadores de presencia/ausencia de coeficientes de sub-bloque pueden ser determinados de acuerdo con un indicador de presencia/ausencia de coeficientes de sub-bloque para un sub-bloque decodificado previamente, sin decodificar datos a partir de los datos decodificados . Es decir, un indicador de presencia/ausencia de coeficientes de sub-bloque puede establecerse igual a 1 sin que se decodifiquen datos a partir de los datos codificados si los indicadores de presencia/ausencia de coeficientes de sub-bloque para dos sub-bloques adyacentes son cada uno iguales a uno, y de otra manera un indicador de presencia/ausencia de coeficientes de sub-bloques puede ser decodificado a partir de los datos codificados.
Después, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -A decodifica, para cada sub-bloque en un bloque de transformación, un indicador de presencia/ausencia de coeficientes en el sub-bloque (etapa SY2 a etapa SY4 en la figura 33) . Es decir, si el indicador de presencia/ausencia de coeficientes de sub-bloque es igual a 1 (SÍ en la etapa SY2 en la figura 33) en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques XI, un indicador de presencia/ausencia de coeficientes en el sub-bloque es decodificado usando la unidad de clasificación de frecuencias 124a, la unidad de derivación de contextos de posición de baja frecuencia 124b y la unidad de derivación de contextos de referencia adyacentes 124c. Si el indicador de presencia/ausencia de coeficientes de sub-bloque es igual a 0 (NO en la etapa SY2 en la figura 33) , la decodificación de un indicador de presencia/ausencia de coeficientes en el sub-bloque es saltada, y el proceso procede al procesamiento del sub-bloque subsecuente.
Como se ilustra en la figura 34, en un circuito de los sub-bloques, el indicador de presencia/ausencia de coeficientes de sub-bloque para el sub-bloque objetivo (xCG, yCG) puede ser decodificado. Aquí, en la etapa SY5 en la figura 34, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques XI decodifica el indicador de presencia/ausencia de coeficientes de sub-bloque signficant_coeffgroup_flag para el sub-bloque especificado por (xCG, yCG) .
En los circuitos de los sub-bloques en la figura 33 y figura 34, sbkldx representa el número de orden de escaneo del sub-bloque objetivo en un escaneo hacia adelante de sub-bloques, y LastSbkldx representa el número de orden de escaneo del sub-bloque que incluye el último coeficiente en el escaneo hacia adelante de sub-bloques. Si un bloque de transformación de szxsz se divide en 4x4 sub-bloque, los valores que LastSbkldx adoptan estando en el intervalo de 0 a (sz>>2 ) x (sz>>2 ) - 1 , inclusive.
Unidad de clasificación de frecuencias 124a incluida en unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-A La unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-A clasifica el componente de frecuencia que será decodificado en cualquiera de una pluralidad de sub-regiones de acuerdo con la posición del componente de frecuencia que será decodificado en la región de frecuencia, y asigna un índice de contexto ctxldx derivado por cualquiera de la unidad de derivación de contextos de posición de baja frecuencia 124b y la unidad de derivación de contextos de referencia adyacentes 124c al componente de frecuencia decodificado (etapa SY3 en la figura 33) .
La unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-A clasifica los componentes de frecuencia incluidos en la región de frecuencia en una pluralidad de sub- egiones RO a R2 usando las posiciones (uiPosX, uiPosY) de las regiones de frecuencia respectivas. Se asume aquí que uiPosX = 0, 1, sz-1 y uiPosY = 0, 1, sz-1 (en donde sz representa, como se describió arriba, el número de pixeles en un lado de la TU que será procesada, es decir, el número de componentes de frecuencia en un lado de la región de frecuencia objetivo, por ejemplo, sz = 16, 32, etc.) .
Aquí, una región de frecuencia de szxsz bloques se divide en 4x4 sub-bloques, y la posición del sub-bloque que incluye el componente de frecuencia (uiPosX, uiPosY) es representada por (xCG, yCG) . La posición (xCG, yCG) del sub-bloque que incluye el componente de frecuencia se deriva usando las siguientes expresiones (ec. Al) a (ec. A2) . xCG = uiPosX » 2 (ec. Al) yCG = uiPosY >> 2 (ec. A2) Aquí, se asume que xCG = 0, 1, (sz-1) >> 2 y yCG = 0, 1, (sz-1) >> 2.
Más específicamente, la unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -A lleva a cabo el siguiente proceso de clasificación: (1) Clasificar un componente de frecuencia que satisfaga xCG+yCG < THA y uiPosX+uiPosY < THZ en la sub- región R0. (2) Clasificar un componente de frecuencia que satisfaga xCG+yCG < THA and THZ < uiPosX+uiPosY en la sub-región Rl . (3) Clasificar un componente de frecuencia que satisfaga THA < xCG+yCG en la sub-región R2.
Pseudo código para el proceso de clasificación descrito arriba es el siguiente. ****************************************** si (xCG+yCG < THA) { si (uiPosX+uiPosY < THZ) { clasificar en R0 } si no {// if (uiPosX+uiPosY>= THZ) clasificar en Rl } si no {//if (xCG+yCG>= THA) { clasificar en R2 } } ************************************************************* Aquí, el valor umbral TH2 se establece en 2. THA Representa un valor umbral que satisface THA > THZ/4. Como un valor específico, por ejemplo, THA = 1 puede usarse no obstante del tamaño de la región de frecuencia (el tamaño de la TU que será procesada) . Como alternativa, THA = 1 << (log2TrafoSize - 2) se puede usar usando el tamaño de región de frecuencia log2TrafoSize . Es decir, THA = 1 puede usarse cuando el tamaño de la región de frecuencia sea 16x16, y THA = 2 puede usarse cuando el tamaño de la región de frecuencia sea 32x32. De esta manera, un valor umbral diferente puede usarse de acuerdo con el tamaño de la región de frecuencia. El valor umbral TH2 puede ser igual a 1.
La figura 35 ilustra un ejemplo de una región de frecuencia que se divide en sub-regiones 0 , Rl y R2 usando un proceso de clasificación llevado a cabo por la unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-A.
La unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-A asigna el índice de contextos derivado por la unidad de derivación de contextos de posición de baja frecuencia 124B a los componentes de frecuencia incluidos en la sub-región R0 , y asigna el índice de contexto derivado por la unidad de derivación de contextos de referencia adyacentes 124c a los componentes de frecuencia incluidos en las sub-regiones Rl y R2. La descripción ha sido dada usando, como un ejemplo pero no limitado a, un tamaño de sub-bloque de 4x4. Un sub-bloque de (sz»n)x(sz>>n) puede ser usado, en donde n satisfaga n = 1, log2TrafoSize >> 1.
Más aún, la unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -A calcula un índice de contexto ctxldx para determinar un contexto que será usado para decodificar el elemento de sintaxis significant_coeff_flag usando la unidad de decodificación de códigos aritméticos 130. El índice de contexto ctxldx se calcula para cada tamaño de región de frecuencia y para cada componente de frecuencia que será decodificado (etapa SY4 en la figura 33) . El elemento de sintaxis decodificado significant_coeff_flag es almacenado en la unidad de memoria de coeficientes decodificados 126, y es referenciado por la unidad de decodificación de valores de coeficiente 125. El índice de contexto ctxldx usado para decodificación es suministrado a la unidad de grabación/actualización de contextos 131.
En lo sucesivo, se dará una descripción específica de derivación de contexto para las sub-regiones R0 a R2.
Unidad de derivación de contextos de posición de baja frecuencia 124b incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-A La unidad de derivación de contextos de posición de baja frecuencia 124b incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-A a deriva un índice de contexto ctxldx para el componente de frecuencia que será decodificado, con base en la posición del componente de frecuencia en la región de frecuencia si el componente de frecuencia está incluido en una sub-región del lado de baja frecuencia.
La unidad de derivación de contextos de posición de baja frecuencia 124b incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -A deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R0 usando la expresión abajo (ec. A3) , y suministra el resultado de derivación ctxldx a la unidad de clasificación de frecuencias 124a. ctxldx = NX+2 x uiPosX + uiPosY ... (ec. A3) .
NX es una constante que representa el punto de partida del índice de contexto. Si el tamaño de la región de frecuencia es 4x4 y 8x8 y los números de contextos usados para la misma son N4 y N8, respectivamente, el punto de partida para tamaños de región de frecuencia de 16x16 y 32x32 se da por NX = N4 + N8.
Unidad de derivación de contextos de referencia adyacentes 124c incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -A La unidad de derivación de contextos de referencia adyacentes 124c incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -A deriva un índice de contexto ctxldx para el componente de frecuencia que será decodificado, con base en el número de coeficientes de transformación no cero decodificados cnt para componentes de frecuencia adyacentes del componente de frecuencia.
La unidad de derivación de contextos de referencia adyacentes 124c incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -A deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región Rl usando la expresión abajo (ec. A4) , y suministra el resultado de derivación ctxldx a la unidad de clasificación de frecuencias 124a. ctxldx = NX+3+min(2, temp) ... (ec. A4) Aquí, temp se determina por temp = (cnt + 1) >> 1.
La unidad de derivación de contextos de referencia adyacentes 124c, incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 12 -A, deriva además un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R2 usando la expresión abajo (ec. A5) , y suministra el resultado de derivación ctxldx a la unidad de clasificación de frecuencias 124a. ctxldx = NX + 6 + min(2, temp) ... (ec. A5) Aquí, de manera similar a arriba, temp se determina por temp = (cnt + 1) >> 1.
En las expresiones (ec. A4) a (ec. A5) , el desplazamiento a la derecha del número de recuentos del coeficiente de transformación no cero cnt por 1 bit puede reducir el número de contextos.
La unidad de derivación de contextos de referencia adyacentes 124c deriva además el número de recuentos del coeficiente de transformación no cero cnt en la sub-región Rl, usando los componentes de frecuencia de referencia el a c5 ilustrados en la figura 10A o figura 10B de acuerdo con la siguiente expresión (ec. A6) . cnt = (cl!=0) + (c2!=0) + (c3!=0) + (c4!=0) + (c5!=0) ... (ec. A6) En (ec. A6) , cada término toma 1 si la comparación entre paréntesis es verdadera, y toma 0 si la comparación entre paréntesis es falsa.
El número de coeficientes de transformación no cero cnt puede ser calculado usando la expresión matemática (ec. A7) en lugar de la expresión (ec. A6) . En la expresión matemática (ec. A7) , los componentes de frecuencia de referencia (el, c2 , c4 y c5) ilustrados en la figura 36A son usados, y el coeficiente de transformación en las coordenadas (c3) de la posición inmediatamente precedente del coeficiente de transformación objetivo en el orden de procesamiento (si el orden de procesamiento es orden de escaneo inverso, y el coeficiente de transformación debajo de la posición del coeficiente de transformación objetivo) no es referido. Este proceso permite que un contexto usado para la decodificación de un indicador de presencia/ausencia de coeficientes en una posición dada sea derivado sin referencia al valor del indicador de presencia/ausencia de coeficientes inmediatamente precedente, y puede por lo tanto lograr ejecución paralela del proceso de derivación de contexto y el proceso de decodificación. cnt = (cl!=0) + (c2!=0) + (c4!=0) + (c5!=0) ... (ec. A7) Como alternativa, un coeficiente de transformación puede derivarse usando cualquier expresión matemática (ec. A6) o expresión matemática (ec. A7) de acuerdo con la posición del coeficiente de transformación objetivo en el sub-bloque. Es decir, el componente de referencia que se usará para la derivación de un coeficiente de transformación puede ser cambiado de acuerdo con la posición del coeficiente de transformación objetivo en el sub-bloque.
Más específicamente, en cualquier caso en donde el coeficiente de transformación objetivo esté en la izquierda superior de un sub-bloque o un caso en donde el coeficiente de transformación objetivo esté en la derecha inferior del sub-bloque, los componentes de frecuencia de referencia en la expresión matemática (ec. A7) pueden usarse para evitar de esta manera la dependencia en el valor del coeficiente de transformación inmediatamente precedente al coeficiente de transformación objetivo (aquí, debajo del coeficiente de transformación objetivo) en el sub-bloque en el orden de procesamiento, y de otra manera los componentes de frecuencia de referencia en la expresión matemática (ec. A6) pueden ser usados .
Como se describió arriba, de acuerdo con la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -A de acuerdo con este ejemplo de conf guración, la unidad de clasificación de frecuencias 124a clasifica componentes de frecuencia de acuerdo con las coordenadas de sub-bloque. En consecuencia, si las coordenadas de sub-bloque (xCG, yCG) satisfacen xCG+yCG > 0, se puede omitir un proceso de ramificación para clasificación de frecuencia dentro de un sub-bloque. La clasificación descrita arriba, ejemplos de la cual incluyen • Clasificación de un componente de frecuencia que satisfaga uiPosX+uiPosY < 2 en la sub-región R0.
• Clasificación de un componente de frecuencia que satisfaga 2 < uiPosX+uiPosY < TH1 en la sub-región Rl .
¦ Clasificación de un componente de frecuencia que satisfaga TH1 < uiPosX+uiPosY < TH2 en la sub-región R2.
• Clasificación de un componente de frecuencia que satisfaga TH2 < uiPosX+uiPosY en la sub-región R3.
En el caso de la clasificación identificada arriba, un proceso de ramificación para llevar a cabo la clasificación descrita dentro de un sub-bloque es necesario. Sin embargo, este ejemplo de configuración no incluye la ramificación descrita arriba para hacer referencia a (uiPosX, uiPosY) debido a que las coordenadas que serán referidas en el proceso de clasificación pueden ser reemplazadas por las coordenadas de sub-bloque (xCG, yCG) en lugar de las coordenadas (uiPosX, uiPosY) en un bloque completo. En consecuencia, el retraso causado en la derivación de índices de contexto en un sub-bloque puede ser eliminado, mejorando la emisión de la derivación de contextos.
En la configuración descrita arriba, además, un indicador de presencia/ausencia de coeficientes de sub-bloque para cada sub-bloque y un indicador de presencia/ausencia de coeficientes en el sub-bloque se combinan para decodificar la presencia o ausencia de un coeficiente no cero. Esta configuración puede simplificar la derivación de contextos que se usarán para la decodificación de indicadores de presencia/ausencia de coeficientes en un sub-bloque. Es decir, como se ilustra en la figura 36A, el número de referencias puede reducirse a cuatro.
En el ejemplo descrito arriba, los componentes de frecuencia son clasificados en tres sub-regiones . Como alternativa, los componentes de frecuencia pueden ser clasificados en dos sub-regiones . En este caso, (1) Un componente de frecuencia que satisfaga uiPosX+uiPosY < THZ se clasifica en una sub-región RO . (2) Un componente de frecuencia que satisfaga THZ < uiPosX+uiPosY se clasifica en una sub-región Rl .
La derivación de contextos usada para la decodificación de indicadores de presencia/ausencia de coeficientes para la sub-región RO es como se describió arriba. La derivación de contextos usados para la decodificación de indicadores de presencia/ausencia de coeficientes para la sub-región Rl puede basarse en ctxldx = NX + 3 + min(2, temp) ... (ec. A4) temp = (cnt + 1) >> 1, y cnt puede determinarse usando cuatro referencias, por ejemplo, usando la expresión matemática (ec. A7) . Esta configuración puede simplificar la derivación de contextos usada para la decodificación de indicadores de presencia/ausencia de coeficientes en un sub-bloque. Componentes de frecuencia también pueden ser clasificados en RO y Rl de acuerdo con las siguientes condiciones. (1) Un componente de frecuencia que satisfaga xCG+yCG == 0 y uiPosX+uiPosY < THZ se clasifica en la sub-región RO . (2) Un componente de frecuencia que satisfaga 0 xCG+yCG > 0 o THZ < uiPosX+uiPosY se clasifica en la sub-región Rl .
Pseudo código para el proceso de clasificación descrito arriba es el siguiente ******************************************* si ( xCG+yCG==0-) { si( uiPosX+uiPosY<THZ-) { clasificar en R0 } si no {// si (uiPosX+uiPosY>=THZ) clasificar en Rl } } si no{//si (-xCG+yCG>0-) clasificar en Rl } ************************************************************* El proceso de clasificación descrito arriba puede eliminar un proceso de ramificación para clasificar componentes de frecuencia en un sub-bloque en una porción que no sea la posición en la cual la posición de sub-bloque (xCG, yCG) sea (0, 0) .
Como se describió arriba, para el lado de alta frecuencia, la unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-A se refiere a la posición del sub-bloque objetivo en la región de frecuencia objetivo, y divide la región de frecuencia en sub-regiones .
La unidad de derivación de contextos de referencia adyacentes 124c deriva un contexto que se usará para decodificar indicadores de presencia/ausencia de coeficientes de decodificación que pertenezcan a las sub-regiones obtenidas por la subdivisión descrita arriba.
En consecuencia, si el sub-bloque objetivo está incluido en una sub-región del lado de alta frecuencia en la región de frecuencia objetivo, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-A puede ser considerada como estando configurada para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que pertenezca al sub-bloque objetivo, de acuerdo con la posición del sub-bloque objetivo en la región de frecuencia objetivo.
El siguiente es un pseudo código en el séptimo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes en un caso en donde para un tamaño de bloque de transformación de 16x16 o 32x32, una región de frecuencia se dividida en su-regiones R0 y Rl, un índice de contexto ctxldx para R0 se derive usando un contexto de posición e baja frecuencia, y un índice de contexto ctxldx para Rl se deriva usando contextos de referencia adyacentes que se basen en los cuatro componentes de frecuencia de referencia (el, c2, c4 y c5) ilustrados en la figura 36A. sigCtx En el pseudo código es sinónimo de ctxldx.
***************************************** Si log2TrafoSize es menor que o igual a 3, sigCtx se deriva como sigue. shift = log2TrafoSize = = 3 ? 1 : 0 sigCtx = (shift * 15) + ( (yC >> shift) << 2) + (xC >> shift) Si cldx es igual a 0 y log2TrafoSize es mayor que 3, sigCtx se deriva como sigue Si xC + yC es menor que 1, sigCtx se deriva como sigue sigCtx = 31 De otro modo si (xC>>2) + (yC>>2) es menor que 1 << (uiLog2BlkSize-4) , sigCtx se deriva como sigue. temp = significant_coeff_flag [ xC + 1 ] [ yC ] + significant_coeff_flag [ xC + 2 ] [ yC ] + significant_coeff_flag [ xC ] [ yC + 1 ] + significant_coeff_flag [ xC + 1 ] [ yC + 1 ] + significant_coeff_flag [ xC ] [ yC + 2 ] temp = (temp + 1) >> 1 sigCtx = 32 + Min(2, temp) De otro modo ((xC>>2) + (yC>>2) es mayor que o igual a 1 << (uiLog2BlkSize-4) ) ) , sigCtx se deriva usando bins previamente decodificados del elemento de sintaxis significant_coeff_flag como sigue.
La variable ctxCnt se inicializa como sigue. ctxCnt = 0 Cuando xC es menor que (1 << log2TrafoSize) ? 1, aplica lo siguiente. ctxCnt = ctxCnt + significant_coeff_flag [ xC + 1 ] [ yC ] Cuando xC y yC son menores que (1 << log2TrafoSize) ? 1, aplica lo siguiente. ctxCnt = ctxCnt + significant_coeff_flag [ xC + 1 ] [ yC + 1 ] Cuando xC es menor que (1 << log2TrafoSize) ? 2, aplica lo siguiente. ctxCnt = ctxCnt + significant_coeff_flag [ xC + 2 ] [ yC ] Cuando yC es menor que (1 << log2TrafoSize) ? 2 y ctxCnt es menor que 3, aplica lo siguiente. ctxCnt = ctxCnt + significant_coeff_flag [ xC ] [ yC + 2 ] ctxCnt = (ctxCnt + 1) >> 1 sigCtx = 35 + ctxCnt Si cldx es mayor que 0 y log2TrafoSize es mayor que 3, sigCtx se deriva como sigue Si xC + yC es menor que 1, sigCtx se deriva como sigue . sigCtx = 31 De otro modo (xC + yC es mayor que o igual a 1) , sigCtx se deriva usando bins previamente decodificados del elemento de sintaxis significant_coeff_flag como sigue.
La variable ctxCnt se inicializa como sigue. ctxCnt = 0 Cuando xC es menor que (1 << log2TrafoSize) ? 1, aplica lo siguiente. ctxCnt = ctxCnt + significant_coeff_flag [ xC + 1 ] [ yC ] Cuando xC y yC son menores que (1 << log2TrafoSize) ? 1, aplica lo siguiente. ctxCnt = ctxCnt + significant_coeff_flag [ xC + 1 ] [ yC + 1 ] Cuando xC es menor que (1 << log2TrafoSize) ? 2, aplica lo siguiente. ctxCnt = ctxCnt + significant_coeff_flag [ xC + 2 ] [ yC ] Cuando yC es menor que (1 << log2TrafoSize) ? 1, aplica lo siguiente. ctxCnt = ctxCnt + significant_coeff_flag [ xC ] [ yC + 1 ] Cuando yC es menor que (1 << log2TrafoSize) ? 2 and ctxCnt es menor que 3, aplica lo siguiente. ctxCnt = ctxCnt + significant_coeff_flag [ xC ] [ yC + 2 ] ctxCnt = ((ctxCnt + 1) >> 1 sigCtx = 32 + ctxCnt *** * ******* *** ** ********** ************* *** ** El siguiente es pseudo código en el séptimo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes en caso de que para un tamaño de bloque de transformación de 16x16 o 32x32, regiones de frecuencia se dividan en sub-regiones R0 , Rl y R2 , un índice de contexto ctxldx para R0 se derive usando un contexto de posición de baja frecuencia, un índice de contexto ctxldx para Rl se derive usando contextos de referencia adyacentes que se basen en los cinco componentes de frecuencia de referencia (el, c2, c3, c4 y c5) ilustrados en la figura 10A, y un índice de contexto ctxldx para R2 se derive usando contextos de referencia adyacentes que se basen en los cuatro componentes de frecuencia de referencia (el, c2, c4 y c5) ilustrados en la figura 36A. sigCtx En el pseudo código es sinónimo de ctxldx.
************************************************************* Si log2TrafoSize es menor que o igual a 3, sigCtx se deriva como sigue. desplazamiento = log2TrafoSize = = 3 ? 1 : 0 sigCtx = (shift * 15) + ( (yC >> shift) << 2) + (xC >> shift) Si cldx es igual a O y log2TrafoSize es mayor que 3, sigCtx se deriva como sigue.
Si xC + yC es menor que 1, sigCtx se deriva como sigue. sigCtx = 31 De otro modo si xC + yC es menor que 1 << (uiLog2BlkSize-2 ) , sigCtx se deriva como sigue. temp = significant_coeff_flag [ xC + 1 ] [ yC ] + significant_coeff_flag [ xC + 2 ] [ yC ] + significant_coeff_flag [ xC ] [ yC + 1 ] + significant_coeff_flag [ xC + 1 ] [ yC + 1 ] + significant_coeff_flag [ xC ] [ yC + 2 ] temp = (temp + 1) >> 1 sigCtx = 32 + Min(2, temp) De otro modo (xC + yC es mayor que o igual a 1 << (uiLog2BlkSize-2 ) ) , sigCtx se deriva usando bins previamente decodificados del elemento de sintaxis significant_coeff_flag como sigue.
La variable ctxCnt es inicializada como sigue. ctxCnt = 0 Cuando xC es menor que (1 << log2TrafoSize) ? 1, aplica lo siguiente. ctxCnt = ctxCnt + significant_coeff_flag [ xC + 1 ] [ yC ] Cuando xC y yC son menores que (1 << log2TrafoSize) ? 1, aplica lo siguiente. ctxCnt = ctxCnt + significant_coeff_flag [ xC + 1 ] [ yC + 1 ] Cuando xC es menor que (1 << log2TrafoSize) ? 2, aplica lo siguiente. ctxCnt = ctxCnt + significant_coeff_flag [ xC + 2 ] [ yC ] Cuando yC es menor que (1 << log2TrafoSize) ? 2 y ctxCnt es menor que 3, aplica lo siguiente. ctxCnt = ctxCnt + significant_coeff_flag [ xC ] [ yC + 2 ] ctxCnt = (ctxCnt + 1) >> 1 sigCtx = 35 + ctxCnt Si cldx es mayor que 0 y log2TrafoSize es mayor que 3, sigCtx se deriva como sigue.
Si xC + yC es menor que 1, sigCtx se deriva como sigue . sigCtx = 31 De otro modo si xC + yC es menor que 1 << (uiLog2BlkSize-2) , sigCtx se deriva como sigue. temp = significant_coeff_flag [ xC + 1 ] [ yC ] + significant_coeff_flag [ xC + 2 ] [ yC ] + significant_coeff_flag [ xC ] [ yC + 1 ] + significant_coeff_flag [ xC + 1 ] [ yC + 1 ] + significant_coeff_flag [ xC ] [ yC + 2 ] temp = (temp + 1) >> 1 sigCtx = 32 + Min(2, temp) De otro modo (xC + yC es mayor que o igual a 1 << (uiLog2BlkSize-2 ) ) , sigCtx se deriva usando bins previamente decodificados del elemento de sintaxis significant_coeff_flag como sigue.
La variable ctxCnt se inicializa como sigue. ctxCnt = 0 Cuando xC es menor que (1 << log2TrafoSize) ? 1, aplica lo siguiente. ctxCnt = ctxCnt + significant_coeff_flag [ xC + 1 ] [ yC ] Cuando xC y yC son menores que (1 << log2TrafoSize) ? 1, aplica lo siguiente. ctxCnt = ctxCnt + significant_coeff_flag [ xC + 1 ] [ yC + 1 ] Cuando xC es menor que (1 << log2TrafoSize) ? 2, aplica lo siguiente. ctxCnt = ctxCnt + significant_coeff_flag [ xC + 2 ] [ yC ] Cuando yC es menor que (1 << log2TrafoSize) ? 2 y ctxCnt es menor que 3, aplica lo siguiente. ctxCnt = ctxCnt + significant_coeff_flag [ xC ] [ yC + 2 ] ctxCnt = (ctxCnt + 1) >> 1 sigCtx = 32 + ctxCnt **************************************** Octavo ejemplo de configuración de unidad de decodificación de indicadores de presencia/ausencia de coeficientes La figura 37 es un diagrama de bloques que ilustra una unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -B como un octavo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con esta modalidad. El flujo de un proceso de decodificación llevado a cabo por la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -B de acuerdo con este ejemplo de configuración se describirá con referencia al diagrama de flujo ilustrado en la figura 33.
Como se ilustra en la figura 37, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -B de acuerdo con este ejemplo de configuración incluye una unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloque XI, una unidad de clasificación de frecuencias 124a, una unidad de derivación de contextos de posición de baja frecuencia 124b, una unidad de derivación de contextos de referencia adyacentes 124c y una unidad de derivación de contextos de posición de alta frecuencia 124d.
Unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloque XI incluida en unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-B La unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques XI incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-B interpreta un bin suministrado desde la unidad de decodificación de bits 132, y decodifica un indicador de presencia/ausencia de coeficientes de sub-bloque (significant_coeffgroup_flag) ue indica si al menos un coeficiente de transformación no cero está presente o no en cada uno de los sub-bloques que constituyen una región de frecuencia (etapa SY1 en la figura 33) .
Luego, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques XI decodifica, para cada sub-bloque en un bloque de transformación, un indicador de presencia/ausencia de coeficientes de transformación en el sub-bloque (etapa SY2 a etapa SY4 en la figura 33) . Es decir, si el indicador de presencia/ausencia de coeficientes de sub-bloque es igual a 1 (SÍ en la etapa SY2 en la figura 33) en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques XI, un indicador de presencia/ausencia de coeficientes en el sub-bloque es decodificado usando la unidad de clasificación de frecuencias 124a, la unidad de derivación de contextos de posición de baja frecuencia 124b, la unidad de derivación de contextos de referencia adyacentes 124c y la unidad de derivación de contextos de posición de alta frecuencia 124d. Si el indicador de presencia/ausencia de coeficientes de sub-bloque es igual a 0 (NO en la etapa SY2 en la figura 33) . La decodificación de un indicador de presencia/ausencia de coeficientes en el sub-bloque es saltada, y el proceso procede al procesamiento de sub-bloque subsecuente.
Unidad de clasificación de frecuencia 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-B La unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-B clasifica el componente de frecuencia que será decodificado en cualquiera de una pluralidad de sub-regiones de acuerdo con la posición del componente de frecuencia que será decodificado en la región de frecuencia, y asigna un índice de contexto ctxldx derivado por cualquiera de la unidad de derivación de contextos de posición de baja frecuencia 124b, la unidad de derivación de contextos de referencia adyacentes 124c y la unidad de derivación de contextos de posición de alta frecuencia 124d al componente de frecuencia que será decodificado (etapa SY3 en la figura 33) .
La unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-B se refiere a la posición (uiPosX, uiPosY) en la cual el componente de frecuencia incluido en la región de frecuencia se ubica en la región de frecuencia, y clasifica el componente de frecuencia en una pluralidad de sub-regiones RO a R3. Se asume aquí que uiPosX = 0, 1, sz-1 y uiPosY = 0, 1, sz-1 (en donde sz representa, como se describió arriba, el número de pixeles en un lado de la TU que será procesada, es decir, el número de componentes de frecuencia en un lado de la región de frecuencia objetivo, por ejemplo, sz = 16, 32, etc.) .
Aquí, una región de frecuencia de szxsz bloques se divide en 4x4 sub-bloques, y la posición del sub-bloque que incluye el componente de frecuencia (uiPosX, uiPosY) se representa por (xCG, yCG) . La posición (xCG, yCG) del sub-bloque que incluye el componente de frecuencia se deriva usando las siguientes expresiones (ec. Bl) a (ec. B2) . xCG = uiPosX >> 2 (ec. Bl) yCG = uiPosY >> 2 (ec. B2) Aquí , xCG = 0, (sz-1) >> 2 and yCG = 0, 1, (sz-1) >> 2.
Más específicamente, la unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -B lleva a cabo el siguiente proceso de clasificación: (1) Clasificación de un componente de frecuencia que satisfaga xCG+yCG < THB y uiPosX+uiPosY < THZ en la sub-región RO . (2) Clasificación de un componente de frecuencia que satisfaga xCG+yCG < THB y THZ < uiPosX+uiPosY < TH1 en la sub-región Rl . (3) Clasificación de un componente de frecuencia que satisfaga xCG+yCG < THB y TH1 < uiPosX+uiPosY en la sub-región R2. (4) Clasificación de un componente de frecuencia que satisfaga THB < xCG+yCG en la sub-región R3.
Pseudo código para el proceso de clasificación descrito arriba es el siguiente. ************************************************** si (xCG+yCG < THB) { si (uiPosX+uiPosY < THZ) { clasificar en RO } si no si (uiPosX+uiPosY < TH1) { clasificar en Rl } si no { //if (uiPosX+uiPosY>= TH1) clasificar en R2 • } si no {// if (xCG+yCG>= THB) clasificar en R3 } ************************************ Aquí, el valor umbral THZ se establece en 2. Específicamente, TH1 y THB pueden establecerse en, por ejemplo, TH1 = 5, y THB = 1 << (log2TrafoSize - 2) usando el tamaño de región de frecuencia (el tamaño de la TU que será procesada) log2TrafoSize . TH1 = 5 y THB = 4 pueden usarse cuando el tamaño de la región de frecuencia sea 16x16, y TH1 = 5 y THB = 8 pueden usarse cuando el tamaño de la región de frecuencia sea 32x32.
Como alternativa, los valores umbral TH1 y THB pueden establecerse en TH1 = 5, y THB = 1 << (log2TrafoSize - 4) usando el tamaño de región de frecuencia log2TrafoSize . Es decir, TH1 = 5 y THB = 1 se establecen cuando el tamaño de la región de frecuencia es 16x16, y TH1 = 5 y THB = 2 se establecen cuando el tamaño de la región de frecuencia es 32x32. Otros valores pueden ser establecidos.
Como alternativa, los valores umbral TH1 y THB pueden establecerse en TH1 = 5, y THB = 1 << (log2TrafoSize - 3) .
Es decir, TH1 = 5 y THB = 2 se establecen cuando el tamaño de la región de frecuencia es 16x16, y TH1 = 5 y THB = 4 se establecen cuando el tamaño de la región de frecuencia es 32x32. De esta manera, diferentes valores umbral pueden usarse de acuerdo con el tamaño de la región de frecuencia.
De acuerdo con la unidad de clasificación de frecuencias 124a que tiene la configuración descrita arriba, un proceso de ramificación para cambiar el método de derivación de contextos de acuerdo con la posición de un coeficiente de transformación puede reemplazarse por un proceso de ramificación que use coordenadas de sub-bloques (xCG, yCG) . Un proceso de ramificación en el cual (uiPosX, uiPosY) sean referidos, el cual se lleva a cabo dentro de un sub-bloque, puede ser omitido, mejorando la emisión de derivación de contextos, en comparación con el proceso de ramificación en el cual (uiPosX, uiPosY) son referidos.
La figura 38 ilustra un ejemplo de una región de frecuencia que se divide en sub-regiones RO , Rl, R2 y R3 usando un proceso de clasificación por la unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-B.
La unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-B asigna el índice de contexto derivado por la unidad de derivación de contextos de posición de baja frecuencia 124b a los componentes de frecuencia incluidos en la sub-región RO, asigna el índice de contexto derivado por la unidad de derivación de contextos de referencia adyacentes 124c a los componentes de frecuencia incluidos en las sub-regiones Rl y R2 , y asigna el índice de contexto derivado por la unidad de derivación de contextos de posición de alta frecuencia 124d a los componentes de frecuencia incluidos en la sub-región R3.
En la anterior descripción, la unidad de clasificación de frecuencias 124a se refiere a (uiPosX, uiPosY) como la posición del componente de frecuencia objetivo, y se refiere a la posición (xCG, yCG) del sub-bloque que incluye el componente de frecuencia objetivo. Sin embargo, esta modalidad no está limitada a esto. Por ejemplo, un índice de identificación de componentes de frecuencia (por ejemplo, "n" en la figura 5) asignado en orden de escaneo hacia adelante u orden de escaneo hacia atrás puede ser referenciado como la posición del componente de frecuencia objetivo, y el componente de frecuencia objetivo puede ser clasificado en cualquiera de una pluralidad de sub-regiones.
Más aún, la unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-B calcula un índice de contexto ctxldx para determinar un contexto que será usado para decodificar el elemento de sintaxis significant_coeff_flag usando la unidad de decodificación de códigos aritméticos 130. El índice de contexto ctxldx se calcula para cada tamaño de región de frecuencia y para cada componente de frecuencia que será decodificado (etapa SY4 en la figura 33) . El elemento de sintaxis decodificado significant_coeff_flag se almacena en la unidad de memoria de coeficientes decodificados 126, y es referenciado por la unidad de decodificación de valores de coeficientes 125. El índice de contexto ctxldx usado para decodificación es suministrado a la unidad de grabación/actualización de contextos 131.
A continuación se dará una descripción específica de derivación de contextos para las sub-regiones R0 a R3.
Unidad de derivación de contextos de posición de baja frecuencia 124b incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-B La unidad de derivación de contextos de posición de baja frecuencia 124b incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-B deriva un índice de contexto ctxldx para el componente de frecuencia que será decodificado, con base en la posición del componente de frecuencia en la región de frecuencia si el componente de frecuencia está incluido en una sub-región del lado de baja frecuencia.
La unidad de derivación de contextos de posición de baja frecuencia 124b incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -B deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región RO usando la expresión abajo (ec. B3), y suministra el índice de contextos ctxldx derivado a la unidad de clasificación de frecuencias 124a. ctxldx = NX+2 X uiPosX + uiPosY ... (ec. B3) NX es una constante que representa el punto de partida del índice de contexto. Si el tamaño de la región de frecuencia es 4x4 y 8x8 y los números de contextos usados para la misma son N4 y N8 , respectivamente, el punto de partida para tamaños de región de frecuencia de 16x16 y 32x32 se da por NX = N4 + N8.
Unidad de derivación de contextos de referencia adyacentes 124c incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -B La unidad de derivación de contextos de referencia adyacentes 124c incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-B deriva un índice de contexto ctxldx para el componente de frecuencia que será decodificado, con base en el número de coeficientes de transformación no cero decodificados cnt para componentes de frecuencia adyacentes del componente de frecuencia .
La unidad de derivación de contextos de referencia adyacentes 124c incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -B deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región Rl usando la expresión abajo (ec. B4) , y suministra el resultado de derivación ctxldx a la unidad de clasificación de frecuencias 124a. ctxldx = NX + 3 + min(4, cnt) ... (ec. B4) En la sub-región Rl, el número de recuentos del coeficiente de transformación no cero cnt se deriva usando (Cl, C2, C3, C4 y C5) ilustrado en la figura 10A o la figura 10B de acuerdo con la siguiente expresión (ec. B5) . cnt = (cl!=0) + (c2!=0) + (c3!=0) + (c4!=0) + (c5 !=0) ... (ec. B5) La unidad de derivación de contextos de referencia adyacentes 124c incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -B deriva además un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R2 usando la expresión abajo (ec. B6) , y suministra el índice de contexto ctxldx derivado a la unidad de clasificación de frecuencias 124a. ctxldx = NX + 8 + min(4, cnt) ... (ec. B6) En la sub-región R2 , el número de recuentos del coeficiente de transformación no cero cnt se deriva usando los componentes de frecuencia de referencia (el, c2 , c4 y c5) ilustrados en la figura 36A de acuerdo con la siguiente expresión (ec. B7) en la cual el coeficiente de transformación en las coordenadas (c3) de la posición inmediatamente precedente en el orden de procesamiento (si el orden de procesamiento es orden de escaneo inverso, el coeficiente de transformación debajo de la posición del coeficiente de transformación objetivo) no es referido. Este proceso permite que un contexto usado para la decodificación de un indicador de presencia/ausencia de coeficientes en una posición dada sea derivado sin referencia al valor del indicador de presencia/ausencia de coeficientes inmediatamente precedente, y por lo tanto puede lograr ejecución paralela del proceso de derivación de contextos y el proceso de decodificación. cnt = (cl!=0) + (c2!=0) + (c4!=0) + (c5!=0) ... (ec. B7) En la expresión (ec. B7) , cada término toma 1 si la comparación entre paréntesis es verdadera, y toma 0 si la comparación entre paréntesis es falsa.
Para la sub-región Rl, el número de coeficientes no cero cnt puede calcularse usando la expresión (ec. B7) en lugar de la expresión (ec. B6) .
Para la sub-región R2 , el número de coeficientes no cero cnt puede calcularse usando tres coeficientes de referencia ilustrados en las figuras 15C, 15D, 15E o 15F, figura 36B o figura 36C en lugar de usar la expresión (ec. B7) .
Unidad de derivación de contextos de posición de alta frecuencia 124d incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -B La unidad de derivación de contextos de posición de alta frecuencia 124d incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-B deriva un índice de contexto ctxldx para el componente de frecuencia que será decodificado, con base en la posición del componente de frecuencia en la región de frecuencia y la posición del sub-bloque que incluye el componente de frecuencia si el componente de frecuencia está incluido en una sub-región del lado de alta frecuencia.
La unidad de derivación de contextos de posición de alta frecuencia 124d incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-B deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R3 , usando la expresión (ec. B8) abajo, y suministra el resultado de la derivación ctxldx a la unidad de clasificación de frecuencias 124a. ctxldx = NX + 13 + min(maxR3, (xCG+yCG-THB) >> shift) ... (ec. B8) Aquí, el signo ">>" representa la operación de desplazamiento de bit derecho. Además, como desplazamiento y maxR3, por ejemplo, desplazamiento = 0 y maxR3 = 3 puede usarse cuando el tamaño de la región de frecuencia objetivo se 16x16, y desplazamiento = ly maxR3 = 3 se puede usar cuando el tamaño de la región de frecuencia objetivo sea 32x32. Sin embargo, esta modalidad no está limitada a esto.
Un ejemplo de una región de frecuencia que se divide usando el proceso de clasificación por la unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-B no está limitado a aquél ilustrado en la figura 38. Por ejemplo, una región de frecuencia puede ser dividida de una manera ilustrada en la figura 39. Es decir, la unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-B puede configurarse para clasificar una región de frecuencia en sub-regiones R0, Rl, R2 y R3 como sigue . (1) Un componente de frecuencia que satisfaga xCG+yCG < THA y uiPosX+uiPosY < THZ se clasifica en la sub-región R0. (2) Un componente de frecuencia que satisfaga xOG+yCG < ??? and uiPosX+uiPosY > THZ se clasifica en la sub-región Rl. (3) Un componente de frecuencia que satisfaga THA < xCG+yCG < THB se clasifica en la sub-región R2. (4) Un componente de frecuencia que satisfaga THB = xCG+yCG se clasifica en la sub-región R2.
Pseudo código para el proceso de clasificación descrito arriba es el siguiente. ************************************* si (xCG+yCG < TH) { si (uiPosX+uiPosY < THZ) { clasificar en RO } si no {// si (uiPosX+uiPosY>THZ) clasificar en Rl } } si no si (xCG+yCG < THB) clasificar en R2 si no { // if (xCG+yCG>= THB) clasificar en R3 } ************************************************************* Aquí, el valor umbral THZ se establece en 2.
Específicamente, THA y THB pueden establecerse en, por ejemplo, los siguientes valores.
THA = 1 << (log2TrafoSize - 4) , y THB = 1 << (log2TrafoSize - 2) usando el tamaño de región de frecuencia (el tamaño de la TU que será procesada) log2TrafoSize . THA = 1 y THB = 4 se puede usar cuando el tamaño de región de frecuencia sea 16x16, y THA = 2 y THB = 8 pueden usarse cuando el tamaño de la región de frecuencia sea 32x32. Como alternativa, el valor umbral THB puede establecerse en THB = 1 << (log2TrafoSize-3) usando el tamaño de región de frecuencia log2TrafoSize . Es decir, THB = 2 se establece cuando el tamaño de la región de frecuencia es 16x16, y THB = 4 se establece cuando el tamaño de la región de frecuencia es 32x32. De esta manera, diferentes valores umbral pueden usarse de acuerdo con el tamaño de la región de frecuencia.
En el ejemplo ilustrado en la figura 39, una región de frecuencia se clasifica en sub-regiones R0 , Rl, R2 y R3. Para los componentes de frecuencia incluidos en las sub-regiones R0, Rl y R2 , y R3 , como se describió arriba, índices de contexto ctxldx son calculados por la unidad de derivación de contextos de posición de baja frecuencia 124b, la unidad de derivación de contextos de referencia adyacentes 124c, y la unidad de derivación de contextos de posición de alta frecuencia 124d, respectivamente.
De acuerdo con la unidad de clasificación de frecuencias 124a que tienen la configuración descrita arriba, la ramificación para cambiar el método de derivación de contexto de acuerdo con la posición de un coeficiente de transformación puede reemplazarse por ramificación que use coordenadas de sub-bloques (xCG, yCG) . Un proceso de ramificación en el cual (uiPosX, uiPosY) son referidos, el cual se lleva a cabo dentro de un sub-bloque, puede ser omitido, mejorando la emisión de la derivación de contexto, en comparación con el proceso de ramificación en el cual (uiPosX, uiPosY) son referidos.
Además, de acuerdo con la unidad de decodificación de indicadores de presencia/ausencia de coeficientes y la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques que tiene la configuración descrita arriba, en el cálculo de un contexto de posición, un contexto para un indicador de presencia/ausencia de coeficiente en la posición de un coeficiente de transformación dado se determina no obstante del valor de un indicador de presencia/ausencia de coeficientes previamente decodificado, logrando la ventaja de proporcionar ejecución paralela de la derivación de contextos para indicadores de presencia/ausencia de coeficientes y la decodificación de indicadores de presencia/ausencia de coeficientes.
El siguiente es pseudo código en el octavo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes en caso de que cuando el tamaño de bloque de transformación sea 16x16 o 32x32, una región de frecuencia se divida en sub-regiones RO , Rl, R2 y R3 , un índice de contexto ctxldx para RO se derive usando un contexto de posición de baja frecuencia, un índice de contexto ctxldx para Rl a R2 se derive usando contextos de referencia adyacentes que se basan en los cuatro componentes de frecuencia de referencia (el, c2 , c4 y c5) ilustrados en la figura 36A, y un índice de contexto ctxldx para R3 se derive usando una posición de alta frecuencia. sigCtx en el pseudo código es sinónimo de ctxldx.
******************************************* Si log2TrafoSize es menor que o igual a 3, sigCtx se deriva como sigue. desplazamiento = log2TrafoSize = = 3 ? 1 : 0 sigCtx = (desplazamiento * 15) + ( (yC >> desplazamiento) << 2) + (xC >> desplazamiento) Si cldx es igual a 0 y log2TrafoSize es mayor que 3, sigCtx se deriva como sigue.
Si xC + yC es menor que 1, sigCtx se deriva como sigue . sigCtx = 31 De otra manera si (xC>>2) + (yC>>2) es menor que 1 << (uiLog2BlkSize-4) , sigCtx se deriva como sigue. temp = significant_coeff_flag [ xC + 1 ] [ yC ] + significant_coeff_flag [ xC + 2 ] [ yC ] + significant_coeff_flag [ xC + 1 ] [ yC + 1 ] + significant_coeff_flag [ xC ] [ yC + 2 ] temp = (temp + 1) >> 1 sigCtx = 32 + Min(2, temp) De otro modo si (xC>>2) + (yC>>2) es menor que 1 << (uiLog2BlkSize-2) , sigCtx se deriva como sigue. temp = significant_coeff_flag [ xC + 1 ] [ yC ] + significant_coeff_flag [ xC + 2 ] [ yC ] + significant_coeff_flag [ xC ] [ yC + 1 ] + significant_coeff_flag [ xC + 1 ] [ yC + 1 ] + significant_coeff_flag [ xC ] [ yC + 2 ] temp = (temp + 1) >> 1 sigCtx = 35 + Min(2, temp) De otra manera (xC>>2) + (yC>>2) es mayor que o igual a 1 << (uiLog2BlkSize-2) , sigCtx se deriva usando bins decodificados previamente del elemento de sintaxis significant_coeff_flag como sigue. sigCtx = 38 Si cldx es mayor que 0 y log2TrafoSize es mayor que 3, sigCtx se deriva como sigue.
Si xC + yC es menor que 1, sigCtx se deriva como sigue . sigCtx = 31 De otro modo si (xC>>2) + (yC>>2) es menor que 1 << (uiLog2BlkSize-3 ) , sigCtx se deriva usando bins previamente decodificados del elemento de sintaxis significant_coeff_flag como sigue. temp = significant_coeff_flag [ xC + 1 ] [ yC ] + significant_coeff_flag [ xC + 2 ] [ yC ] + significant_coeff_flag [ xC + 1 ] [ yC + 1 ] + significant_coeff_flag [ xC ] [ yC + 2 ] temp = (temp + 1) >> 1 sigCtx = 35 + Min(2, temp) De otra manera si ( (xC>>2) + (yC>>2) es mayor que o igual a 1 << (uiLog2BlkSize-3 ) ) ) , sigCtx se deriva usando bins previamente decodificados del elemento de sintaxis significant_coeff_flag como sigue. sigCtx = 38 *************************************** Otro ejemplo de configuración del octavo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Otro proceso ejemplar llevado a cabo por la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -B se describirá en adelante con referencia a las figuras 48A y 48B, y figura 52 a figura 53.
Las figuras 48A y 48B son diagramas que ilustran sub-regiones obtenidas por sub-división por la unidad de clasificación de frecuencias 124a usando este proceso ejemplar. La figura 48A ilustra sub-regiones adecuadas para usarse en la decodificación de coeficientes de transformación para valor luma, y la figura 48B ilustra sub-regiones adecuadas para usarse en la decodificación de coeficientes de transformación para croma. En las figuras 48A-48B, el método para establecer el valor umbral TH y el valor umbral TH2 es como se describió arriba.
Como se ilustra en la figura 52, la unidad de clasificación de frecuencias 124a clasifica la sub-región Rl y la sub-región R2 usando el valor umbral TH de acuerdo con la posición (xC, yC) de coeficiente de transformación objetivo sobre los componentes de frecuencia. xC+yC < TH Como se ilustra en la figura 52, la unidad de clasificación de frecuencias 124a clasifica la sub-región R2 y la sub-región R3 que tienen diferentes números de referencias usando el valor umbral TH2 de acuerdo con un valor obtenido al dividir la posición (xC, yC) del coeficiente de transformación objetivo sobre los componentes de frecuencia entre un tamaño de sub-bloque dado (aquí, 4) . (xC>>2) + (yC>>2) < TH2 Aquí, como se describió arriba, el valor umbral TH2 que distingue entre las dos sub-regiones satisface de preferencia la relación en la cual TH2 x tamaño de sub-bloque (= 4) es más pequeña que el tamaño Max (ancho, altura) de la región de frecuencia objetivo.
La figura 52 es pseudo código para un proceso de derivación para derivar un índice de contexto ctxldx para luma, que es un índice de contexto que será asignado a una región de frecuencia incluida en cada una de las sub-regiones R0 a R3 ilustradas en la figura 48A. En la figura 52, el contexto para la región R0 se deriva por la unidad de derivación de contextos de posición de baja frecuencia 124b, el contexto para la región Rl a la región R2 se deriva por la unidad de derivación de contextos de referencia adyacentes 14c, y el contexto para la región R3 se deriva por la unidad de derivación de contextos de posición de alta frecuencia 124d.
La unidad de derivación de contextos de referencia adyacentes 124c deriva un índice de contexto sigCtx para, por ejemplo, los componentes de frecuencia incluidos en la sub-región Rl ilustrado en las figuras 48A o 48B usando la expresión abajo, y suministra el resultado de derivación sigCtx a la unidad de clasificación de frecuencias 124a. sigCtx = sigCtxOffsetRl + Min(2, ctxCnt) Aquí, ctxCnt es un valor obtenido de acuerdo con el valor de recuento. Aquí, un valor de recuento se obtiene por agregación usando un proceso de transformación de muchos a uno (proceso de agregación) . Es decir, como se indica en la siguiente expresión, ctxCnt es un valor obtenido al desplazar a la derecha de tal manera que el valor de recuento se reduzca a aproximadamente 1/2, y se determina por ctxCnt = (cnt+1) >> 1.
En lugar de desplazamiento a la derecha, como se indica abajo, transformación de muchos a uno puede llevarse a cabo usando un proceso para fijar un valor de recuento en un valor fijo (aquí, 3) . ctxCnt = min(3, cnt) El número de recuentos del coeficiente de transformación no cero cnt se calcula por, como en el siguiente pseudo código, referencia a los cinco coeficientes de transformación previamente decodificados el, c2 , c3, c4 y c5 o al hacer referencia a los cuatro coeficientes de transformación previamente decodificados el, c2, c4 y c5 de acuerdo con la posición (xC, yC) del coeficiente de transformación objetivo sobre los componentes de frecuencia. si (((xC&3) I I (yC&3) )&&( ( (xC+l)&3) | | ((yC+2)&3)) ) ) { cnt = (cl!=0) + (c2!=0) + (c4!=0) + (c5!=0) ; } si no{ cnt = (cl!=0) + (c2!=0) + (c3!=0) + (c4!=0) + (c5!=0) ; } Además, la unidad de derivación de contextos de referencia adyacentes 124c deriva un índice de contexto sigCtx para, por ejemplo, los componentes de frecuencia incluidos en la sub-región R2 ilustrada en la figura 48A usando la expresión abajo, y suministra el resultado de derivación sigCtx a la unidad de clasificación de frecuencias 124a. sigCtx = sigCtxOffsetR2 + Min(2, ctxCnt) El método de cálculo para el número de recuentos del coeficiente de transformación no cero cnt es similar a aquél para la sub-región Rl .
La unidad de derivación de contextos de posición de alta frecuencia 124d deriva un índice de contexto sigCtx para, por ejemplo, los componentes de frecuencia incluidos en la sub-región R3 ilustrado en la figura 48 usando la siguiente expresión, y suministra el resultado de derivación sigCtx a la unidad de clasificación de frecuencias 124a. Es decir, un índice de contexto se deriva usando un valor fijo. sigCtx = sigCtxOffsetR3 Para la sub-región R3 , que incluye componentes de alta frecuencia, a diferencia de las sub-regiones Rl y R2 , que incluyen componentes de baja frecuencia, un contexto se deriva usando un contexto de posición. Así, puede reducirse la cantidad de procesamiento.
También para croma, procesamiento similar a aquél para luma se lleva a cabo en la sub-región R0 , la sub-región Rl y la sub-región R3 en la figura 48B. Primero, la unidad de clasificación de frecuencias 124a clasifica la sub-región Rl y la sub-región R3 que tienen diferentes números de referencias de acuerdo con, como se ilustra en la figura 53, un valor obtenido al dividir la posición (xC, yC) del coeficiente de transformación objetivo sobre los componentes de frecuencia entre un tamaño de sub-bloque dado (aquí, 4) . Como se ilustra en la figura 53, además, para la sub-región R0, la unidad de derivación de contextos de posición de baja frecuencia 124b deriva un contexto usando un contexto de posición, y, para la sub-región Rl, la unidad de derivación de contextos de referencia adyacentes 124c deriva un contexto usando un contexto de referencia adyacente. Para la sub-región R3, un contexto se deriva usando un contexto de posición. En consecuencia, se puede reducir la cantidad de procesamiento .
La configuración descrita arriba también se puede expresar como sigue.
Medios de división (la unidad de clasificación de frecuencias 124a) se configuran para dividir una región de frecuencia objetivo en al menos dos sub-regiones del lado de baja frecuencia y lado de alta frecuencia, y el medio de derivación de índices de contexto descrito arriba debido a un índice de contexto para al menos una de sub-regiones ubicadas en el lado de baja frecuencia al hacer referencia a un coeficiente de transformación no cero decodificado, y deriva, para una sub-región ubicada en el lado de alta frecuencia, un valor que se basa en la posición de la sub-región en la región de frecuencia a un valor predeterminado fijo como un índice de contexto.
Compartir contextos de contexto de referencia adyacente y contexto de posición La unidad de derivación de contextos de posición de alta frecuencia 124d puede usar el contexto en que use la unidad de derivación de contextos de referencia adyacentes 124c. Es decir, un contexto puede ser compartido entre una sub-región en donde un contexto de referencia adyacente sea usado y una sub-región de alta frecuencia en donde se use un contexto de posición. Un ejemplo específico de esta configuración se describirá usando la figura 54 a figura 56.
De manera similar a la figura 52, la figura 54 también es pseudo código para el proceso de derivación para derivar un índice de contexto ctxldx para luma. Sólo la diferencia de la figura 52 es el proceso de la unidad de derivación de contextos de posición de alta frecuencia 124d. En el proceso ilustrado en la figura 54, un índice de contexto sigCtx se deriva usando la siguiente expresión. sigCtx = sigCtxOffsetR2 Es decir, el contexto usado para la sub-región R2, que se determina como valor de desplazamiento ctxCnt = 0 por la unidad de derivación de contextos de referencia adyacentes 124c, también se usa como el contexto para la sub-región R3 , que se deriva por la unidad de derivación de contextos de posición de alta frecuencia 124d. Para unificar dos procesos, un índice de contexto para la sub-región R3 puede derivarse usando las siguientes expresiones. ctxCnt = 0 sigCtx = sigCtxOffsetR2 + Min(2, ctxCnt) En este caso, el valor de desplazamiento ctxCnt se determina a partir del recuento cnt para la sub-región R2 , mientras que el valor de desplazamiento ctxCnt fijado en 0 se determina para la sub-región R3.
Compartir contextos de manera similar se puede llevar a cabo para croma. Específicamente, la figura 55 es pseudo código para el proceso para derivar un índice de contexto ctxldx para croma en el caso de compartir contexto. Sólo la diferencia de la figura 53 en la cual el compartir contexto no se lleva a cabo es el proceso de la unidad de derivación de contextos de posición de alta frecuencia 124d.
De esta manera, un contexto puede ser compartido entre una sub-región en donde un contexto de referencia adyacente se use y una sub-región de alta frecuencia en donde se use un contexto de posición. Esto se puede expresar de tal manera que el valor del índice de contexto usado para una sub-región ubicada en el lado de alta frecuencia, que se deriva por un medio de derivación de índices de contexto (la unidad de derivación de contextos de posición de alta frecuencia 124d, la unidad de derivación de contextos de referencia adyacentes 124c) , esté dentro del intervalo de índices de contexto usados para sub-regiones ubicadas en el lado de baja frecuencia.
Nótese que la configuración (figura 55) para compartir un contexto de posición y un contexto de referencia adyacente para altas frecuencias puede usarse para croma, y la configuración (figura 52) para no compartir un contexto de posición y un contexto de referencia adyacente para altas frecuencias puede usarse para luma. Específicamente, como se ilustra en la figura 56, para luma, un índice de contextos para la sub-región R3 se determina usando la siguiente expresión. sigCtx = sigCtxOffsetR3 + ctxCnt, en donde ctxCnt = 0.
Para croma, un índice de contexto para la sub-región R3 se determina usando la siguiente expresión. sigCtx = sigCtxOffsetRl + ctxCnt, en donde ctxCnt = 0.
En consecuencia, el contexto dedicado a la sub- región R3 se usa para luma, y el contexto para una sub-región que no sea la sub-región R3, aquí, el contexto para la sub-región 1 en donde un contexto de referencia adyacente es usado, se usa para croma.
La configuración descrita arriba en la cual el mismo contexto se comparte por dos métodos de derivación diferentes (contexto de posición y contexto de referencia adyacente) puede reducir uso de memoria causado por contextos .
En el acto de compartir contextos descrito arriba, aparte de compartir un contexto de referencia adyacente con el valor de desplazamiento ctxCnt = 0 y un contexto de posición, un contexto con el valor de desplazamiento ctxCnt siendo no cero y un contexto de posición pueden ser compartidos, como se indica en las siguientes expresiones. ctxCnt = 1 sigCtx = sigCtxOffsetRl + ctxCnt La configuración descrita arriba puede expresarse de tal manera que el valor de un índice de contexto para luma, que es un índice de contexto usado para una sub-región ubicada en el lado de alta frecuencia y que se deriva por medios de derivación de índices de contexto (la unidad de derivación de contextos de posición de alta frecuencia 124d, la unidad de derivación de contextos de referencia adyacentes 124c) sea un valor fuera del intervalo de índices de contexto usados para sub-regiones ubicadas en el lado de baja frecuencia, y el valor de un índice de contexto para croma, que es un índice de contexto usado para una sub-región ubicada en el lado de alta frecuencia y que se deriva por el medio de derivación de índices de contexto, esté dentro del intervalo de índices de contexto usados para sub-región ubicada en el lado de baja frecuencia.
Ejemplo de configuración en el cual la remoción de retraso de actualización de contexto se toma en cuenta en el octavo ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Un proceso ejemplar llevado a cabo por la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -B en el cual la remoción de retraso de actualización de contexto se toma en cuenta se describirá en adelante con referencia a la figura 48 y figura 52 a figura 53.
En caso de que se use un contexto de posición, como se describió previamente, un contexto usado para la decodificación de un indicador de presencia/ausencia de coeficientes en una posición dada puede derivarse sin referencia al valor del indicador de presencia/ausencia de coeficientes inmediatamente precedente. Por lo tanto, la ejecución paralela del proceso de derivación de contextos y el proceso de decodificación puede lograrse.
Sin embargo, en un caso en donde el mismo contexto se use en un proceso de decodificación, una actualización del estado poseído por un contexto es necesaria de acuerdo con si le resultado de decodificación del contexto inmediatamente precedente es 0 ó 1. Por lo tanto, un retraso para esta actualización se presenta. El siguiente es un ejemplo de configuración de una unidad de decodificación de indicadores de presencia/ausencia de coeficientes que logra la ventaja de reducir un retraso causado por la actualización del estado de un contexto en el caso de un contexto de posición al asignar un contexto diferente al contexto inmediatamente precedente.
La figura 57 incluye diagramas que ilustran un método de derivación para un índice de contextos dentro de un sub-bloque. La figura 57A es un diagrama que ilustra la relación entre el orden de escaneo de sub-bloques y valores de desplazamiento ctxCnt de índices de contexto dentro de los sub-bloques. Como se ilustra en el dibujo, el valor de desplazamiento ctxCnt usa diferentes valores tales como 0, 1, 0, y 1 para cada orden de escaneo. Estos valores de desplazamiento pueden usarse para asignar un contexto diferente al contexto inmediatamente precedente. La figura 57B ilustra un ejemplo de una tabla usada para el procesamiento descrito arriba. La tabla ilustrada en la figura 57B es una tabla en la cual una posición relativa en un sub-bloque es ingresada como una dirección en escaneo de cuadrícula para obtener un valor de desplazamiento ctxCnt.
La figura 57C ilustra un ejemplo de uso. En el ejemplo de uso, una dirección en escaneo de cuadrícula se obtiene por el cálculo de (xC&3) + (yC&3 << 2) a partir de la posición (xC, yC) de un componente de frecuencia, y luego la tabla ilustrada en la figura 57B es referenciada para obtener un valor de desplazamiento ctxCnt. El valor de desplazamiento ctxCnt puede calcularse por cálculo normal, sin usar una tabla, mediante el uso de un contador cntlnSubBlock en un sub-bloque. La figura 57D ilustra un ejemplo de este cálculo. El contador cntlnSubBlock toma los valores 0, 1, 2, 3, 15 en el orden de escaneo de sub-bloques. En este caso, los valores de desplazamiento ctxCnt pueden calcularse por el resto del contador cntlnSubBlock dividido entre 2 (&1) . El valor del contador cntlnSubBlock puede tener los valores 0, 1, 2, 3, 15 en orden de escaneo inverso.
La figura 58 ilustra una configuración que puede proporcionar un grado más alto de procesamiento paralelo que aquél en el ejemplo de la figura 57. La figura 58A es un diagrama que ilustra la relación entre el orden de escaneo de sub-bloques y valores de desplazamiento ctxCnt de índices de contexto dentro de los sub-bloques. Como se ilustra en el dibujo, el valor de desplazamiento ctxCnt usa valores diferentes en unidades de N (N = 3) , tales como 0, 1, 2, 0, 1, 2, ... para cada orden de escaneo. Estos valores de desplazamiento pueden usarse para asignar N diferentes contextos consecutivos. Ya que no sólo decodificación inmediatamente precedente sino también decodificación que precede a la decodificación inmediatamente precedente por dos (o más) pueden mantenerse independientes, el paralelismo puede incrementarse más. La figura 58B ilustra un ejemplo de una tabla usada para el procesamiento descrito arriba, la figura 58C ilustra un ejemplo de uso y la figura 58D ilustra un ejemplo de método de cálculo con base en cálculo. Todos ellos están relacionados con procesamiento similar a aquél de la figura 57, y se omite entonces una descripción de los mismos. Aunque N = 3 es usado, procesamiento similar puede llevarse a cabo para N mayor que o igual a N = 4.
La figura 59 es un diagrama que ilustra pseudo código que implementa el método de asignación de contextos descrito arriba. Específicamente, se ilustra un proceso de derivación para derivar un índice de contexto ctxldx para luma y croma, el cual es un índice de contexto que será asignado a una región de frecuencia incluida en cada una de las sub-regiones R0 a R3 ilustradas en la figura 48A. En la figura 59, el contexto para la región R0 se deriva por la unidad de derivación de contextos de posición de baja frecuencia 124b, el contexto para la región Rl a la región R2 se deriva por la unidad de derivación de contextos de referencia adyacentes 124c, y el contexto para la región R3 se deriva por la unidad de derivación de contextos de posición de alta frecuencia 124d.
La unidad de derivación de contextos de referencia adyacentes 124c deriva un índice de contexto sigCtx para, por ejemplo, los componentes de frecuencia incluidos en la sub-región Rl ilustrada en la figura 48A o 48B usando la expresión abajo, y suministra el resultado de derivación sigCtx a la unidad de clasificación de frecuencias 124a. sigCtx = sigCtxOffsetRl + Min(2, ctxCnt) Aq í, ctxcCnt se obtiene por un proceso de transformación de muchos a uno (procesos de agregación) , aquí, al llevar a cabo desplazamiento a la derecha de tal forma que, como se indica en la expresión abajo, el valor de recuento se reduzca a aproximadamente 1/2. ctxCnt = (cnt+1) >> 1 El proceso de transformación de muchos a uno puede reemplazarse por un proceso para fijar un recuento en un valor fijo (aquí, 3) como sigue. ctxCnt = min(3, cnt) El número de recuentos del coeficiente de transformación no cero cnt se calcula al, como en el pseudo código siguiente, referirse a los cinco coeficientes de transformación previamente decodificados el, c2, c3, c4 y c5 o referirse a los cuatro coeficientes de transformación el, c2, c4 y c5 previamente decodificados de acuerdo con la posición (xC, yC) del coeficiente de transformación objetivo sobre los coeficientes de frecuencia. si ( ( (xC&3) | | (yC&3) )&&( ( (XC+D&3) | | ( (yC+2)&3) ) ) ) { cnt = (cl!=0) + (c2!=0) + (c4!=0) + (c5!=0) ; } si no{ cnt = (cl!=0) + (c2!=0) + (c3!=0) + (c4!=0) + (C5!=0) ; } Además, la unidad de derivación de contextos de referencia adyacentes 124c deriva un índice de contexto sigCtx para, por ejemplo, los componentes de frecuencia incluidos en la sub-región R2 ilustrado en la figura 48A usando la expresión abajo, y suministra el resultado de derivación sigCtx a la unidad de clasificación de frecuencias 124a. sigCtx = sigCtxOffsetR2 + Min(2, ctxCnt) El método de cálculo para el número de recuentos del coeficiente de transformación no cero cnt es similar a aquél para la sub-región Rl .
La unidad de derivación de contextos de posición de alta frecuencia 124d calcula un valor de desplazamiento para, por ejemplo, los componentes de frecuencia incluidos en la sub-región R3 ilustrada en la figura 48 usando la siguiente expresión . ctxCnt = tbl [ (xC&3) + (yC&3) << 2] Un índice de contexto sigCtx se deriva usando la suma del valor de desplazamiento dado arriba y el punto de partida de sigCtxOffsetR3 del índice de contexto para la sub-región R3 de acuerdo con la expresión abajo, y el resultado de derivación sigCtx se suministra a la unidad de clasificación de frecuencias 124a. sigCtx = sigCtxOffsetR3 + ctxCnt Para la sub-región R3 , que incluye componentes de alta frecuencia, la ventaja de reducir la cantidad de procesamiento debido a un contexto se deriva usando un contexto de posición, proporcionando un proceso de derivación de contextos y un proceso de decodificación, y puede lograrse mejorar la emisión gracias a la remoción de un retraso causado por la actualización del estado de un contexto.
Aunque esta configuración proporciona una configuración para la sub-región R3 de componentes de alta frecuencia, la ventaja de mejorar la emisión debido a la remoción de un retraso causado por la actualización del estado poseído por un contexto también se puede utilizar en cualquier otra configuración para calcular diferentes valores de desplazamiento ctxldx en posiciones de frecuencia sucesivas en un bloque y un sub-bloque y para calcular un Indice de contexto sigCtx a partir de la suma del valor de desplazamiento ctxldx y un punto de partida dado.
También en un caso en donde la remoción de retraso de actualización de contexto se toma en cuenta, la unidad de derivación de contextos de posición de alta frecuencia 124d puede usar el contexto que derive la unidad de derivación de contextos de referencia adyacentes 124c. Es decir, un contexto puede ser compartido en que una sub-región en donde un contexto de referencia adyacente sea usado y una sub-región de alta frecuencia en donde se use un contexto de posición. Un ejemplo especifico de esta configuración se describirá usando la figura 60.
Los procesos de la figura 59 y figura 60 son diferentes sólo en términos del proceso para la unidad de derivación de contextos de posición de alta frecuencia 124d. Después de que un valor de desplazamiento ctxCnt es derivado, un índice de contexto sigCtx se deriva para luma usando la siguiente expresión. sigCtx = sigCtxOffsetR2 + ctxCnt Para croma, un índice de contexto sigCtx se deriva usando la siguiente expresión. sigCtx = sigCtxOffsetRl + ctxCnt El proceso descrito arriba puede lograr la ventaja de, mientras se reduce uso de memoria para contextos debido a compartir contextos, reducir la cantidad de procesamiento toda vez que un contexto se deriva usando un contexto de posición, proporcionar un proceso de derivación de contexto es un proceso de decodificación, y mejorar la emisión debido a la remoción de un retraso causado por la actualización del estado de un contexto.
Noveno ejemplo de configuración de unidad de decodificación de indicadores de presencia/ausencia de coeficientes Un noveno ejemplo de configuración de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con esta modalidad se describirá con referencia a la figura 40. En este ejemplo de configuración, las condiciones en las cuales la unidad de clasificación de frecuencias 124a de acuerdo con el cuarto ejemplo de configuración clasifica una región de frecuencia en sub-regiones R0 a R5 son cambiadas. Los elementos que tengan las mismas funciones que los elementos ilustrados en el séptimo a octavo ejemplos de configuración descritos arriba se les dan los mismos números, y se omite una descripción de los mismos.
La figura 40 es un diagrama de bloques que ilustra una configuración de una unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-C de acuerdo con este ejemplo de configuración. Como se ilustra en la figura 40, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-C de acuerdo con este ejemplo de configuración incluye una unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques XI, una unidad de clasificación de frecuencias 124a, una unidad de derivación de contextos de posición de baja frecuencia 124b, una unidad de derivación de contextos de referencia adyacentes 124c y una unidad de derivación de contextos de posición de alta frecuencia 124d. El flujo de un proceso de decodificación llevado a cabo por la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-C se describirá usando la figura 33.
Unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques XI incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-C La unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques XI incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-C interpreta un bin suministrado desde la unidad de decodificación de bits 132, y decodifica un indicador de presencia/ausencia de coeficientes de sub-bloque (significant_coeffgroup_flag) que indica si al menos un coeficiente de transformación no cero está presente o no en cada uno de los sub-bloques que constituyen una región de frecuencia (etapa SY1 en la figura 33 ) .
Luego, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques XI decodifica, para cada sub-bloque en un bloque de transformación, un indicador de presencia/ausencia de coeficientes de transformación en el sub-bloque correspondiente (etapa SY2 a etapa SY4 en la figura 33) . Es decir, si el indicador de presencia/ausencia de coeficientes de sub-bloque es igual a l (SÍ en la etapa SY2 en la figura 33) en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques XI, un indicador de presencia/ausencia de coeficientes en el sub-bloque es decodificado usando la unidad de clasificación de frecuencias 124a, la unidad de derivación de contextos de posición de baja frecuencia 124b, la unidad de derivación de contextos de referencia adyacentes 124c y la unidad de derivación de contextos de posición de alta frecuencia 124d. Si el indicador de presencia/ausencia de coeficientes de sub-bloques es igual a 0 (NO en la etapa SY2 en la figura 33), la decodificación de un indicador de presencia/ausencia de coeficientes en el sub-bloque es saltada, y el proceso procede al procesamiento del sub-bloque subsecuente.
Unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-C La unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-C clasifica el componente de frecuencia que será decodificado en cualquiera de una pluralidad de sub-regiones de acuerdo con la posición del componente de frecuencia que será decodificado en la región de frecuencia, y asigna un índice de contexto ctxldx derivado por cualquiera de la unidad de derivación de contextos de posición de baja frecuencia 124b, la unidad de derivación de contextos de referencia adyacentes 124c y la unidad de derivación de contextos de posición de alta frecuencia 124d al componente de frecuencia que será decodificado (etapa SY3 en la figura 33) .
La unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-C se refiere a la posición (uiPosX, uiPosY) en la cual cada componente de frecuencia incluido en la región de frecuencia se ubica en la región de frecuencias, que clasifica el componente de frecuencia correspondiente en cinco sub-regiones RO a R4. Se asume aquí que uiPosX = 0, 1, sz-1 y uiPosY = 0, 1, sz-1 (en donde sz representa, como se describió arriba, el número de pixeles en un lado de la TU que será procesada, es decir, el número de componentes de frecuencia en un lado de la región de frecuencia objetivo; por ejemplo, sz = 16, 32, etc . ) .
Aquí, una región de frecuencia de szxsz bloques se divide en 4x4 sub-bloques, y la posición del sub-bloque que incluye el componente de frecuencia (uiPosX, uiPosY) es representada por (xCG, yCG) . La posición (xCG, yCG) del sub-bloque que incluye el componente de frecuencia se deriva usando las siguientes expresiones (ec. Cl) a (ec. C2) . xCG = uiPosX » 2... (ec. Cl) yCG = uiPOsY » 2... (ec. C2) Aquí, xCG = 0, 1, (sz-1) » 2 y yCG = 0, 1, (sz-1) » 2.
Más específicamente, la unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-C lleva a cabo el siguiente proceso de clasificación: (1) Clasificación de un componente de frecuencia que satisface xCG+yCG < THC y uiPOsX+uiPosY < THZ en la sub-región R0. (2) Clasificación de un componente de frecuencia que satisface xCG+yCG < THC and THZ < uiPosX+uiPosY < TH1 en la sub-región Rl . (3) Clasificación de un componente de frecuencia que satisface xCG+yCG < THC and TH1 < uiPosX+uiPosY en a sub- región R2. (4) Clasificación de un componente de frecuencia que satisface THC < xCG+yCG < THD en la sub-región R3. (5) Clasificación de un componente de frecuencia que satisface THD < xCG+yCG en la sub-región R4.
Pseudo código para el proceso de clasificación descrito arriba es el siguiente. *********************************** si (xCG+yCG < THC) { si (uiPosX+uiPosY < THZ) { clasificar en R0 } si no, si (uiPosX+uiPosY < TH1) { clasificar en Rl } si no { //si (uiPosX+uiPosY>= TH1) clasificar en R2 } } si no, si (xCG+yCG < THD) { clasificar en R3 } si no { // si (xCG+yCG>= THD clasificar en R4 } *********************************************** Aquí, el valor umbral THZ se establece en 2. Además, el valor umbral TH1 = 5. Valores específicos de los valores umbral THC y THD pueden establecerse usando, por ejemplo, el tamaño de región de frecuencia log2TrafoSize como sigue .
THC = 1 << (log2TrafoSize - 2), THD = 1 << (log2TrafoSize - 2) +2 Es decir, THC = 4 y THD = 6 se establecen cuando el tamaño de la región de frecuencia es 16x16, y THC = 8 y THD = 10 se establecen cuando el tamaño de la región de frecuencia es 32x32. De esta manera, diferentes valores umbral pueden ser usados de acuerdo con el tamaño de la región de frecuencia .
La figura 41 ilustra un ejemplo de una región de frecuencia que se divide en sub-regiones R0, Rl, R2 , R3 y R4 usando un proceso de clasificación llevado a cabo por la unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-C.
La unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-C asigna el índice de contexto derivado por la unidad de derivación de contextos de posición de baja frecuencia 124b a los componentes de frecuencia incluidos en la sub-región RO, asigna el índice de contexto derivado por la unidad de derivación de contextos de referencia adyacentes 124c a los componentes de frecuencia incluidos en las sub-regiones Rl, R2 y R3 , y asigna el índice de contexto derivado por la unidad de derivación de contextos de posición de alta frecuencia 124d a los componentes de frecuencia incluidos en la sub-región R3.
Más aún, la unidad de clasificación de frecuencias 124a incluida en la unidad de derivación de contextos de referencia adyacentes 124c calcula un índice de contexto ctxldx para determinar un contexto que se usará para decodificar el elemento de sintaxis signif icant_coef f_f lag usando la unidad de decodificación de códigos aritmética 130. El índice de contextos ctxldx se calcula para cada tamaño de región de frecuencia y para cada componente de frecuencia que será decodificado (etapa SY4 en la figura 33) . El elemento de sintaxis decodificado s igni f i cant_coe f f_f 1 ag es almacenado en la unidad de memoria de coeficientes decodif icados 126, y es referenciado por la unidad de decodificación de valores de coeficientes 125. El índice de contexto ctxldx usado para decodificación es suministrado a la unidad de grabación/actualización de contextos 131.
En lo sucesivo, se dará una descripción específica de derivación de contextos para las sub-regiones RO a R4.
Unidad de derivación de contextos de posición de baja frecuencia 124b incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -C La unidad de derivación de contextos de posición de baja frecuencia 124b incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -C deriva un índice de contexto ctxldx para el componente de frecuencia que será decodificado, con base en la posición del componente de frecuencia en la región de frecuencia si el componente de frecuencia está incluido en una sub-región del lado de baja frecuencia.
La unidad de derivación de contextos de posición de baja frecuencia 124b incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-C deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región RO usando la expresión abajo (ec. C3) , y suministra el resultado de derivación ctxldx a la unidad de clasificación de frecuencias 124a. ctxldx = NX+2XuiPosX + uiPosY ... (ec. C3) NX es una constante que representa el punto de partida del índice de contexto. Si el tamaño de la región de frecuencia es 4x4 y 8x8 y los números de contextos usados para la misma son N4 y N8 , respectivamente, el punto de partida para los tamaños de región de frecuencia de 16x16 y 32x32 se da por NX = N4 + N8.
Unidad de derivación de contextos de referencia adyacentes 124c incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-C La unidad de derivación de contextos de referencia adyacentes 124c incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-C deriva un índice de contexto ctxldx para el componente de frecuencia que será decodificado, con base en el número de coeficientes de transformación no cero decodificados cnt para componentes de frecuencia adyacentes del componente de frecuencia .
La unidad de derivación de contextos de referencia adyacentes 124c incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-C deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región Rl usando la expresión (ec. C4) y un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R2 usando la expresión (ec. C5) , y suministra los resultados de derivación ctxldx a la unidad de clasificación de frecuencias 124a. ctxldx = NX + 3 + min(2, temp) ... (ec. C4) temp = (cnt + 1) >> 1 ctxldx = NX + 6 + min(2, temp) ... (ec. C5) temp = (cnt + 1) >> 1 En las sub-regiones Rl y R2, el número de recuentos del coeficiente de transformación no cero cnt se deriva usando (Cl, C2 , C3 , C4 y C5) ilustrados en la figura 10A o figura 10B de acuerdo con la siguiente expresión (ec. C6) . cnt = (cl!=0) + (c2!=0) + (c3!=0) + (c4!=0) + (c5 !=0) ... (ec. C6) Como alternativa, el número de recuentos del coeficiente de transformación no cero cnt puede derivarse usando los componentes de frecuencia de referencia (cl, c2, c4 y c5) ilustrados en la figura 36A de acuerdo con la siguiente expresión (ec. C7) en la cual el coeficiente de transformación en las coordenadas (c3) de la posición inmediatamente precedente en el orden de procesamiento que precede (si el orden de procesamiento es orden de escaneo inverso, el coeficiente de transformación debajo de la posición del coeficiente de transformación objetivo) no es referido. Este proceso permite que un contexto usado para la decodificación de un indicador de presencia/ausencia de coeficientes en una posición dada se derive sin referencia al valor del indicador de presencia/ausencia de coeficientes inmediatamente precedente, y puede por lo tanto lograr ejecución paralela del proceso de derivación de contextos y el proceso de decodificación. cnt = (cl!=0) + (c2!=0) + (c4!=0) + (c5!=0) ... (ec. Cl) La unidad de derivación de contextos de referencia adyacentes 124c de acuerdo con este ejemplo de configuración deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R3 usando la expresión abajo (ec. C8) , y suministra el resultado de derivación ctxldx a la unidad de clasificación de frecuencias 124a. ctxldx = NX + 9 + min(2, temp) ... (ec. C8) temp = (cnt + 1) >> 1 Para la sub-región R3, el número de recuentos del coeficiente de transformación no cero cnt se deriva usando los tres componentes de frecuencia de referencia (el, c3 y c4) ilustrados en la figura 151 de acuerdo con la siguiente expresión (ec. C9) . cnt = (cl!=0) + (c3!=0) + (c4!=0) ... (ec. C9) Cada término toma 1 si la comparación entre paréntesis es verdadera, y toma 0 si la comparación entre paréntesis es falsa.
Los componentes de frecuencia de referencia no están limitados a el, c3 y c4 ilustrados en la figura 151, y los tres componentes de frecuencia ilustrados en las figuras 15C, 15D, 15E o 15F pueden ser usados.
El índice de contextos ctxldx para la sub-región R3 puede no necesariamente ser derivado usando la expresión (ec. C9) , sino que puede derivarse usando la expresión (ec. CIO) . ctxldx = NX + 9 + min(2, cnt) ... (ec. CIO) Unidad de derivación de contextos de posición de alta frecuencia 124d incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -C La unidad de derivación de contextos de posición de alta frecuencia 124d incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -C deriva un índice de contextos ctxldx para el componente de frecuencia que será decodificado, con base en la posición del componente de frecuencia en la región de frecuencia si el componente de frecuencia está incluido en una sub-región del lado de alta frecuencia.
La unidad de derivación de contextos de posición de alta frecuencia 124d incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -C deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R4 usando la expresión abajo (ec. Cll) , y suministra el resultado de derivación ctxldx a la unidad de clasificación de frecuencias 124a. ctxldx = NX + 11 + min(maxR3, (xCG+yCG-THD) >> shift) ... (ec. Cll) Aquí, como desplazamiento y maxR3 , por ejemplo, desplazamiento = 0 y maxR3 = 3 pueden usarse cuando el tamaño de la región de frecuencia objetivo sea 16x16, y desplazamiento = 1 y maxR3 = 3 pueden usarse cuando el tamaño de la región de frecuencia objetivo sea 32x32. Sin embargo, esta modalidad no está limitada a esto.
Un ejemplo de una región de frecuencia que se divide usando el proceso de clasificación por la unidad de clasificación de frecuencias 124a incluida en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -C no está limitado a aquél ilustrado en la figura 41. Por ejemplo, una región de frecuencia puede dividirse de una manera ilustrada en la figura 42. Es decir, la unidad de clasificación de frecuencias 124a puede configurarse para clasificar una región de frecuencia en sub-regiones R0, Rl, R2 , R3 y R4 como sigue. (1) Un componente de frecuencia que satisfaga xCG+yCG < THE and uiPosX+uiPosY < THZ se clasifica en la sub-región R0. (2) Un componente de frecuencia que satisfaga xCG+yCG < THE and THZ < uiPosX+uiPosY se clasifica en la sub-región Rl . (3) Un componente de frecuencia que satisfaga THE < xCG+yCG < THF se clasifica en la sub-región R2. (4) Un componente de frecuencia que satisfaga THF < xCG+yCG < THG se clasifica en la sub-región R3. (5) Un componente de frecuencia que satisfaga THG < xCG+yCG se clasifica en la sub-región R4.
Pseudo código para el proceso de clasificación descrito arriba es el siguiente. ************************************** si (xCG+yCG < THE) { clasificar en R0 } si no { // si (uiPosX+uiPosY>= THZ) clasificar en Rl } } si no, si (xCG+yCG < THF) { clasificar en R2 } si no, si (xCG+yCG < THG) { clasificar en R3 } si no { // xCG+yCG>= THG clasificar en R .
} ************************************************************* Aquí, el valor umbral THZ se establece en 2. Específicamente, los valores umbral THE, THF y THG pueden establecerse en, por ejemplo, los siguientes valores THE = 1 THF = 1 << (log2TrafoSize - 2) THG = 1 z<< (log2TrafoSize - 2) + 2 usando el tamaño de región de frecuencia (el tamaño de la TU que será procesada) log2TrafoSize . Es decir, THE = 1, THF = 2 y THG = 4 se pueden usar cuando el tamaño de región de frecuencia sea 16x16, y THE = 1, THF = 8 y THG = 10 se pueden usar cuando el tamaño de la región de frecuencia sea 32x32. De esta manera, diferentes valores umbral pueden ser usados de acuerdo con el tamaño de la región de frecuencia.
Como se describió arriba, de acuerdo con la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración, para una sub-región del lado de frecuencia más alta (por ejemplo, la sub-región R3 en la figura 41) que un valor umbral predeterminado THF, el número de coeficientes de transformación no cero decodificados que será referida para la derivación de un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación es más pequeño que el número de coeficientes de transformación no cero decodificados que será referido para una sub-región del lado de baja frecuencia (por ejemplo, la sub-región R2 en la figura 41) . De esta manera, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia. Además, para una sub-región del lado de frecuencia más alta (por ejemplo, la sub-región R4 en la figura 41 que el otro valor umbral THG, un índice de contexto se deriva con base en la posición no obstante de una referencia adyacente. Así, es posible reducir más la cantidad de procesamiento. Además, una referencia de posición no usa el valor de un indicador de presencia/ausencia de coeficientes previamente decodificado para la derivación de un contexto. De esta manera, también es posible mejorar paralelismo .
En la configuración descrita arriba, la unidad de clasificación de frecuencias 124a clasifica componentes de frecuencia en cinco sub-regiones . Como alternativa, los componentes de frecuencia pueden ser clasificados en tres sub-regiones. Por ejemplo, los siguientes procedimientos pueden ser llevados a cabo. (1) Un componente de frecuencia que satisfaga uiPosX+uiPosY < THZ and xCG+yCG < THG se clasifica en la sub-región 0. (2) Un componente de frecuencia que satisfaga THZ < uiPosX+uiPosY and xCG+yCG < THG se clasifica en la sub-región Rl . (3) Un componente de frecuencia que satisfaga THG < xCG+yCG se clasifica en la sub-región R4.
Pseudo código para el proceso de clasificación descrito arriba es el siguiente. **************************************** si (xCG+yCG < THG) { si (uiPosX+uiPosY < THZ) { clasificar en RO } si no { //si (uiPosX+uiPosY>= THZ) clasificar en Rl } } si no {// si (xCG+yCG>= THG) clasificar en R } *************************************** Como se describió arriba, en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -C de acuerdo con este ejemplo de configuración, la unidad de clasificación de frecuencias 124a se configura para clasificar la región de frecuencia objetivo en al menos tres sub-regiones de acuerdo con la posición del indicador de presencia/ausencia de coeficientes de transformación que será procesado y la posición del sub-bloque al cual pertenezca el indicador de presencia/ausencia de coeficientes de transformación.
La unidad de derivación de contextos de referencia adyacentes 124c deriva un índice de contexto al hacer referencia a NI coeficientes de transformación no cero decodificados (en donde NI es un número natural) para una primera sub-región (la sub-región Rl o R2 ) , y hacer referencia a N2 coeficientes de transformación no cero decodificados (en donde N2 es un número natural que satisface N2 < NI) para una segunda sub-región (la sub-región R3) .
Para una tercera sub-región (la sub-región R4) , la unidad de derivación de contextos de posición de alta frecuencia 124d deriva un índice de contexto de acuerdo con la posición de un sub-bloque al cual pertenezca un indicador de presencia/ausencia de coeficientes de transformación.
De acuerdo con la configuración descrita arriba, una combinación de una sub-región en donde el número de coeficientes de transformación no cero decodificados que será referido para la derivación de un índice de contexto se establece para ser más pequeño y una sub-región para la cual un índice de contexto se deriva con base en la posición de un indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo y la posición de un sub-bloque al cual pertenece el indicador de presencia/ausencia de coeficientes de transformación puede reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente, mientras se logra alta eficiente de codificación.
Dispositivo de codificación de video 2 Una configuración del dispositivo de codificación de video 2 de acuerdo con esta modalidad se describirá con referencia a la figura 26 a figura 28. El dispositivo de codificación de video 2 es un dispositivo de codificación que implementa las tecnologías adoptadas en la norma H.26 /MPEG-4 AVC, las tecnologías adoptadas en software KTA que es un codee para desarrollo conjunto en VCEG (Grupo de Expertos de Codificación de Video) , las tecnologías adoptadas en software TMuC (Modelo de Prueba en Consideración) , las tecnologías propuestas en HEVC (Codificación de Video de Alta Eficiencia), que es un codee sucesor de H.264/MPEG-4 AVC. En lo sucesivo, a las mismas porciones que las porciones descritas arriba se les asignan los mismos números, y una descripción de las mismas se omite.
La figura 26 es un diagrama de bloques que ilustra una configuración del dispositivo de codificación de video 2. Como se ilustra en la figura 26, el dispositivo de codificación de video 2 incluye un generador de imágenes de predicción 21, un transíormador/cuantificador 22, un descuantificador/transformador inverso 23, un sumador 24, una memoria de cuadros 25, un filtro de circuito 26, un codificador de códigos de longitud variable 27 y un sustractor 28. Como se ilustra en la figura 26, además, el generador de imágenes de predicción 21 incluye una unidad de generación de imágenes de intra predicción 21a, una unidad de detección de vectores de movimiento 21b, una unidad de generación de imágenes de ínter predicción 21c, una unidad de control de esquemas de predicción 2Id y una unidad de remoción de redundancia de vectores de movimiento 21e. El dispositivo de codificación de video 2 es un dispositivo configurado para codificar una imagen en movimiento #10 (una imagen que será codificada) para generar datos codificados #1- Generador de imágenes de predicción 21 El generador de imágenes de predicción 21 divide recursivamente una LCU que será procesada en una o una pluralidad de sub-CUs, y divide más cada CU de hoja en una o una pluralidad de divisiones para de esta manera generar, para cada división, una imagen de inter predicción Pred_Inter que use predicción inter-cuadros o una imagen de intra predicción Pred_Intra que use predicción intra-cuadros . La imagen de inter predicción Pred_Inter y la imagen de intra predicción Pred_Intra generadas son suministradas al sumador 24 y al sustractor 28 como imágenes de predicción Pred.
El generador de imágenes de predicción 21 salta, para una PU a la cual un modo de salto se aplique, la codificación de otros parámetros incluidos en la PU. Además, (1) el modo de división de la LCU objetivo en sub-CUs y divisiones, (2) si se aplica o no el modo de salto, y (3) cuál de la imagen de inter predicción Pred_Inter y la imagen de intra predicción Pred_Intra generar para cada división se determinan de tal manera que se puede optimizar la eficiencia de codificación.
Unidad de generación de imágenes de intra predicción 21a La unidad de generación de imágenes de intra predicción 21a genera una imagen de predicción Pred_Intra para cada división usando predicción intra-cuadros . Específicamente, la unidad de generación de imágenes de intra predicción 21a (1) selecciona un modo de predicción que se usará para la intra predicción de cada división, y (2) genera una imagen de predicción Pred_Intra a partir de una imagen decodificada P usando el modo de predicción seleccionado. La unidad de generación de imágenes de intra predicción 21a suministra la imagen de intra predicción Pred_Intra generada a la unidad de control de esquemas de predicción 21d.
Además, la unidad de generación de imágenes de intra predicción 21a determina un modo de predicción estimado para una división objetivo a partir de un modo de predicción asignado a una división adyacente de la división objetivo, y suministra un indicador de modo de predicción estimado que indica si el modo de predicción estimado y un modo de predicción realmente seleccionado para la división objetivo son o no idénticos al codificador de códigos de longitud variable 27 a través de la unidad de control de esquemas de predicción 21d como parte del parámetro de intra predicción PP_Intra. El codificador de códigos de longitud variable 27 se configura para incorporar el indicador en los datos codificados #1.
Si el modo de predicción estimado para la división objetivo y el modo de predicción realmente seleccionado para la división objetivo son diferentes, la unidad de generación de imágenes de intra predicción 21a suministra un índice de modo de predicción remanente que indica un modo de predicción para la división objetivo al codificador de códigos de longitud variable 27 a través de la unidad de control de esquemas de predicción 21d como parte del parámetro de intra predicción PP_Intra. El codificador de códigos de longitud variable 27 se configura para incorporar el índice de modo de predicción restante en los datos codificados #1.
Unidad de detección de vectores de movimiento 21b La unidad de detección de vectores de movimiento 21b detecta un vector de movimiento mv para cada división. Específicamente, la unidad de detección de vectores de movimiento 21b (1) selecciona una imagen decodificada filtrada adaptivamente P_ALF' que se usará como una imagen de referencia, y (2) busca la imagen decodificada filtrada adaptivamente P_ALF' seleccionada para una región que se aproxima mejor a la división objetivo para detectar un vector de movimiento mv para la división objetivo. La imagen decodificada filtrada adaptivamente P_ALF' es una imagen obtenida al llevar a cabo un proceso de filtro adaptivo usando el filtro de circuito 26 en una imagen decodificada cuyo cuadro completo ha sido ya decodificado . La unidad de detección de vectores de movimiento 21b puede leer los valores de pixel de pixeles que constituyan la imagen decodificada filtrada adaptivamente P_ALF' a partir de la memoria de cuadros 25. La unidad de detección de vectores de movimiento 21b suministra el vector de movimiento mv detectado, junto con un índice de imágenes de referencia RI que especifica la imagen decodificada filtrada adaptivamente P_ALF' usada como una imagen de referencia, a la unidad de generación de imágenes de ínter predicción 21c y la unidad de remoción de redundancia de vectores de movimiento 21e.
Unidad de generación de imágenes de inter predicción 21c La unidad de generación de imágenes de inter predicción 21c genera una imagen compensada en movimiento me para cada división de inter predicción usando predicción inter-cuadros . Específicamente, la unidad de generación de imágenes de inter predicción 21c genera una imagen compensada en movimiento me para la imagen decodificada filtrada adaptivamente P_ALF' especificada por el índice de imágenes de referencia RI suministrado desde la unidad de detección de vectores de movimiento 21b, usando el vector de movimiento mv suministrado desde la unidad de detección de vectores de movimiento 21b. De manera similar a la unidad de detección de vectores de movimiento 21b, la unidad de generación de imágenes de inter predicción 21c puede leer los valores de pixel de los pixeles que constituyan la imagen decodificada filtrada adaptivamente P_ALF' de la memoria de cuadros 25. La unidad de generación de imágenes de inter predicción 21c suministra la imagen compensada en movimiento me generada (imagen de inter predicción Pred_Inter) a la unidad de control de esquemas de predicción 2Id junto con el índice de imágenes de referencia RI suministrado desde la unidad de detección de vectores de movimiento 21b.
Unidad de control de esquemas de predicción 2Id La unidad de control de esquemas de predicción 2Id compara la imagen de intra predicción Pred_Intra y la imagen de inter predicción Pred_Inter con la imagen que será codificada, y selecciona cuál de intra predicción e inter predicción llevar a cabo. Si se selecciona intra predicción, la unidad de control de esquemas de predicción 2Id suministra la imagen de intra predicción Pred_Intra al sumador 24 y al sustractor 28 como una imagen de predicción Pred, y suministra el parámetro de intra predicción PP_Intra suministrado desde la unidad de generación de imágenes de intra predicción 21a al codificador de códigos de longitud variable 27. Por otro lado, si se selecciona inter predicción, la unidad de control de esquemas de predicción 2Id suministra la imagen de ínter predicción Pred_Inter al sumador 24 y al sustractor 28 como una imagen de predicción Pred, y suministra el índice de imágenes de referencia RI , y un índice de predictores de vectores de movimiento PMVI y una diferencia de vectores de movimiento MVD, descritos abajo, que son suministrados desde la unidad de remoción de redundancia de vectores de movimiento 21e, al codificador de códigos de longitud variable 27 como un parámetro de inter predicción PP_Inter. La unidad de control de esquemas de predicción 21d suministra además información de tipo de predicción Pred_type que indica que imagen de predicción entre la imagen de intra predicción Pred_Intra y la imagen de inter predicción Pred_Inter ha sido seleccionada al codificador de códigos de longitud variable 27.
Unidad de remoción de redundancia de vectores de movimiento 2le La unidad de remoción de redundancia de vectores de movimiento 2le remueve redundancia en el vector de movimiento mv detectado por la unidad de detección de vectores de movimiento 21b. Específicamente, la unidad de remoción de redundancia de vectores de movimiento 21e (1) selecciona un método de estimación que se usará para la estimación del vector de movimiento mv, (2) deriva un vector de movimiento estimado pmv de acuerdo con el método de estimación seleccionado, y (3) sustrae el vector de movimiento estimado pmv del vector de movimiento mv para generar una diferencia de vector de movimiento MVD. La unidad de remoción de redundancia de vectores de movimiento 2le suministra la diferencia de vectores de movimiento generada MVD a la unidad de control de esquemas de predicción 2Id junto con un índice de predictores de vectores de movimiento PMVI que indica el método de estimación seleccionado.
Transformador/cuantificador 22 El transformador/cuantificador 22 (1) lleva a cabo una transformación de frecuencia tal como una transformada DCT (Transformada de Coseno Discreta) en un residuo de predicción D obtenido al restar la imagen de predicción Pred de la imagen que será codificada para cada bloque (unidad de transformación), (2) cuantifica un coeficiente de transformación Coeff_IQ obtenido por la transformación de frecuencias, y (3) suministra un coeficiente de transformación Coeff obtenido por cuantificación al codificador de códigos de longitud variable 27 y el descuantificador/transformador inverso 23. Nótese que el transformador/cuantificador 22 (1) selecciona una etapa de cuantificación QP que se usará para cuantificación, para cada TU, (2) suministra una diferencia de parámetro de cuantificación ?? que indica el tamaño de la etapa de cuantificación QP seleccionada al codificador de códigos de longitud variable 27, (3) y suministra la etapa de cuantificación QP seleccionada al descuantificador/transformador inverso 23. La diferencia de parámetros de cuantificación Aqp se refiere a un valor de diferencia obtenido al restar el valor de un parámetro de cuantificación qp' para la TU transformada en frecuencia y cuantificada inmediatamente precedente a partir del valor de un parámetro de cuantificación qp (por ejemplo, QP = 2pq/6) para la TU que será transformada en frecuencia y cuantificada .
La transformación DCT llevada a cabo por el transíormador/cuantificador 22 se da por, por ejemplo, la siguiente expresión matemática (2) , por ejemplo, si el bloque objetivo tiene un tamaño de 8x8 pixeles y un coeficiente de transformación no cuantificado para una frecuencia horizontal u y una frecuencia vertical v se representa por Coeff_IQ(u, v) (0 < u < 7, 0 < v = 7) .
Aquí, D(i, j) (0 < i < 7, 0 < j = 7) representa un residuo de predicción D en la posición (i, j) en el bloque objetivo. Además, C(u) y C (v) se dan como sigue.
• C(u) = 1/V2 (u = 0) • C(u) = 1 (u ? 0) • C(v) = 1/V2 (v = 0) · C(v) = 1 (v ? 0) Descuantificador/transformador inverso 23 El descuantificador/transformador inverso 23 (1) descuantifica el coeficiente de transformación cuantificado Coeff, (2) lleva a cabo una transformación de frecuencia inversa tal como una transformación DCT (Transformación de Coseno Discreta) inversa en un coeficiente de transformación Coeff_IQ obtenido por descuantificación, y (3) suministra un residuo de predicción D obtenido por la transformación de frecuencia inversa al sumador 24. El coeficiente de transformación cuantificado Coeff es descuantificado usando la etapa de cuantificación QP suministrada desde el transíormador/cuantificador 22. El residuo de predicción D enviado desde el descuantificador/transformador inverso 23 es un residuo en el cual un error de cuantificación se añade al residuo de predicción D para ser ingresado en el transíormador/cuantificador 22. Sin embargo, la misma designación se usa aquí para simplicidad. Una operación más específica del descuantificador/transformador inverso 23 es casi similar a aquella del descuantificador/transformador inverso 13 incluido en el dispositivo de decodificación de video 1.
Sumador 24 El sumador 24 suma la imagen de predicción Pred seleccionada por la unidad de control de esquemas de predicción 21d al residuo de predicción D generado por el descuantificador/transformador inverso 23 para generar una imagen decodificada (localmente) P. La imagen decodificada (localmente) P generada por el sumador 24 se suministra el filtro de circuito 26 y se almacena además en la memoria de cuadros 25 para ser usada como una imagen de referencia para intra predicción.
Codificador de códigos de longitud variable 27 El codificador de códigos de longitud variable 27 codifica (1) el coeficiente de transformación cuantificado Coeff y Aqp suministrado desde el transformador/cuantificador 22, (2) el parámetro de cuantificación PP (parámetro de inter predicción PP_Inter, y parámetro de intra predicción de PP_Intra) suministrados desde la unidad de control de esquemas de predicción 21d, (3) la información de tipo de predicción Pred_type, y (4) un parámetro de filtro FP suministrado desde el filtro de circuito 26, usando codificación por longitud variable para generar datos codificados #1.
La figura 27 es un diagrama de bloques que ilustra una configuración del codificador de código de longitud variable 27. Como se ilustra en la figura 27, el codificador de códigos de longitud variable 27 incluye un codificador de información residual cuantificada 271 para codificar el coeficiente de transformación cuantificado Coeff, un codificador de parámetros de predicción 272 para codificar el parámetro de predicción PP, un codificador de información de tipo de predicción 273 para codificar la información de tipo de predicción Pred_type, y un codificador de parámetros de filtro 274 para codificar el parámetro de filtro FP. Una configuración específica del codificador de información residual cuantificada 271 se describirá abajo, y no se describe aquí .
Sustractor 28 El sustractor 28 sustrae la imagen de predicción Pred seleccionada por la unidad de control de esquemas de predicción 2Id de la imagen que será codificada para generar un residuo de predicción D. El residuo de predicción D generado por el sustractor 28 es transformado en frecuencia y cuantificado por el transformador/cuantificador 22.
Filtro de circuito 26 El filtro de circuito 26 tiene (1) una función de un filtro de desbloqueo (DF) para alisar límites de bloque en la imagen decodificada P o imágenes alrededor de límites de división (proceso de desbloqueo) y (2) una función de un filtro adaptivo (ALF: Filtro de Circuito Adaptivo) para llevar a cabo un proceso de filtro adaptivo en una imagen a la cual el filtro de desbloqueo haya sido aplicado, usando el parámetro de filtro FP.
Codificador de información residual cuantificada 271 El codificador de información residual cuantificada 271 codifica el coeficiente de transformación cuantificado Coeff (uiPosX, uiPosY) usando codificación aritmética binaria adaptiva a base de contexto (CABAC) para generar información residual cuantificada QD. Los elementos de sintaxis incluidos en la información residual cuantificada QD generada son como se ilustra en la figura 5.
Como se describió arriba, uiPosX y uiPosY son índices que indican la posición de cada componente de frecuencia en una región de frecuencia, y son índices que corresponden a la frecuencia horizontal U y frecuencia vertical V descritas arriba, respectivamente. En lo sucesivo, el coeficiente de transformación cuantificado Coeff puede ser denominado simplemente coeficiente de transformación Coeff.
Codificador de información residual cuantificada 271 La figura 28 es un diagrama de bloques que ilustra una configuración del codificador de información residual cuantificada 271. Como se ilustra en la figura 28, el codificador de información residual cuantificada 271 incluye una unidad de codificación de coeficientes de transformación 220 y una unidad de codificación de códigos aritméticos 230.
Unidad de codificación de códigos aritméticos 230 La unidad de codificación de códigos aritméticos 230 tiene una configuración para codificar cada bin suministrado desde la unidad de codificación de coeficientes de transformación 220 al hacer referencia a un contexto para generar información residual cuantificada QD, e incluye, como se ilustra en la figura 1, una unidad de grabación/actualización de contextos 231 y una unidad de codificación de bits 232.
Unidad de grabación/actualización de contextos 231 La unidad de grabación/actualización de contextos 231 tiene una configuración para grabar y actualizar una variable de contextos CV manejada por cada índice de contextos ctxldx. La variable de contexto CV incluye (1) un símbolo más probable MPS que se presenta con alta probabilidad, y (2) un índice de estado de probabilidad pStateldx que especifica la probabilidad de ocurrencia del símbolo más probable MPS.
La unidad de grabación/actualización de contextos 231 se refiere al índice de contextos ctxldx suministrado desde cada unidad incluida en la unidad de codificación de coeficientes de transformación 220 y el valor de un bin codificado por la unidad de codificación de bits 232 para actualizar la variable de contexto CV, y graba la variable de contexto CV actualizada hasta el siguiente momento en que la variable de contextos CV sea actualizada. El símbolo más probable MPS es igual a 0 ó 1. El símbolo más probable MPS y el índice de estado de probabilidad pStateldx son actualizados cada vez que la unidad de codificación de bits 232 codifica un bin.
El índice de contextos ctxldx puede especificar directamente un contexto para cada componente de frecuencia, o puede ser un valor de incremento a partir del desplazamiento de un índice de contexto que se establezca para cada TU que será procesada (esto aplica similarmente a lo siguiente) .
Unidad de codificación de bits 232 La unidad de codificación de bits 232 se refiere a la variable de contexto CV grabada en la unidad de grabación/actualización de contextos 231, y codifica cada bin suministrado desde cada unidad incluida en la unidad de codificación de coeficientes de transformación 220 para generar información residual cuantificada QD. El valor del bin codificado también es suministrado a la unidad de grabación/actualización de contextos 231, y es referido para poder actualizar la variable de contexto CV.
Unidad de codificación de coeficientes de transformación 220 Como se ilustra en la figura 28, la unidad de codificación de coeficientes de transformación 220 incluye una unidad de codificación de última posición 221, una unidad de almacenamiento de tablas de orden de escaneo 222, una unidad de control de codificación de coeficientes 223, una unidad de codificación de indicadores de presencia/ausencia de coeficientes, una unidad de codificación de valores de coeficiente 225, una unidad de memoria de coeficientes codificados 226 y una unidad de derivación de sintaxis 227.
Unidad de derivación de sintaxis 227 La unidad de derivación de sintaxis 227 se refiere a los valores de coeficientes de transformación Coeff (uiPosX, uiPosY) , y deriva los valores de elementos de sintaxis last_significant_coeff_x, last_significant_coeff_y, significant_coeff_flag, coeff_abs_level_greaterl_flag, coeff_abs_level_greater2_flag, coeff_sign_flag, y coeff_abs_level_minus3 para especificar estos coeficientes de transformación en una región de frecuencia objetivo. Los elementos de sintaxis derivados son suministrados a la unidad de memoria de coeficientes codificados 226. De los elementos de sintaxis derivados, last_significant_coeff_x y last_significant_coeff_y are también son suministrados a la unidad de control de codificación de coeficientes 223 y la unidad de codificación de última posición 221. De los elementos de sintaxis derivados, además, significant_coeff_flag también es suministrado a la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224. El contenido de los elementos de sintaxis respectivos ha sido descrito arriba, y no se describe aquí.
Unidad de codificación de última posición 221 La unidad de posición de última posición 221 codifica el elemento de sintaxis last_significant_coeff_x y last_significant_coeff_y suministrado desde la unidad de derivación de sintaxis 227. La unidad de codificación de última posición 221 suministra cada bin obtenido por la codificación de estos elementos de sintaxis a la unidad de codificación de bits 232. El índice de contexto ctxldx usado para la codificación de los elementos de sintaxis last_significant_coeff_x y last_significant_coeff_y es suministrado a la unidad de grabación/actualización de contextos 231.
Unidad de almacenamiento de tablas de orden de escaneo 222 La unidad de almacenamiento de tablas de orden de escaneo 222 almacena una tabla que proporciona la posición del componente de frecuencia que será procesado en una región de frecuencia usando e tamaño de la TU que será procesada, un índice de escaneo que indica un tipo de dirección de escaneo, y un índice de identificación de componentes de frecuencia asignado en orden de escaneo como argumentos. Ejemplos de la tabla de órdenes de escaneo incluyen ScanOrder ilustrado en la figura 5.
Unidad de control de codificación de coeficientes 223 La unidad de control de codificación de coeficientes 223 tiene una configuración para controlar el orden del proceso de codificación en cada unidad incluida en el codificador de información residual cuantificada 271. La unidad de control de codificación de coeficientes 223 se refiere a los elementos de sintaxis last_significant_coeff_x y last_significant_coeff_y suministrados desde la unidad de derivación de sintaxis 227 para identificar la posición del último coeficiente de transformación no cero en un escaneo hacia adelante, y suministra la posición (uiPosX, uiPosY) de los componentes de frecuencia a la unidad de codificación de indicadores de presencia/ausencia de coeficientes en orden de escaneo que inicia con la posición identificada del último coeficiente de transformación no cero como el origen y que es orden de escaneo inverso al orden de escaneo proporcionado en la tabla de orden de escaneo almacenada en la unidad de almacenamiento de tablas de orden de escaneo 222.
La unidad de control de codificación de coeficientes 223 puede configurarse para identificar la posición del último coeficiente de transformación no cero en un escaneo hacia adelante, y para suministrar la posición (uiPosX, uiPosY) de los componentes de frecuencia a la unidad de codificación de indicadores de presencia/ausencia de coeficientes en orden de escaneo que inicie con el componente inicial (componente de DC) como el origen y concluya con la posición identificada del último coeficiente de transformación no cero y que sea orden de escaneo hacia adelante del orden de escaneo provisto en la tabla de órdenes de escaneo almacenada en la unidad de almacenamiento de tablas de órdenes de escaneo 222.
Unidad de codificación de valores de coeficiente 225 La unidad de codificación de valores de coeficiente 225 codifica los elementos de sintaxis coeff_abs_level_greaterl_flag, coeff_abs_level_greater2_flag, coeff_sign_flag, y coeff_abs_level_minus3 suministrados desde la unidad de derivación de sintaxis 227. La unidad de codificación de valores de coeficiente 225 suministra cada bin obtenido por la codificación de estos elementos de sintaxis a la unidad de codificación de bits 232. El índice de contexto ctxldx usado para la codificación de estos elementos de sintaxis es suministrado a la unidad de grabación/actualización de contextos 231.
Unidad de memoria de coeficientes codificados 226 La unidad de memoria de coeficientes codificados 226 tiene una configuración para almacenar los valores de los elementos de sintaxis derivados por la unidad de derivación de sintaxis 227. En particular, la unidad de memoria de coeficientes codificados 226 almacena los valores del elemento de sintaxis significant_coeff_flag derivado por la unidad de derivación de sintaxis 227.
Unidad de codificación de indicadores de presencia/ausencia de coeficientes La unidad de codificación de indicadores de presencia/ausencia de coeficientes de acuerdo con esta modalidad tiene una configuración para clasificar una región de frecuencia en una o una pluralidad de sub-regiones de acuerdo con la magnitud de la frecuencia, derivar un índice de contexto ctxldx usando un método de derivación determinado para cada sub-región, y codificar el elemento de sintaxis significant_coeff_flag que indique la presencia o ausencia de un coeficiente de transformación no cero usando el índice de contexto ctxldx derivado.
Primer ejemplo de configuración de unidad de codificación de indicadores de presencia/ausencia de coeficientes La figura 28 ilustra una unidad de codificación de indicadores de presencia/ausencia de coeficientes 224 que sirve como un primer ejemplo de configuración de la unidad de codificación de indicadores de presencia/ausencia de coeficientes de acuerdo con esta modalidad.
Como se ilustra en la figura 28, la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224 de acuerdo con este ejemplo de configuración incluye una unidad de clasificación de frecuencias 224a, una unidad de derivación de contextos de posición de baja frecuencia 224b, una unidad de derivación de contextos de referencia adyacentes 224c y una unidad de derivación de contextos de posición de alta frecuencia 224d.
Unidad de clasificación de frecuencias 224a La unidad de clasificación de frecuencias 224a tiene una configuración de clasificar un componente de frecuencia que será codificado en cualquiera de una pluralidad de sub-regiones de acuerdo con la posición del componente de frecuencia en la región de frecuencia, y de asignar un índice de contexto ctxldx derivado por cualquiera de la unidad de derivación de contextos de posición de baja frecuencia 224b, la unidad de derivación de contextos de referencia adyacentes 224c y la unidad de derivación de contextos de posición de alta frecuencia 224d al componente de frecuencia que será codificado.
La unidad de clasificación de frecuencias 224a calcula un índice de contexto ctxldx para determinar un contexto que será usado para codificar el elemento de sintaxis significant_coeff_flag usando la unidad de codificación de códigos aritméticos 230. El índice de contextos ctxldx se calcula para cada tamaño de región de frecuencia y para cada componente de frecuencia que será decodificado .
Otros procesos específicos llevados a cabo por la unidad de clasificación de frecuencias 224a de acuerdo con este ejemplo de configuración son similares a aquellos para la unidad de clasificación de frecuencias 124a incluida en el dispositivo de decodificación de video 1, y no se describen aquí.
Unidad de derivación de contextos de posición de baja frecuencia 224b La unidad de derivación de contextos de posición de baja frecuencia 224b tiene una configuración de derivar un índice de contexto ctxldx para el componente de frecuencia que será codificado, con base en la posición del componente de frecuencia en la región de frecuencia si el componente de frecuencia está incluido en una sub-región del lado de baja frecuencia .
Un proceso específico llevado a cabo por la unidad de derivación de contextos de posición de baja frecuencia 224b de acuerdo con este ejemplo de configuración es similar a aquél para la unidad de derivación de contextos de posición de baja frecuencia 124b incluida en el dispositivo de decodificación de video 1, y no se describe aquí.
Unidad de derivación de contextos de referencia adyacentes 224c La unidad de derivación de contextos de referencia adyacentes 224c tiene una configuración para derivar un índice de contexto ctxldx para el componente de frecuencia que será codificado, con base en el número de coeficientes de transformación no cero codificados para componentes de frecuencia adyacentes del componente de frecuencia.
Un proceso específico llevado a cabo por la unidad de derivación de contextos de referencia adyacentes 224c de acuerdo con este ejemplo de configuración es similar a aquél para la unidad de derivación de contextos de referencia adyacentes 124c incluida en el dispositivo de decodificación de video 1, y no se describe aquí.
Unidad de derivación de contextos de posición de alta frecuencia 224d La unidad de derivación de contextos de posición de alta frecuencia 224d tiene una configuración para derivar un índice de contextos ctxldx para el componente de frecuencia que será codificado, con base en la posición del componente de frecuencia en la región de frecuencia si el componente de frecuencia está incluido en una sub-región del lado de alta frecuencia.
Un proceso específico llevado a cabo por la unidad de derivación de contextos de posición de alta frecuencia 224d de acuerdo con este ejemplo de configuración es similar a aquél para la unidad de derivación de contextos de posición de alta frecuencia 124d incluida en el dispositivo de decodificación de video 1, y no se describe aquí.
Segundo ejemplo de configuración de unidad de codificación de indicadores de presencia/ausencia de coeficientes Una unidad de codificación de indicadores de presencia/ausencia de coeficientes de acuerdo con esta modalidad puede tener una configuración que corresponda a la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-1 incluida en el dispositivo de decodificación de video 1.
Específicamente, la unidad de codificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración puede incluir unidades respectivas similares a la unidad de clasificación de frecuencias 124a, la unidad de derivación de contextos de posición de baja frecuencia 124b, la unidad de derivación de contextos de referencia adyacentes 124c, la unidad de derivación de contextos de secuencia de escaneo precedentes 124e y la unidad de recuento de coeficientes de transformación no cero 124f.
Estas unidades han sido descritas en la descripción de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-1 incluida en el dispositivo de decodificación de video 1, y no se describen aquí .
Tercer ejemplo de configuración de unidad de codificación de indicadores de presencia/ausencia de coeficientes Una unidad de codificación de indicadores de presencia/ausencia de coeficientes de acuerdo con esta modalidad puede tener una configuración que corresponda a la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-2 incluida en el dispositivo de decodificación de video 1.
Específicamente, la unidad de codificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración puede incluir unidades respectivas similares a la unidad de clasificación de frecuencias 124a, la unidad de derivación de contextos de posición de baja frecuencia 124b, y la unidad de derivación de contextos de referencia adyacentes 124g.
Estas unidades han sido descritas en la descripción de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-2 incluida en el dispositivo de decodificación de video 1, y no se describen aq í.
La unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-2 también puede tener una configuración que corresponda a la configuración ilustrada en otro ejemplo de configuración del tercer ejemplo de configuración de la unidad de codificación de indicadores de presencia/ausencia de coeficientes.
Cuarto ejemplo de configuración de unidad de codificación de indicadores de presencia/ausencia de coeficientes Una unidad de codificación de indicadores de presencia/ausencia de coeficientes de acuerdo con esta modalidad puede tener una configuración que corresponda a la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124' incluida en el dispositivo de decodificación de video 1.
Específicamente, la unidad de codificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración puede incluir unidades respectivas similares a la unidad de clasificación de frecuencias 124a' , la unidad de derivación de contextos de posición de baja frecuencia 124b, la unidad de derivación de contextos de referencia adyacentes 124g, y la unidad de derivación de contextos de posición de alta frecuencia 124d.
Estas unidades han sido descritas en la descripción de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124' incluida en el dispositivo de decodificación de video 1, y no se describen aquí .
Quinto ejemplo de configuración de la unidad de codificación de indicadores de presencia/ausencia de coeficientes Una unidad de codificación de indicadores de presencia/ausencia de coeficientes de acuerdo con esta modalidad puede tener una configuración que corresponda a la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-3 incluida en el dispositivo de decodificación de video 1.
Específicamente, la unidad de codificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración puede incluir unidades respectivas similares a la unidad de clasificación de frecuencias 124a, la unidad de derivación de contextos de posición de baja frecuencia 124b, la unidad de derivación de contextos de región de alta frecuencia 124h, la unidad de recuento de referencias adyacentes 124i, la unidad de derivación de contextos de secuencia de escaneo precedentes 124e y la unidad de recuento de coeficientes de transformación no cero 124f .
Estas unidades han sido descritas en la descripción de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-3 e incluida en el dispositivo de decodificación de video 1, y no se describen aquí .
Sexto ejemplo de configuración de unidad de codificación de indicadores de presencia/ausencia de coeficientes Una unidad de codificación de indicadores de presencia/ausencia de coeficientes de acuerdo con esta modalidad puede tener una configuración que corresponda a la unidad de codificación de indicadores de presencia/ausencia de coeficientes 124-4 incluida en el dispositivo de decodificación de video 1.
Específicamente, la unidad de codificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración puede incluir unidades respectivas similares a la unidad de clasificación de frecuencias 124a, la unidad de derivación de contextos de posición de baja frecuencia 124b y la unidad de derivación de contextos de referencia adyacentes 124k.
Estas unidades han sido descritas en la descripción de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-4 incluida en el dispositivo de decodificación de video 1, y no se describen aquí .
En lo sucesivo, se dará una descripción de séptima a novena configuraciones de la unidad de codificación de indicadores de presencia/ausencia de coeficientes que corresponde a la séptima a novena configuraciones de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes incluida en el dispositivo de decodificación de video 1. En la séptima a novena configuraciones de la unidad de codificación de indicadores de presencia/ausencia de coeficientes incluida en el dispositivo de decodificación de video 1. En la séptima a novena configuraciones de la unidad de codificación de indicadores de presencia/ausencia de coeficientes, indicadores de presencia/ausencia de coeficientes no son codificados usando una región de frecuencia completa como un bloque de transformación, sino que los indicadores de presencia/ausencia de coeficientes son codificados al dividir un bloque de transformación en, por ejemplo, 4x4 sub-bloques y usar un sub-bloque como una unidad. La figura 32 ilustra escaneo de sub-bloques llevado a cabo por la unidad de codificación de indicadores de presencia/ausencia de coeficientes de acuerdo con la séptima a novena configuraciones. En un caso en donde la codificación de indicadores de presencia/ausencia de coeficientes se basa en sub-bloques, un indicador (indicador de presencia/ausencia de coeficientes de sub-bloque) que indique si al menos un coeficiente de transformación no cero está presente o no en un sub-bloque se codifica para cada sub-bloque en orden de escaneo inverso de sub-bloques. Además, si el indicador de presencia/ausencia de coeficientes de sub-bloques no es igual a cero, un indicador de presencia/ausencia de coeficientes es codificado para cada coeficiente de transformación en un sub-bloque en orden de escaneo inverso dentro del sub-bloque.
Séptima configuración de la unidad de codificación de indicadores de presencia/ausencia de coeficientes La figura 44 es un diagrama de bloques que ilustra una configuración de una unidad de codificación de indicadores de presencia/ausencia de coeficientes 22 -A que corresponde a la unidad de codificación de indicadores de presencia/ausencia de coeficientes 124 -A. La figura 43 es un diagrama de flujo que ilustra el flujo de la operación de la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224 -A de acuerdo con este ejemplo de configuración .
Como se ilustra en la figura 44, la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-A de acuerdo con este ejemplo de configuración incluye una unidad de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloques X2, una unidad de clasificación de frecuencias 224a, una unidad de derivación de contextos de posición de baja frecuencia 224b y una unidad de derivación de contextos de referencia adyacentes 224c.
Unidad de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloques X2 La unidad de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloques X2 codifica un indicador de presencia/ausencia de coeficientes de sub-bloques (significant_coeffgroup_flag) que indica si al menos un coeficiente de transformación no cero está presente o no en cada uno de sub-bloques que constituyan una región de frecuencia de un bloque de transformación objetivo suministrado desde la unidad de derivación de sintaxis 227 (etapas SY1' en la figura 43) . Además, cada bin obtenido por la codificación del indicador de presencia/ausencia de coeficientes de sub-bloques es suministrado a la unidad de codificación de bits 232.
Luego, la unidad de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloques X2 codifica, para cada sub-bloque en un bloque de transformación, un indicador de presencia/ausencia de coeficientes en el sub-bloque (etapa SY2 ' a etapa SY ' en la figura 43) . Es decir, si el indicador de presencia/ausencia de coeficientes de sub-bloques es igual a 1 (SI en la etapa SY2 ' en la figura 43) en la unidad de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloques X2, un indicador de presencia/ausencia de coeficientes en el sub-bloque es codificado usando la unidad de clasificación de frecuencias 224a, la unidad de derivación de contextos de posición de baja frecuencia 224b y la unidad de derivación de contextos de referencia adyacentes 224c. Si el indicador de presencia/ausencia de coeficientes de sub-bloques es igual a 0 (NO en la etapa SY2 ' en la figura 43) , la codificación de un indicador de presencia/ausencia de coeficientes en el sub-bloque es saltada, y el proceso procede al procesamiento del sub-bloque subsecuente.
En el circuito de los sub-bloques en la figura 43, sbkldx representa el número de orden de escaneo del sub- bloque objetivo en un escaneo hacia delante de sub-bloques, y LastSbkldx representa el número de orden de escaneo del sub-bloque que incluye el último coeficiente en el escaneo hacia adelante de sub-bloques. Si un bloque de transformación de szxsz se deriva en 4x4 sub-bloques, los valores que sbkldx y LastSbkldx adoptan están en el intervalo de 0 a (sz>>2)x(sz>>2) -1.
Unidad de clasificación de frecuencias 224a incluida en unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-A La unidad de clasificación de frecuencias 224a incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-A clasifica el componente de frecuencia que será codificado en cualquiera de una pluralidad de sub-regiones de acuerdo con la posición del componente de frecuencia que será codificado en la región de frecuencia, y asigna un índice de contexto ctxldx derivado por cualquiera de la unidad de derivación de contextos de posición de baja frecuencia 224b y la unidad de derivación de contextos de referencia adyacentes 224c al componente de frecuencia que será codificado (etapa SY3 ' en la figura 43) .
La unidad de clasificación de frecuencias 224a incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-A calcula un índice de contexto ctxldx para determinar el contexto que se usará para codificar el elemento de sintaxis significant_coeff_flag usando la unidad de codificación de códigos aritméticos 230. El índice de contexto ctxldx se calcula para cada tamaño de región de frecuencia y para cada componente de frecuencia que será codificado (etapa SY4 ' en la figura 43) .
Otros procesos específicos llevados a cabo por la unidad de clasificación de frecuencias 224a incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224 -A son similares a aquellos para la unidad de clasificación de frecuencia 124a en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -A, y no se describen aquí.
En lo sucesivo, se dará una descripción de derivación de contexto para las sub-regiones R0 a R2.
Unidad de derivación de contextos de posición de baja frecuencia 224b incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224 -A La unidad de derivación de contextos de posición de baja frecuencia 224b incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224 -A deriva un índice de contexto ctxldx para el componente de frecuencia que será codificado, con base en la posición del componente de frecuencia en la región de frecuencia si el componente de frecuencia está incluido en una sub-región del lado de baja frecuencia.
La unidad de derivación de contextos de posición de baja frecuencia 224b de acuerdo con este ejemplo de configuración deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región RO usando un proceso similar al proceso de la unidad de derivación de contextos de posición de baja frecuencia 124b en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 12 -A, y suministra el resultado de derivación ctxldx a la unidad de clasificación de frecuencias 224a.
Unidad de derivación de contextos de referencia adyacentes 224c incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224 -A La unidad de derivación de contextos de referencia adyacentes 224c incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224 -A deriva un índice de contextos ctxldx para el componente de frecuencia que será codificado, con base en el número de coeficientes de transformación no cero codificados para componentes de frecuencia adyacentes del componente de frecuencia .
La unidad de derivación de contextos de referencia adyacentes 224c de acuerdo con esta modalidad deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en las sub-regiones Rl y R2 usando un proceso similar al proceso de la unidad de derivación de contextos de referencia adyacentes 124c en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -A, y suministra el resultado de derivación ctxldx a la unidad de clasificación de frecuencias 224a.
Octava configuración de unidad de codificación de indicadores de presencia/ausencia de coeficientes La figura 45 es un diagrama de bloques que ilustra una configuración de una unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-B que corresponde a la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-B. El flujo de la operación de la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-B se describirá usando un diagrama de flujo ilustrado en la figura 43.
Como se ilustra en la figura 45, la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-B de acuerdo con este ejemplo de configuración incluye una unidad de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloques X2 , una unidad de clasificación de frecuencias 224a, una unidad de derivación de contextos de posición de baja frecuencia 224b, una unidad de derivación de contextos de referencia adyacentes 224c y una unidad de derivación de contextos de posición de alta frecuencia 224d.
Unidad X2 de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloques incluida en unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-B La unidad de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloques X2 incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-B codifica un indicador de presencia/ausencia de coeficientes de sub-bloque (significant_coeffgroup_flag) que indica si al menos un coeficiente de transformación no cero está presente o no en cada uno de sub-bloques que constituyen una región de frecuencia de un bloque de transformación objetivo suministrado desde la unidad de derivación de sintaxis 227 (etapa SY1' en la figura 43) . Además, cada bin obtenido por la codificación del indicador de presencia/ausencia de coeficientes de sub-bloques se suministra a la unidad de codificación de bits 232.
Luego, la unidad de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloques X2 codifica, para cada sub-bloque en un bloque de transformación, un indicador de presencia/ausencia de coeficientes en el sub-bloque (etapa SY2' a etapa SY4 ' en la figura 43) . Es decir, si el indicador de presencia/ausencia de coeficientes de sub-bloque es igual a 1 (SÍ en la etapa SY2 ' en la figura 43) en la unidad de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloques X2 , un indicador de presencia/ausencia de coeficientes en el sub-bloque es codificado usando la unidad de clasificación de frecuencias 224a, la unidad de derivación de contextos de posición de baja frecuencia 224b, la unidad de derivación de contextos de referencia adyacentes 224c y la unidad de derivación de contextos de posición de alta frecuencia 224d. Si el indicador de presencia/ausencia de coeficientes de sub-bloque es igual a 0 (NO en la etapa SY2 ' en la figura 43) , la codificación de un indicador de presencia/ausencia de coeficientes en el sub-bloque es saltada, y el proceso procede al procesamiento del subsecuente .
Unidad de clasificación de frecuencias 224a incluida en unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-B La unidad de clasificación de frecuencias 224a incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-B clasifica el componente de frecuencia que será codificado en cualquiera de una pluralidad de sub-regiones de acuerdo con la posición del componente de frecuencia que será codificado en la región de frecuencia, y asigna un índice de contexto ctxldx derivado por cualquiera de la unidad de derivación de contextos de posición de baja frecuencia 224b, la unidad de derivación de contextos de referencia adyacentes 224c y la unidad de derivación de contextos de posición de alta frecuencia 224d al componente de frecuencia que será codificado (etapa SY3 ' en la figura 43) .
La unidad de clasificación de frecuencias 224a incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-B calcula un índice de contexto ctxldx para determinar un contexto que se usará para codificar el elemento de sintaxis significant_coeff_flag usando la unidad de codificación de códigos aritméticos 230. El índice de contextos ctxldx es calculado para cada tamaño de región de frecuencia y para cada componente de frecuencia que será codificado (etapa SY4 ' en la figura 43) .
Otros procesos específicos llevados a cabo por la unidad de clasificación de frecuencias 224a incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-B son similares a aquellos para la unidad de clasificación de frecuencias 124a en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-B, y no se describen aquí.
En lo sucesivo, se dará una descripción de derivación de contextos para las sub-regiones R0 a R3.
Unidad de derivación de contextos de posición de baja frecuencia 224b incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-B La unidad de derivación de contextos de posición de baja frecuencia 224b incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-B deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región r8 usando un proceso similar al proceso de la unidad de derivación de contextos de posición de baja frecuencia 124b en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -B, y suministra el resultado de derivación ctxldx a la unidad de clasificación de frecuencias 224a.
Unidad de derivación de contextos de referencia adyacentes 224c incluida en unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-B La unidad de derivación de contextos de referencia adyacentes 224c incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-B deriva un índice de contextos ctxldx para los componentes de frecuencia incluidos en las sub-regiones Rl y R2 usando un proceso similar al proceso de la unidad de derivación de contextos de referencia adyacentes 124c en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -B, y suministra el resultado de derivación ctxldx a la unidad de clasificación de frecuencias 224a.
Unidad de derivación de contextos de posición de alta frecuencia 224d incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224 -B La unidad de derivación de contextos de posición de alta frecuencia 224d incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224 -B deriva un índice de contextos ctxldx para el componente de frecuencia que será codificado, con base en la posición del componente de frecuencia en la región de frecuencia y la posición del sub-bloque que incluye el componente de frecuencia si el componente de frecuencia está incluido en una sub-región del lado de alta frecuencia.
La unidad de derivación de contextos de posición de alta frecuencia 224d incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224 -B deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R3 usando un proceso similar al proceso de la unidad de derivación de contextos de posición de alta frecuencia 124d en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -C, y suministra el resultado de derivación ctxldx a la unidad de clasificación de frecuencia 224a.
De acuerdo con la unidad de clasificación de frecuencias 224a que tiene la configuración descrita arriba, un proceso de ramificación para cambiar el método de derivación de contextos de acuerdo con la posición de un coeficiente de transformación puede ser reemplazado por un proceso de ramificación que use coordenadas de sub-bloques (xCG, yCG) . Un proceso de ramificación en el cual (uiPosX, uiPosY) son referidos, el cual se lleva a cabo dentro de un sub-bloque, puede ser omitido, mejorando la emisión de derivación de contexto, en comparación con el proceso de ramificación en el cual (uiPosX, uiPosY) son referidos.
Además, la unidad de codificación de indicadores de presencia/ausencia de coeficientes y la unidad de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloques que tienen la configuración descrita arriba permiten que el contexto de posición sea tal que un contexto para un indicador de presencia/ausencia de coeficientes en la posición de un coeficiente de transformación dado se determine no obstante del valor de un indicador de presencia/ausencia de coeficientes previamente codificado, logrando la ventaja de proporcionar ejecución paralela de la derivación de contextos para indicadores de presencia/ausencia de coeficientes y la codificación de indicadores de presencia/ausencia de coeficientes.
Novena configuración de unidad de codificación de indicadores de presencia/ausencia de coeficientes La figura 46 es un diagrama de bloques que ilustra una configuración de una unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-C que corresponde a la una unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-C. El flujo de la operación de la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-C se describirá usando un diagrama de flujo ilustrado en la figura 43.
Como se ilustra en la figura 46, la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-C de acuerdo con este ejemplo de configuración incluye una unidad de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloques X2 , una unidad de clasificación de frecuencias 224a, una unidad de derivación de contextos de posición de baja frecuencia 224b, una unidad de derivación de contextos de referencia adyacentes 224c y una unidad de derivación de contextos de posición de alta frecuencia 224d.
Unidad de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloques X2 incluida en unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-C La unidad de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloques X2 incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-C es similar a la unidad de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloques X2 de la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224 -B, y se omite entonces una descripción de la misma.
Unidad de clasificación de frecuencias 224a La unidad de clasificación de frecuencias 224a incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 22 -C clasifica el componente de frecuencia que será codificado en cualquiera de una pluralidad de sub-regiones de acuerdo con la posición del componente de frecuencia que será codificado en la región de frecuencia, y asigna un índice de contextos ctxldx derivado por cualquiera de la unidad de derivación de contextos de posición de baja frecuencia 224b, la unidad de derivación de contextos de referencia adyacentes 224c y la unidad de derivación de contextos de posición de alta frecuencia 224d al componente de frecuencia que será codificado (etapa SY3 ' en la figura 43) .
La unidad de clasificación de frecuencias 224a incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-C calcula un índice de contexto ctxldx para determinar un contexto que se usará para codificar el elemento de sintaxis significant_coeff_flag usando la unidad de codificación de códigos aritméticos 230.
El índice de contexto ctxldx es calculado para cada tamaño de región de frecuencia y para cada componente de frecuencia que será codificado (etapa SY4 ' en figura 43).
Otros procesos específicos llevados a cabo por la unidad de clasificación de frecuencias 224a incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224 -C son similares a aquellos para la unidad de clasificación de frecuencias 124a en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -C y no se describen aquí.
En lo sucesivo, se dará una descripción de derivación de contextos para las sub-regiones RO a R4.
Unidad de derivación de contextos de posición de baja frecuencia 224b incluida en unidad de codificación de indicadores de presencia/ausencia de coeficientes 224 -C La unidad de derivación de contextos de posición de baja frecuencia 224b incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 22 -C deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región RO usando un proceso similar al proceso de la unidad de derivación de contextos de posición de baja frecuencia 124b en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124-C, y suministra el resultado de derivación ctxldx a la unidad de clasificación de frecuencias 224a.
Unidad de derivación de contextos de referencia adyacentes 224c incluida en unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-C La unidad de derivación de contextos de referencia adyacentes 224c incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-C deriva un índice de contextos ctxldx para los componentes de frecuencia incluidos en las sub-regiones Rl, R2 y R3 usando un proceso similar al proceso de la unidad de derivación de contextos de referencia adyacentes 124c en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -C, y suministra el resultado de derivación ctxldx a la unidad de clasificación de frecuencias 224a.
Unidad de derivación de contextos de posición de alta frecuencia 224d incluida en unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-C La unidad de derivación de contextos de posición de alta frecuencia 224d incluida en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-C deriva un índice de contexto ctxldx para los componentes de frecuencia incluidos en la sub-región R4 usando un proceso similar al proceso de la unidad de derivación de contextos de posición de alta frecuencia 124d en la unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124 -C, y suministra el resultado de derivación ctxldx a la unidad de clasificación de frecuencias 224a.
Como se describió arriba, de acuerdo con la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224 -C de acuerdo con este ejemplo de configuración, para una sub-región del lado de frecuencia más alta (por ejemplo, la sub-región R3 en la figura 41) que un valor umbral predeterminado THF, el número de coeficientes de transformación no cero codificados que será referido para la derivación de un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación es más pequeño que el número de coeficientes de transformación es más pequeño que el número de coeficientes de transformación no cero codificados que serán referidos para una sub-región del lado de baja frecuencia (por ejemplo, la sub-región R2 en la figura 41) . Así, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia. Además, para una sub-región del lado de frecuencia más alta (por ejemplo, la sub-región R4 en la figura 41) que el otro valor umbral THG, un índice de contexto se deriva con base en la posición no obstante de una referencia circundante. Así, es posible reducir más la cantidad de procesamiento. Además, una referencia de posición no usa el valor de un indicador de presencia/ausencia de coeficientes previamente codificado para la derivación de un contexto. De esta manera, también es posible mejorar paralelismo .
Como se describió arriba, en la unidad de codificación de indicadores de presencia/ausencia de coeficientes 224-C de acuerdo con este ejemplo de configuración, la unidad de clasificación de frecuencias 224a se configura para clasificar la región de frecuencia objetivo en al menos tres sub-regiones de acuerdo con la posición del indicador de presencia/ausencia de coeficientes de transformación que será procesado y la posición del sub-bloque al cual pertenezca el indicador de presencia/ausencia de coeficientes de transformación.
La unidad de derivación de contextos de referencia adyacentes 224c deriva un índice de contexto al hacer referencia a NI coeficientes de transformación no cero decodificados (en donde NI es un número natural) para una primera sub-región (la sub-región Rl o R2 ) , y hacer referencia a N2 coeficientes de transformación no cero decodificados (en donde N2 es un número natural que satisface N2 < NI) para una segunda sub-región (la sub-región R3) .
Para una tercera sub-región (la sub-región R4), la unidad de derivación de contextos de posición de alta frecuencia 224d deriva un índice de contexto de acuerdo con la posición de un sub-bloque al cual pertenezca un indicador de presencia/ausencia de coeficientes de transformación.
De acuerdo con la configuración descrita arriba, una combinación de una sub-región en donde el número de coeficientes de transformación no cero codificados que será referido para la derivación de un índice de contexto se establezca para ser más pequeño y una sub-región para la cual un índice de contextos se derive con base en la posición de un indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo y la posición del sub-bloque al cual pertenezca el indicador de presencia/ausencia de coeficientes de transformación puede reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente, mientras se logra alta eficiencia de codificación.
Otro ejemplo de configuración 1 de unidad de codificación de coeficientes de transformación 220 Aunque la unidad de codificación de coeficientes de transformación 220 de acuerdo con esta modalidad ha sido descrita enfocándose en un ejemplo de configuración de la unidad de codificación de indicadores de presencia/ausencia de coeficientes, la configuración de la unidad de codificación de coeficientes de transformación 220 de acuerdo con esta modalidad no está limitada a aquella en el ejemplo descrito arriba.
Por ejemplo, la unidad de codificación de coeficientes de transformación 220 puede ser configurada para restringir la codificación de coeficientes de transformación de tal manera que sólo un coeficiente de transformación para un componente de frecuencia que satisfaga la siguiente condición uiPosX+uiPosY < TH2 sea codificado, y un indicador high_coeff_restriction_flag que indique si la restricción descrita arriba se aplica o no puede incluirse en el conjunto de parámetros de secuencia SPS en los datos codificados #1.
Además, la restricción descrita arriba puede aplicarse sólo cuando la TU que será procesada tenga un tamaño específico (por ejemplo, 32x32 o 16x16) .
Un ejemplo específico de restricción y procesamiento asociado con la misma son similares a aquellos descritos en la sección titulada (otro ejemplo de configuración 1 de unidad de decodificación de coeficientes de transformación 120), y no se describen aquí.
Otro ejemplo de configuración 2 de unidad de codificación de coeficientes de transformación 220 Si la TU objetivo tiene un tamaño de 8x8 pixeles, la unidad de codificación de indicadores de presencia/ausencia de coeficientes incluida en la unidad de codificación de coeficientes de transformación 220 puede configurarse para derivar un índice de contexto ctxldx usando la expresión abajo, y para asignar el índice de contexto ctxldx a cada componente de frecuencia. ctxldx = N8+4xtbl [uiPosY] +tbl [uiPosX] Aquí , tbl = {0, 1, 1, 2, 2, 3, 3, 3}.
N8 es el punto de partida de un índice de contexto cuando el tamaño de región de frecuencia es 8x8.
El proceso llevado a cabo por la unidad de codificación de indicadores de presencia/ausencia de coeficientes de acuerdo con este ejemplo de configuración es similar a aquél descrito en la sección titulada (otro ejemplo de configuración 2 de la unidad de decodificación de coeficientes de transformación 120), y no se describe aquí.
Dispositivo de decodificación de video 3 Un dispositivo de decodificación de video 3 como otro ejemplo del dispositivo de decodificación de video de acuerdo con esta modalidad se describirá en adelante aquí con referencia a la figura 61 a figura 73. En lo sucesivo, a las mismas porciones que las porciones descritas arriba se les asignan los mismos números, y una descripción de las mismas es omitida.
El dispositivo de decodificación de video 3 incluye un decodificador de información residual cuantificada Ylll en lugar del decodificador de información residual cuantificada 111 en el dispositivo de decodificación de video 1 de la figura 7.
La figura 61 es un diagrama de bloques que ilustra una configuración del decodificador de información residual cuantificada Ylll del dispositivo de decodificación de video 3. Como se ilustra en la figura 61, el decodificador de información residual cuantificada Ylll incluye una unidad de decodificación de coeficientes de transformación Y120 y una unidad de decodificación de códigos aritméticos 130.
Como se ilustra en la figura 61, la unidad de decodificación de coeficientes de transformación Y120 incluye una unidad de decodificación de última posición de coeficiente 121, una unidad de almacenamiento de tablas de órdenes de escaneo 122, una unidad de control de decodificación de coeficientes 123, una unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124, una unidad de decodificación de valores de coeficientes Y125, una unidad de memoria de coeficientes decodificados 126 y una unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques Y127.
Unidad de almacenamiento de tablas de órdenes de escaneo 122 La unidad de almacenamiento de tablas de órdenes de escaneo 122 almacena una tabla que proporciona la posición del componente de frecuencia que será procesado en una región de frecuencia usando el tamaño de la TU (bloque) que será procesada, un índice de escaneo que indica un tipo de dirección de escaneo, y un índice de identificación de componentes de frecuencia asignado en orden de escaneo como argumentos .
La unidad de almacenamiento de tablas de órdenes de escaneo 122 también almacena una tabla de órdenes de escaneo de sub-bloques para especificar el orden de escaneo de sub-bloques.
Unidad de control de decodificación de coeficientes 123 La unidad de control de decodificación de coeficientes 123 tiene una configuración para controlar el orden del proceso de decodificación en cada unidad incluido en el decodificador de información residual cuantificada Ylll .
Tamaño de bloque menor que o igual a tamaño predeterminado Cuando el tamaño de bloque es menor que o igual a un tamaño predeterminado, la unidad de control de decodificación de coeficientes 123 se refiere a los elementos de sintaxis last_significant_coeff_x y last_significant_coeff_y suministrados desde la unidad de decodificación de última posición de coeficiente 121 para identificar la posición del último coeficiente de transformación no cero en un escaneo hacia adelante, y suministra la posición (xC, yC) de los componentes de frecuencia a la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 y la unidad de memoria de coeficientes decodificados 126 en orden de escaneo que inicia con la posición identificada del último coeficiente de transformación no cero como el origen y que es orden de escaneo inverso al orden de escaneo provisto en la tabla de órdenes de escaneo almacenada en la unidad de almacenamiento de tablas de órdenes de escaneo 122.
La unidad de control de decodificación de coeficientes 123 suministra además sz, que es un parámetro que indica el tamaño de la TU que será procesada, es decir, el tamaño de la región de frecuencia objetivo, a cada unidad incluida en la unidad de decodificación de coeficientes de transformación Y120 (no ilustrada en el dibujo) . Aquí, específicamente, sz es un parámetro que indica el número de pixeles en un lado de la TU que será procesada, es decir, el número de componentes de frecuencia en un lado de la región de frecuencia objetivo.
La unidad de control de decodificación de coeficientes 123 puede ser configurada para suministrar la posición (xC, yC) de los componentes de frecuencia a la unidad de decodificación de indicadores de presencia/ausencia de coeficientes en orden de escaneo hacia adelante que es el orden de escaneo provisto en la tabla de órdenes de escaneo almacenada en la unidad de almacenamiento de tablas de órdenes de escaneo 122.
Tamaño de bloque más grande que tamaño predeterminado Cuando el tamaño de bloque es más grande que el tamaño predeterminado, la unidad de control de decodificación de coeficientes 123 se refiere a los elementos de sintaxis last_significant_coeff_x y last_significant_coeff_y suministrados desde la unidad de decodificación de última posición de coeficiente 121 para identificar la posición del último coeficiente de transformación no cero en un escaneo hacia adelante, y suministra la posición (xCG, yCG) de los sub-bloques a la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques Y127 en orden de escaneo que inicia con la posición del sub-bloque que incluye el último coeficiente de transformación no cero identificado como el origen y que es orden de escaneo inverso al orden de escaneo provisto en la tabla de órdenes de escaneo de sub-bloques almacenada en la unidad de almacenamiento de tablas de órdenes de escaneo 122.
La unidad de control de decodificación de coeficientes 123 suministra además, para un sub-bloque que será procesado, la posición (xC, yC) de los componentes de frecuencia incluidos en el sub-bloque que será procesado a la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 y la unidad de memoria de coeficientes decodificados 126 en orden de escaneo inverso al orden de escaneo provisto en la tabla de órdenes de escaneo almacenada en la unidad de almacenamiento de tablas de órdenes de escaneo 122. Específicamente, el orden de escaneo de los componentes de frecuencia incluidos en el sub-bloque que será procesado puede ser un escaneo en diagonal (escaneo en diagonal vertical) .
Unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques Y127 La unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques Y127 interpreta cada bin suministrado desde la unidad de decodificación de bits 132, y decodifica un elemento de sintaxis significant_coeffgroup_flag [xCG] [yCG] especificado por cada posición de sub-bloque (xCG, yCG) . Más aún, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques Y127 calcula un índice de contexto ctxldx para determinar un contexto que se usará para decodificar un bin del elemento de sintaxis significant_coeffgroup_flag [xCG] [yCG] usando la unidad de decodificación de códigos aritméticos 130. El índice de contexto ctxldx calculado es suministrado a la unidad de grabación/actualización de contextos 131. El elemento de sintaxis significant_coeffgroup_flag [xCG] [yCG] es un elemento de sintaxis que toma 1 si al menos un coeficiente de transformación no cero está incluido en el sub-bloque especificado por la posición de sub-bloque (xCG, yCG) , y toma 0 si no están incluidos coeficientes de transformación no cero. Los valores del elemento de sintaxis decodificado significant_coeffgroup_flag [xCG] [yCG] son almacenados en la unidad de memoria de coeficientes decodificados 126.
Unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 La unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 de acuerdo con esta modalidad decodifica un elemento de sintaxis significant_coeff_flag [xC] [yC] especificado por cada posición de coeficiente (xC, yC) . Los valores del elemento de sintaxis decodificado significant_coeff_flag [xC] [yC] son almacenados en la unidad de memoria de coeficientes decodificados 126. Además, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 calcula un índice de contextos ctxldx para determinar el contexto que se usará para decodificar el bin del elemento de sintaxis significant_coeff_flag [xC] [yC] usando la unidad de decodificación de códigos aritméticos 130. El índice de contextos ctxldx calculado es suministrado a la unidad de grabación/actualización de contextos 131.
Unidad de decodificación de valores de coeficiente Y125 La unidad de decodificación de valores de coeficientes Y125 interpreta cada bin suministrado desde la unidad de decodificación de bits 132, y deriva el valor de un coeficiente de transformación (más específicamente, un coeficiente de transformación no cero) para el componente de frecuencia que será procesado. El índice de contexto ctxldx usado para la decodificación de los diferentes elementos de sintaxis es suministrado a la unidad de grabación/actualización de contextos 131. Los valores derivados del coeficiente de transformación son almacenados en la unidad de memoria de coeficientes decodificados 126.
Unidad de memoria de coeficientes decodificados 126 La unidad de memoria de coeficientes decodificados 126 tiene una configuración para almacenar los valores de coeficientes de transformación decodificados por la unidad de decodificación de valores de coeficientes Y125. La unidad de memoria de coeficientes decodificados 126 también almacena los valores del elemento de sintaxis significant_coeff_flag decodificado por la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124. Los valores de los coeficientes de transformación almacenados en la unidad de memoria de coeficientes decodificados 126 son suministrados al descuantificador/transformador inverso 13.
Configuración de información residual cuantificada QD de la técnica relacionada La figura 62 y figura 63 ilustran una configuración de información residual cuantificada QD de la técnica relacionada. La figura 62 y figura 63 ilustran elementos de sintaxis incluidos en la información residual cuantificada QD de la técnica relacionada (indicada por residual_coding_cabac ( ) en la figura 62).
La figura 62 es un diagrama que ilustra la primera porción de una tabla de sintaxis que indica elementos de sintaxis incluidos en la información residual cuantificada QD. La figura 63 es un diagrama que ilustra la segunda porción de la tabla de sintaxis que indica los elementos de sintaxis incluidos en la información residual cuantificada QD.
Como se ilustra en la figura 62 y figura 63, la información residual cuantificada QD incluye elementos de sintaxis syntax elements last_significant_coeff_x, last_significant_coeff_y, significant_coeffgroup_flag, significant_coeff_flag, coeff_abs_level_greaterl_flag, coeff_abs_level_greater2_flag, coeff_sign_flag, y coeff_abs_level_minus3.
Los elementos de sintaxis incluidos en la información residual cuantificada QD han sido codificados usando codificación aritmética binaria adaptiva a base de contextos (CABAC) . En la columna "Descriptor" en la figura 62 y figura 63, ae (v) significa que el elemento de sintaxis correspondiente es codificado usando CABAC.
En la columna "Descriptor" en la figura 63, derivación significa que el elemento de sintaxis correspondiente es codificado en modo de derivación. De acuerdo con la especificación H.264/MPEG-4.AVC, si se codifica o no un elemento de sintaxis en modo de derivación se indica por una tabla que es na, la tabla indicando la asignación de índices de contexto ctxldx. Sin embargo, aquí, si se usa o no modo de derivación es escrito en la tabla de sintaxis para facilidad de entendimiento. En la técnica relacionada, coeff_sign_flag y coeff_abs_level_minus3 son codificados en modo de derivación. Ya que los dos elementos de sintaxis que son codificados en modo de derivación son consecutivos, puede tenerse alta emisión en el proceso de decodificación para esta porción.
Información residual cuantificada QD que tiene primera configuración de esta modalidad La figura 64 a figura 66 ilustran elementos de sintaxis incluidos en información residual cuantificada QD de una primera configuración de esta modalidad.
La figura 64 es un diagrama que ilustra la primera porción de una tabla de sintaxis que indica elementos de sintaxis incluidos en la información residual cuantificada QD. En esta configuración, la configuración de datos codificados es cambiada de acuerdo con el valor de un indicador cabac_lowcomp_flag que indica si se simplifica o no el proceso CABAC. Si cabac_lowcomp_flag = 0, es decir, si el proceso simplificado no se lleva a cabo, residual_coding_cabac2_normal ( ) ilustrado en la figura 65 es usado. Por otro lado, si cabac_lowcomp_flag = 1, es decir, si el proceso simplificado va a ser llevado a cabo, residual_coding_cabac2_lowcom ( ) ilustrado en la figura 66 es usado. La figura 65 y figura 66 son diagramas que ilustran la segunda porción de la tabla de sintaxis que indica los elementos de sintaxis incluidos en la información residual cuantificada QD.
Como se ilustra en la figura 64 a figura 66, la información residual cuantificada QD incluye elementos de sintaxis last_significant_coeff_x, last_significant_coeff_y, significant_coeffgroup_flag, significant_coeff_flag, coeff_abs_level_greaterl_flag, y coeff_sign_flag . Además, significant_coeff_flag, coeff_abs_level_greaterl_flag, y coeff_sign_flag son codificados en modo de derivación.
La estructura de sintaxis en la primera porción en la figura 64 y la estructura de sintaxis ilustrada en la figura 65 en la cual el proceso simplificado no se lleva a cabo son similares a los elementos de sintaxis de la técnica relacionada ilustrados en la figura 5.
En los elementos de sintaxis de la figura 66 en los cuales el proceso simplificado es llevado a cabo, el elemento de sintaxis significant_coeff_flag que indica el valor de un coeficiente de transformación es cambiado del modo de no derivación a modo de derivación. Además, el número de elementos de sintaxis que indica el valor absoluto de un coeficiente de transformación es reducido de cuatro, es decir, significant_coeff_flag, coeff_abs_level_greaterl_flag, coeff_abs_level_greater2_flag, y coeff_abs_level_minus3 , a dos, es decir, significant_coeff_flag y coeff_abs_level_minusl . Si la expresión de un valor dado es representada usando una pluralidad de elementos de sintaxis, un proceso de decodificación básicamente requiere un número de ciclos igual al número de elementos de sintaxis requeridos para expresión. En consecuencia, reducir el número de elementos de sintaxis requerido para expresión por dos puede proporcionar emisión que sea mejor por un número de veces más que o igual a dos ciclos. Además, ambos significant_coeff_flag y coeff_abs_level_minusl son codificados en modo de derivación, y la emisión puede mejorarse más.
En la configuración descrita arriba, se proporciona un ejemplo de un dispositivo de decodificación de códigos aritméticos para decodificar datos codificados para cada coeficiente de transformación individual obtenido para cada componente de frecuencia al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, los datos codificados siendo obtenidos por codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, el dispositivo de decodificación de códigos aritméticos siendo configurado para decodificar un valor de cada coeficiente de transformación al usar selectivamente un modo regular en el cual MI elementos de sintaxis (en donde MI es un número natural) son decodificados para decodificar un valor de cada coeficiente de transformación o un modo simplificado en el cual M2 elementos de sintaxis (en donde M2 es un número natural que satisface M2 z MI) son decodificados para decodificar un valor de cada coeficiente de transformación. Una configuración simplificada de una configuración en la figura 68 a figura 70 descrita abajo tiene también la configuración descrita arriba.
En la configuración descrita arriba, se proporciona un ejemplo de un dispositivo de decodificación de códigos aritméticos para decodificar datos codificados para coeficientes de transformación respectivos obtenidos para cada componente de frecuencia al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, los datos codificados siendo obtenidos por codificación aritmética de varios elementos de sintaxis que representan los coeficientes de transformación respectivos, y el medio de decodificación de sintaxis descrito arriba decodifica los MI elementos de sintaxis usando un contexto en el modo regular, y decodifica los M2 elementos de sintaxis usando un contexto en el modo simplificado. Una configuración simplificada en una configuración en la figura 68 a figura 70 descrita abajo tiene también la configuración descrita arriba .
Como se da en la estructura de datos ilustrada, deseablemente, significant_coeffgroup_flag es codificado en modo de no derivación, es decir, usando un contexto. Si el tamaño de sub-bloque es 4x4, sólo un significant_coeffgroup_flag está presente para 16 posiciones de frecuencia. Así, incluso si se usan contextos, la emisión no será reducida.
Además, el modo en el cual el proceso simplificado descrito arriba se lleva a cabo también es conocido como un modo simplificado, y el modo en el cual el proceso simplificado descrito arriba no se lleva a cabo también es llamado un modo regular.
Juicio de ejecución de proceso de simplificación de coeficientes de esta modalidad La unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 y la unidad de decodificación de valores de coeficientes Y125 que decodifican estos datos codificados pueden cambiar entre un proceso regular y un proceso simplificado de acuerdo con el valor de un indicador de simplificación cabac_lowcomp_flag . cabac_lowcomp_flag se deriva de acuerdo con el valor de un indicador de simplificación de nivel más alto xps_cabac_lowcomp_flag incluido en el SPS, PPS, encabezado de segmento y similares y la última posición. En lo sucesivo, se describirá un método de derivación para el indicador de simplificación cabac_lowcomp_flag .
La figura 72 es un diagrama de flujo que ilustra un proceso de derivación por el indicador de simplificación cabac_lowcomp_flag . Para decodificar un coeficiente de transformación en cada región de frecuencia, la unidad de control de decodificación de coeficientes 123 lleva a cabo el proceso en la figura 72, y deriva cabac_lowcomp_flag .
Primero, la unidad de control de decodificación de coeficientes 123 inicializa el indicador de simplificación cabac_lowcomp_flag a 0 cada vez que la decodificación de cada región de frecuencia se lleve a cabo (SX101) .
Luego, la unidad de control de decodificación de coeficientes 123 determina si el indicador de simplificación de nivel más alto xps_cabac_lowcomp_flag es igual a l, lo cual indica que el indicador de simplificación de nivel más alto xps_cabac_lowcomp_flag es habilitado, o 0, que indica que el indicador de simplificación de nivel más alto xps_cabac_lowcomp_lag es deshabilitado. Si el indicador de simplificación de nivel más alto xps_cabac_lowcomp_flag es habilitado, el proceso procede a SX103, y, de otro modo, el proceso de determinación concluye (SX102) .
La unidad de control de decodificación de coeficientes 123 determina además si la última posición identificada por last_significant_coeff_pos_x y last significant_coeff_pos_y es o no más grande que un valor predeterminado (SX103) . Si la última posición es más grande que el valor predeterminado, el indicador de simplificación cabac_lowcomp_flag se pone en 1, que indica que el indicador de simplificación cabac_lowcomp_flag es habilitado (SX104) .
A través del proceso descrito arriba, el proceso simplificado, el cual proporciona emisión de alta velocidad, se puede usar en un caso en donde un gran número de coeficientes de transformación sean generados, tal como cuando la última posición sea más grande que la posición predeterminada, y el proceso regular, el cual proporciona alta eficiencia de codificación, se puede llevar a cabo de otro modo. Ya que el proceso simplificado puede llevarse a cabo sólo cuando sea necesario, es posible lograr alta eficiencia de codificación mientras se mantiene emisión.
Las figuras 73A y 73B son un diagrama que ilustra un ejemplo específico de determinación ilustrado en S103 de la figura 72 o si la última posición es más grande o no que el valor predeterminado, en el cual se ilustran dos procesos, es decir, un proceso ilustrado en la figura 73A y un proceso ilustrado en la figura 73B. En el proceso en la figura 73A, la unidad de control de decodificación de coeficientes 123 compara la suma de last_significant_coeff_pos_x and last_significant_coeff_pos_y con un múltiplo predeterminado (aquí, un valor multiplicado por "a" y luego desplazado a la derecha por 2 bits) del valor máximo del ancho y altura de una región de frecuencia (SX103A) . Si, como un resultado de la determinación, la suma de la última posición es más grande, la unidad de control de decodificación de coeficientes 123 puede habilitar el indicador de simplificación, y de otra manera puede deshabilitar el indicador de simplificación. El valor "a" descrito arriba puede ser igual a, por ejemplo, 3, 4, 5 o similares. Por ejemplo, si "a" es igual a 4, la operación simplificada se lleva a cabo cuando la última posición excede una posición que es aproximadamente la mitad en orden de escaneo.
En el proceso de la figura 73B, se hace una determinación diferente dependiendo de si el ancho "ancho" y altura "altura" de una región de frecuencia son iguales o no. Ejemplos del caso en donde el ancho "ancho" y altura "altura" es de una región de frecuencia no son iguales incluyen una transformación de 16x4, una transformación de 4x16, una transformación de 32x8 y una transformación de 8x32. Como se ilustra en el diagrama de flujo de la figura 73B, la unidad de control de decodificación de coeficientes 123 determina si el ancho "ancho" y altura "altura" de una región de frecuencia son o no iguales (SX103B) . Si ambos son iguales, la unidad de control de decodificación de coeficientes 123 establece "a", que define el valor umbral para comparación, en "al" (SX103C) . Si ambos no son iguales, la unidad de control de decodificación de coeficientes 123 establece "a" a "a2" (aquí, a2 < al) (SX103D) . Luego, la unidad de control de decodificación de coeficientes 123 compara la suma de last_significant_coeff_pos_x and last_significant_coeff_pos_y con un múltiplo predeterminado (aquí, un valor multiplicado por "a" y luego desplazado a la derecha por 2 bits) del valor máximo del ancho y altura de la región de frecuencia (SX103A) . De esta manera, cuando el ancho "ancho" y altura "altura" de una región de frecuencia no son iguales, un valor que sea relativamente más pequeño que cuando el ancho "ancho" y altura "altura" de la región de frecuencia son iguales se usa como el valor umbral usado para determinación, permitiendo determinación con base en la posición en la que se encuentra la última posición en orden de escaneo total. Es adecuado seleccionar los valores "al" y "a2" para de esta manera satisfacer, por ejemplo, a2 = al/2, y al = 4 , a2 = 2 , y así sucesivamente son adecuados.
Proceso de unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 y unidad de decodificación de valores de coeficientes Y125 de acuerdo con esta modalidad cuando no se lleva a cabo proceso simplificado El proceso de la unidad de decodificación de valores de coeficientes Y125 configurada para decodificar estos datos codificados cuando el proceso simplificado no se lleva a cabo se describirá en adelante aquí con referencia a la figura 65. Primero, la unidad de decodificación de valores de coeficientes Y125 decodifica un coeficiente de transformación usando un proceso de doble circuito, es decir, un circuito exterior de sub-bloque por sub-bloque (LP_Y70) y circuitos interiores (LP_Y71 a LP_Y75) para decodificar coeficientes de transformación en un sub-bloque.
La unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 procesa el primer circuito interior (LP_Y71) , y decodifica significant_coeff_flag. Específicamente, si el indicador de presencia/ausencia de coeficientes de sub-bloque significant_coeffgroup_flag es usado, es decir, si el valor máximo del ancho y altura de una región de frecuencia es mayor que o igual a 16, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 se refiere a significant_coeffgroup_flag, y decodifica significant_coeff_flag, usando un contexto, para una posición no final con significant_coeffgroup_flag no igual a 0 (SYN_Y71) . La determinación de la última posición o no se basa en la siguiente expresión. (xC ! =last_significant_coeff_x) | | (yC ! =last_significant_coeff_y) ) En contraste, si el indicador de presencia/ausencia de coeficientes de sub-bloque significant_coeffgroup_flag no es usado, significant_coef _flag es decodificado usando un contexto para un coeficiente de transformación en una posición no final (SY _Y72) .
La unidad de decodificación de valores de coeficiente Y125 procesa el segundo a quinto circuitos interiores .
En el segundo circuito interior (LP_Y72) , la unidad de decodificación de valores de coeficientes Y125 decodifica coeff_abs_level_greaterl_flag, usando un contexto, para una posición de frecuencia con significant_coeff_flag igual a un valor que no es 0 (SYN_Y73) .
En el tercer circuito interior (LP_Y73) , la unidad de decodificación de valores de coeficientes Y125 decodifica coeff_abs_level_greater2_flag, usando un contexto, para una posición de frecuencia con coeff_abs_level_greaterl_flag igual a un valor que no es 0 (SY _Y74) .
En el cuarto circuito interior (LP_Y74) , la unidad de decodificación de valores de coeficientes Y125 decodifica coeff_sign_flag, en modo de derivación, para una posición de frecuencia con significant_coeff_flag igual a un valor que no es 0 SYN_Y75) .
En el quinto circuito interior (LP_Y75) , la unidad de decodificación de valores de coeficientes Y125 decodifica coeff_abs_level_minus3 , en modo de derivación, para una posición de frecuencia con coeff_abs_level_greater2_flag igual a un valor que no es 0 (SY _Y76) . La unidad de decodificación de valores de coeficientes Y125 decodifica además el valor de un coeficiente de transformación para una posición de frecuencia con significant_coeff_flag igual a un valor que no es 0 usando la siguiente expresión. (coeff_abs_level_minus3 [ n ] + 3) * (1 ? 2 * coeff_sign_flag [ n ]) A través del proceso descrito arriba, el valor de un coeficiente de transformación es decodificado .
Unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 y unidad de decodificación de valores de coeficientes Y125 en primera configuración de simplificación de esta modalidad A continuación se describirá con referencia a la figura 66 el proceso de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 y la unidad de decodificación de valores de coeficientes Y125 configuradas para decodificar estos datos codificados en caso de que se lleve a cabo simplificación.
La unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 procesa el primer circuito interior (LP_Y81) , y decodifica significant_coeff_flag . Específicamente, si el indicador de presencia/ausencia de coeficientes de sub-bloques significant_coeffgroup_flag es usado, es decir, si el valor máximo del ancho y altura de una región de frecuencia es mayor que o igual a 16, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 se refiere a significant_coeffgroup_flag, y decodifica significant_coeff_flag, en modo de derivación, para una posición no final con significant_coeffgroup_flag no igual a 0 (SY _Y81) . Por otro lado, si el indicador de presencia/ausencia de coeficientes de sub-bloque significant_coeffgroup_flag no es usado, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 decodifica significant_coeff_flag, en modo de derivación, para una posición no final (SY _Y82) .
La unidad de decodificación de valores de coeficientes Y125 procesa el segundo a tercer circuitos interiores .
En el segundo circuito interior (LP_Y82), la unidad de decodificación de valores de coeficientes Y125 decodifica coeff_sign_flag, en modo de derivación, para una posición de frecuencia con significant_coeff_flag igual a un valor que no es 0 (SY _Y83) .
En el tercer circuito interior (LP_Y83) , la unidad de decodificación de valores de coeficientes Y125 decodifica coeff_abs_leve_minusl , en modo de derivación, para una posición de frecuencia con significant_coeff_flag igual a un valor que no es 0 (SYN_Y84) . La unidad de decodificación de valores de coeficientes Y125 decodifica además el valor de un coeficiente de transformación para una posición de frecuencia con significant_coeff_flag igual a un valor que no es 0 usando la siguiente expresión. (coeff_abs_level_minusl [ n ] + 1) * (1 ? 2 * coeff_sign_flag [ n ] ) Aquí, coeff_abs_level_minusl puede ser binarizado usando un código Golomb, código Huffman o similares.
En la comparación entre un proceso no simplificado y un proceso simplificado, el número de circuitos interiores se reduce de cinco a tres. En consecuencia, el número de procesos necesarios para un circuito se reduce en comparación con el caso en donde se llevan a cabo varios circuitos interiores, dando como resultado una mejora en emisión.
Como se describió arriba, de acuerdo con datos codificados en la primera configuración y el decodificador de información residual cuantificada configurado para decodificar los datos codificados, en el caso de simplificación, sintaxis que indica el valor absoluto de un coeficiente de transformación es expresada usando un elemento de sintaxis coeff_abs_level_minusl , y el indicador significant_coeff_flag que indica la presencia o ausencia de un coeficiente de transformación no cero, un indicador de código coeff_sign_flag, y un valor con el valor absoluto menos 1 coeff_abs_level_minusl son todos codificados/decodificados en modo de derivación, haciendo posible procesamiento de alta emisión. Además, modo de no derivación se usa para significant_coeffgroup_flag y modo de derivación se usa significant_coeff_flag entre los indicadores que indican la presencia o ausencia de un coeficiente de transformación no cero, haciendo posible procesamiento de alta emisión mientras se mantiene alta eficiencia de codif cación.
Además, en NPL 2 en el cual se usa la binarización para codificación CAVLC, dos modos, en particular, modo de corrida y modo de nivel, son usados, mientras que en una configuración de esta modalidad, un proceso simplificado puede llevarse a cabo con binarización individual, dando como resultado la ventaja de una configuración de procesamiento más simple. Se proporcionan descubrimientos particularmente en una región de alta velocidad de bits que incluye un problema de emisión, la relación de coeficientes de transformación cero es relativamente baja y la eficiencia de codificación similar a aquella en el modo de corrida puede implementarse en modo de nivel. En esta configuración, modo de corrida en el cual un número de coeficientes cero consecutivos son codificados no es usado, sino sólo un modo para codificar directamente un valor, que corresponde a modo de nivel, es usado, dando como resultado una reducción en la complejidad de la configuración del dispositivo mientras se mantiene eficiencia de codificación. Esto también puede ser aplicado a las siguientes configuraciones que no son la primera configuración.
Información residual cuantificada QD en segunda configuración de simplificación de esta modalidad En una segunda configuración de simplificación de esta modalidad, una estructura de sintaxis en la figura 67 es usada en lugar de aquella de la figura 66. La figura 67 ilustra elementos de sintaxis incluidos en información residual cuantificada QD en la segunda configuración de simplificación de esta modalidad.
En la figura 66, significant_coeff_flag es codificado en modo de derivación, mientras que, en esta configuración, se usa un contexto. Ya que la probabilidad de que el valor de un coeficiente de transformación sea igual a 0 es muy alta dependiendo de la posición del coeficiente de transformación, la configuración en la figura 66 en la cual todos los valores de significant_coeff_flag que indican un coeficiente no cero o no son codificados en modo de derivación puede incrementar la reducción en eficiencia de codificación. En esta configuración, se usa un contexto sólo para significant_coeff_flag, que es el más importante, dando como resultado la ventaja de eficiencia de codificación más alta que aquella en la configuración de la figura 66.
Proceso de unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 y unidad de decodificación de valores de coeficientes Y125 en segunda configuración de simplificación de esta modalidad En la segunda configuración de simplificación de esta modalidad, el proceso para el primer circuito interior procesado por la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 es diferente. El primer proceso de circuito interior ilustrado en la figura 67 se describirá en adelante aquí.
La unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124, procesa el primer circuito interior (LP_Y91) , y decodifica significant_coeff_flag . Específicamente, si el indicador de presencia/ausencia de coeficientes de sub-bloque significant_coeffgroup_flag es usado, es decir, si el valor máximo del ancho y altura de una región de frecuencia es mayor que o igual a 16, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 se refiere a significant_coeffgroup_flag, y decodifica significant_coeff_flag, usando un contexto, para una posición no final con significant_coeffgroup_flag no igual a 0 (SYN_Y91) . Por otro lado, si el indicador de presencia/ausencia de coeficientes de sub-bloque significant_coeffgroup_flag no es usado, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 decodifica significant_coeff_flag, usando un contexto, para una posición no final (SYN_Y92) .
Como se describió arriba, de acuerdo con datos codificados en la segunda configuración y el decodificador de información residual cuantificada configurada para decodificar los datos codificados, sintaxis que indique el valor absoluto de un coeficiente de transformación se expresa usando un elemento de sintaxis coeff_abs_level_minusl , y el indicador significant_coeff_flag que indica la presencia o ausencia de un coeficiente de transformación no cero es codificado/decodificado usando un contexto mientras el indicador de código coeff_sign_flag y el valor con el valor absoluto menos 1 coeff_abs_level_minusl son codificados/decodificados en modo de derivación, haciendo posible procesamiento de alta emisión. Además, se usa modo de no derivación para significant_coeffgroup_flag y significant_coeff_flag, que son indicadores que indican la presencia o ausencia de un coeficiente de transformación no cero, haciendo posible procesamiento de alta emisión mientras se mantiene alta eficiencia de codificación.
Información residual cuantificada QD en tercera configuración de simplificación de esta modalidad En una tercera configuración de simplificación de esta modalidad, una estructura de sintaxis en la figura 68 se usa en lugar de aquella en la figura 67. La figura 68 ilustra elementos de sintaxis incluidos en información residual cuantificada QD en la tercera configuración de simplificación de esta modalidad.
Proceso de unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 y unidad de decodificación de valores de coeficientes Y125 en tercera configuración de simplificación de esta modalidad La operación básica de la unidad de decodificación de valores de coeficientes Y125 es la misma que aquella en la segunda configuración, excepto por lo siguiente: en la segunda configuración, el indicador de código coeff_sign_flag y el valor con el valor absoluto menos 1 coeff_abs_level_minusl son procesados en diferentes circuitos interiores y en el procesamiento dentro de un sub-bloque. En la tercera configuración, sin embargo, como se describió abajo, dos elementos de sintaxis son procesados en un solo circuito interior.
En el primer circuito interior (LP_Y101) , la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 decodifica significant_coeff_flag. Específicamente, si el indicador de presencia/ausencia de coeficientes de sub-bloques significant_coeffgroup_flag es usado, es decir, si el valor máximo del ancho y altura de una región de frecuencia es mayor que o igual a 16, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 se refiere a significant_coef group_flag, y decodifica significant_coeff_flag para una posición no final con significant_coeffgroup_flag no igual a 0 (SY_Y101) . Por otro lado, si el indicador de presencia/ausencia de coeficientes de sub-bloque significant_coeffgroup_flag no es usado, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 decodifica significant_coeff_flag para una posición no final (SYN_Y102) .
En el segundo circuito interior (LP_Y102) , la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 decodifica coeff_sign_flag, en modo de derivación, para una posición de frecuencia con significant_coeff_flag igual a un valor que no es 0 (SY _Y103) . La unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 decodifica además coeff_abs_level_minisl en modo de derivación (SYN_Y104) . Más aún, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 decodifica el valor de un coeficiente de transformación para una posición de frecuencia con significant_coeff_flag igual a un valor que no es 0. (coeff_abs_level_minusl [ n ] + 1) * (1 ? 2 * coeff_sign_flag [ n ]) Aquí, coeff_abs_level_minusl puede ser binarizado usando código Golomb, código Huffman o similares.
Como se describió arriba, de acuerdo con el proceso para datos codificados que tienen la tercera configuración, en comparación con el primer proceso y el segundo proceso, el número de circuitos interiores se reduce de tres a dos. En consecuencia, el número de procesos necesarios para un circuito y el número de procesos para determinar si significant_coeff_flag es igual o no a un valor que no sea 0 se reduce en comparación con el caso en donde se llevan a cabo varios circuitos interiores, dando como resultado una mejora en emisión. Es decir, el indicador de código coeff_sign_flag, que es un elemento de sintaxis para el cual se usa modo de derivación, y el valor con el valor absoluto menos 1 coeff_abs_level_minusl pueden ser intercalados y codificados para de esta manera ser procesados en un solo circuito, dando como resultado una mejora en emisión. Es decir, los dos elementos de sintaxis coeff_sign_flag and coeff_abs_level_minusl , que son procesados en modo de derivación, pueden ser puestos sucesivamente en un solo circuito, dando como resultado una mejora en emisión.
Proceso de unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 para simplificación adaptiva A continuación se dará una descripción del proceso de la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 para simplificación más adaptiva. En el método de derivación para el indicador de simplificación cabac_lowcomp_flag descrito con referencia a la figura 72 y figura 73, si se implementa o no la simplificación se establece al hacer referencia a la última posición en el punto inicial en tiempo cuando un coeficiente de transformación en cada región de frecuencia es decodificado . Sin embargo, en el siguiente proceso, se lleva a cabo un proceso de decodificación usando un contexto en el punto en tiempo inicial cuando un coeficiente de transformación en cada región de frecuencia es decodificado, y el modo de decodificación de componentes de frecuencia que constituyen la región de frecuencia es cambiado a la mitad de decodificación usando un contexto a decodificación en modo de derivación de acuerdo con un resultado de decodificación.
Más específicamente, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 deriva un indicador significant_coeff_flag_mode que indica si se usa o no un contexto en significant_coeff_flag . Si el valor del indicador significant_coeff_flag_mode es igual a 0, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 decodifica significant_coeff_flag usando un contexto. Si significant_coeff_flag_mode es igual a l, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 decodifica significant_coeff_flag usando un proceso de derivación sin usar un contexto.
La operación de decodificación que corresponde a la configuración en la figura 67 y la configuración en la figura 68 se describirá en adelante aquí.
En la configuración en la figura 67, se lleva a cabo la siguiente operación. La unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 procesa el primer circuito interior (LP_Y91) , y decodifica significant_coeff_flag. Específicamente, si el indicador de presencia/ausencia de coeficientes de sub-bloques significant_coeffgroup_flag es usado, es decir, si el valor máximo del ancho y altura de una región de frecuencia es mayor que o igual a 16, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 se refiere a significant_coeffgroup_flag, y decodifica significant__coeff_flag para una posición no final con significant_coeffgroup_flag no igual a 0 (SYN_Y91) . Por otro lado, si el indicador de presencia/ausencia de coeficientes de sub-bloque significant_coeffgroup_flag no es usado, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 decodifica significant_coeff_flag para una posición no final (SYN_Y92) . En la configuración de la figura 68, LP_Y91, SYN_Y91 y SYN_Y92 en la anterior descripción son reemplazados por LP_Y101, SYN_Y101, and SY _Y102, respectivamente. En el proceso simplificado adaptivo, en SYN_Y91, SYN_Y92, SY _Y101, and SYN_Y102, significant_coeff_flag es decodificado usando un contexto cuando significant_coeff_flag_mode es igual a 0, y significant_coeff_flag es decodificado en modo de derivación cuando significant_coeff_flag_mode es igual a 1.
A continuación se dará una descripción de dos métodos de derivación para el indicador significant_coeff_flag_mode que indica si se simplifica o no la decodificación de un coeficiente no cero.
Un ejemplo de un método de derivación para el indicador significant_coeff_f1ag_mode que indica si se simplifica o no la decodificación de un coeficiente no cero se describirá en adelante aquí. En el procesamiento del sub-bloque inicial, significant_coeff_flag_mode se establece en 0. En el procesamiento de un sub-bloque que no es el sub-bloque inicial, se usa el valor establecido en el sub-bloque precedente. En el momento en que significant_coeff_flag para un sub-bloque es decodificado, el número de coeficientes no cero que se presentan en un sub-bloque es contado. Si el recuento descrito arriba (el recuento de significant_coeff_flag) es mayor que o igual a una constante N predeterminada en un sub-bloque dado, significant_coeff_flag_mode se establece en 1, y el sub-bloque subsecuente es procesado. De otra manera, el valor de significant_coeff_flag_mode para el sub-bloque precedente es usado tal cual como significant_coeff_flag_mode para el sub-bloque subsecuente.
Información residual cuantificada QD en cuarta y quinta configuraciones de simplificación de esta modalidad En la cuarta y quinta configuraciones de simplificación de esta modalidad, se usan estructuras de sintaxis en la figura 69 y figura 70, respectivamente. La figura 69 y la figura 70 ilustran elementos de sintaxis incluidos en la información residual cuantificada QD en la cuarta y quinta configuraciones de simplificación de esta modalidad.
En la primera a tercera configuraciones de simplificación, se usan dos elementos de sintaxis, es decir, el elemento de sintaxis significant_coeff_flag que indica el valor de datos codificados y el valor con el valor absoluto menos 1 coeff_abs_level_minusl . Sin embargo, la cuarta y quinta configuraciones tienen una característica en que un elemento de sintaxis, es decir, el valor absoluto coeff_abs_level , se puede usar para posiciones que no son la última posición. En la cuarta y quinta configuraciones de simplificación, no se lleva a cabo el procesamiento de significant_coeff_flag. En la cuarta y quinta configuraciones, por lo tanto, la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 se usa sólo en el proceso regular, mientras que la unidad de decodificación de indicadores de presencia/ausencia de coeficientes Y124 no se usa en el proceso simplificado.
Proceso de unidad de decodificación de valores de coeficientes Y125 en cuarta configuración de simplificación de esta modalidad La unidad de decodificación de valores de coeficientes Y125 procesa el primer circuito interior y el segundo circuito interior.
En el primer circuito interior (LP_Y111) , la unidad de decodificación de valores de coeficientes Y125 decodifica coeff_abs_level_minusl y coeff_abs_level . Específicamente, si el coeficiente de transformación objetivo se ubica en la última posición, la unidad de decodificación de valores de coeficientes Y125 decodifica coeff_abs_level_minusl usando un proceso de derivación, y deriva coeff_abs_level usando coeff_abs_level = coeff_abs_level_minusl + 1 (SYN_Y111) . De otro modo, la unidad de decodificación de valores de coeficientes Y125 lleva a cabo el siguiente proceso. Si el indicador de presencia/ausencia de coeficientes de sub-bloque significant_coeffgroup_flag es usado, es decir, si el valor máximo del ancho y altura de una región de frecuencia es mayor que o igual a 16, la unidad de decodificación de valores de coeficientes Y125 se refiere a significant_coeffgroup_flag, y decodifica coeff_abs_level usando un proceso de derivación cuando significant_coeffgroup_flag no es igual a 0 (SYN_Y112) : Por otro lado, si el indicador de presencia/ausencia de coeficientes de sub-bloque significant_coeffgroup_flag no es usado, la unidad de decodificación de valores de coeficientes Y125 decodifica coeff_abs_level usando un proceso de derivación (SYN_Y113) .
En el segundo circuito interior (LP_Y112) , la unidad de decodificación de valores de coeficientes Y125 decodifica coeff_sign_flag, en modo de derivación, para una posición de frecuencia con coef_abs_level igual a un valor que no es 0 (SY _Y114) . La unidad de decodificación de valores de coeficientes Y125 decodifica además el valor de un coeficiente de transformación para una posición de frecuencia con coeff_abs_level igual a un valor que no es 0 usando la siguiente expresión. (coeff_abs_level [ n ]) * (1 ? 2 * coeff_sign_flag [ n ]) Como se describió arriba, de acuerdo con datos codificados en la cuarta configuración y el decodificador de información residual cuantificada configurado para decodificar los datos codificados, coeff_abs_level , que es el valor absoluto de un coeficiente de transformación, y coeff_abs_level_minusl , que es el valor absoluto del coeficiente de transformación menos 1, son codificados en modo de derivación, dando como resultado una mejora en la emisión del proceso de decodificación. Modo de no derivación (modo regular) se usa para significant_coeffgroup_flag y modo de derivación se usa para significant_coeff_flag entre los indicadores que indican la presencia o ausencia de un coeficiente de transformación no cero, haciendo posible procesamiento de alta emisión mientras se mantiene alta eficiencia de codificación.
Proceso de unidad de decodificación de valores de coeficientes Y125 en quinta configuración de simplificación de esta modalidad La unidad de decodificación de valores de coeficientes Y125 procesa el primer circuito interior y el segundo circuito interior.
En el primer circuito interior (LP_Y121) , la unidad de decodificación de valores de coeficientes Y125 decodifica coeff_abs_level . En la cuarta configuración de simplificación, coeff_abs_level y coeff_abs_level_minusl son decodificados usando un proceso de derivación. En la quinta configuración de simplificación, sin embargo, el primer bit de coeff_abs_level es decodificado usando un contexto, y bits después del primer bit de coeff_abs_level son decodificados en modo de derivación. Nótese que todos los bits de coeff_abs_level_minusl pueden ser decodificados en modo de derivación, o sólo el primer bit puede ser decodificado usando un contexto.
La figura 71 es un diagrama que ilustra una configuración binaria de un valor para el cual sólo el primer bit de coeff_abs_level usa modo de derivación. Como se ilustra en la figura 71, la unidad de decodificación de valores de coeficientes Y125 usa un contexto para el primer bit cuando el valor de un coeficiente de transformación es binarizado. Más específicamente, ya que el primer bit de coeff_abs_level corresponde a significant_coeff_flag, cualquiera de los diferentes métodos descritos previamente puede usarse como un método de derivación de índices de contexto .
El primer bit de coeff_abs_level no necesariamente puede ser decodificado siempre usando un contexto. Más específicamente, la unidad de decodificación de valores de coeficientes Y125 puede derivar significant_coeff_flag_mode usando el proceso descrito arriba, y puede cambiar el modo de decodificación de tal manera que la decodificación usando un contexto se lleve a cabo cuando el valor de significant_coeff_flag_mode sea igual a 0 y la decodificación en modo de derivación se lleve a cabo cuando el valor de significant_coeff_flag_mode sea igual a 1.
Como se describió arriba, de acuerdo con datos codificados en la quinta configuración y el decodificador de información cuantificada configurado para decodificar los datos codificados, se usa un contexto para el primer bit de coeff_abs_level , que es el valor absoluto de un coeficiente de transformación, dando como resultado el logro tanto de alta emisión como de alta eficiencia de codificación.
Dispositivo de codificación de video 4 Un dispositivo de codificación de video 4 como otro dispositivo de codificación de video de acuerdo con esta modalidad se describirá en adelante con referencia a la figura 74. En lo sucesivo, a las mismas porciones que las porciones descritas arriba se le asignan los mismos números, y se omite una descripción de las mismas.
El dispositivo de codificación de video 4 incluye un codificador de información residual cuantificada Y271 en lugar del codificador de información residual cuantificada 271 en el dispositivo de codificación de video 2.
Codificador de información residual cuantificada Y271 La figura 74 es un diagrama de bloques que ilustra una configuración del codificador de información residual cuantificada Y271. Como se ilustra en la figura 74, el codificador de información residual cuantificada Y271 incluye una unidad de codificación de coeficientes de transformación Y220 y una unidad de codificación de códigos aritméticos 230.
Unidad de codificación de coeficientes de transformación Y220 Como se ilustra en figura 74, la unidad de codificación de coeficientes de transformación Y220 incluye una unidad de codificación de última posición 221, una unidad de almacenamiento de tablas de órdenes de escaneo 222, una unidad de control de codificación de coeficientes 223, una unidad de codificación de indicadores de presencia/ausencia de coeficientes Y224, una unidad de codificación de valores de coeficiente Y225, una unidad de memoria de coeficientes codificados 226, una unidad de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloque Y227 y una unidad de derivación de sintaxis Y228.
Unidad de derivación de sintaxis Y228 La unidad de derivación de sintaxis Y228 se refiere a los valores de coeficientes de transformación Coeff(xC, yC) , y deriva los valores de elementos de sintaxis last_significant_coeff_x, last_significant_coeff_y, significant_coeff_flag, coeff_abs_level_greaterl_flag, coeff_abs_level_greater2_flag, coeff_sign_flag, and coeff_abs_level_minus3 para especificar estos coeficientes de transíoramción en una región de frecuencia objetivo. Los elementos de sintaxis derivados son suministrados a la unidad de memoria de coeficientes codificados 226. De los elementos de sintaxis derivados, last_significant_coeff_x y last_significant_coeff_y también son simplificados a la unidad de control de codificación de coeficientes 223 y la unidad de codificación de última posición 221. De los elementos de sintaxis derivados, además, significant_coeff_flag también se suministra a la unidad de codificación de indicadores de presencia/ausencia de coeficientes Y224. El contenido de los elementos de sintaxis respectivos ha sido descrito arriba, y no se describe aquí.
Unidad de almacenamiento de tablas de orden de escaneo 222 La unidad de almacenamiento de tablas de órdenes de escaneo 222 almacena una tabla que proporciona la posición del componente de frecuencia que será procesado en una región de frecuencia usando el tamaño de la TU (bloque) que será procesado, un índice de escaneo que indica un tipo de dirección de escaneo, y un índice de identificación de componentes de frecuencia asignado en orden de escaneo como argumentos. Ejemplos de la tabla de órdenes de escaneo incluye ScanOrder ilustrado en la figura 5.
La unidad de almacenamiento de tablas de órdenes de escaneo 222 también almacena una tabla de órdenes de escaneo de sub-bloques para especificar el orden de escaneo de sub- bloques. La tabla de órdenes de escaneo de sub-bloques es especificada por un índice de escaneo scanlndex asociado con el tamaño de la TU (bloque) que será procesada en el índice de modo de predicción del modo de intra predicción.
Unidad de control de codificación de coeficientes 223 La unidad de control de codificación de coeficientes 223 tiene una configuración para controlar el orden del proceso de codificación en cada unidad incluida en el codificador de información residual cuantificada Y271.
Tamaño de bloque menor que o igual a tamaño predeterminado Cuando el tamaño de bloque es menor que o igual a un tamaño predeterminado (por ejemplo, componente de 4x4, componente de 8x8, etc.), la unidad de control de codificación de coeficientes 223 se refiere a los elementos de sintaxis last_significant_coeff_x y last_significant_coeff_y suministrados desde la unidad de derivación de sintaxis Y228 para identificar la posición del último coeficiente de transformación no cero en un escaneo hacia adelante, y suministra la posición (xC, yC) de los componentes de frecuencia a la unidad de codificación de indicadores de presencia/ausencia de coeficientes en orden de escaneo que inicia con la posición identificada del último coeficiente de transformación no cero como el origen y que es orden de escaneo inverso al orden de escaneo provisto en la tabla de orden de escaneo almacenada en la unidad de almacenamiento de tablas de órdenes de escaneo 222.
La unidad de control de codificación de coeficientes 223 suministra además sz, que es un parámetro que indica el tamaño de la TU que será procesada, es decir, el tamaño de la región de frecuencia objetivo, a cada unidad incluida en la unidad de codificación de coeficientes de transformación Y220 (no ilustrada en el dibujo) . Aquí, específicamente, sz es un parámetro que indica el número de pixeles en un lado de la TU que será procesada, es decir, el número de componentes de frecuencia en un lado de la región de frecuencia objetivo.
La unidad de control de codificación de coeficientes 223 puede configurarse para suministrar la posición (xC, yC) de los componentes de frecuencia a la unidad de codificación de indicadores de presencia/ausencia de coeficientes Y224 en orden de escaneo hacia adelante que es el orden de escaneo proporcionado en la tabla de órdenes de escaneo almacenada en la unidad de almacenamiento de tablas de órdenes de escaneo 222.
Tamaño de bloque más grande que tamaño predeterminado Cuando el tamaño de bloque es más grande que el tamaño predeterminado, la unidad de control de codificación de coeficientes 223 se refiere a los elementos de sintaxis last_significant_coeff_x y last_significant_coeff_y suministrados desde la unidad de derivación de sintaxis Y228 para identificar la posición del último coeficiente de transformación no cero en un escaneo hacia adelante, y suministra la posición (xCG, yCG) de los sub-bloques a la unidad de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloque Y227 en orden de escaneo que inicia con la posición del sub-bloque que incluye el último coeficiente de transformación no cero como el origen y que es orden de escaneo inverso al orden de escaneo proporcionado en la tabla de órdenes de escaneo de sub-bloques almacenada en la unidad de almacenamiento de tablas de órdenes de escaneo 222.
La unidad de control de codificación de coeficientes 223 suministra además, para un sub-bloque que será procesado, la posición (xC, yC) de los componentes de frecuencia incluidos en el sub-bloque que será procesado a la unidad de codificación de indicadores de presencia/ausencia de coeficientes Y224 en orden de escaneo inverso al orden de escaneo proporcionado en la tabla de órdenes de escaneo almacenada en la unidad de almacenamiento de tablas de órdenes de escaneo 222. Específicamente, el orden de escaneo de los componentes de frecuencia incluidos en el sub-bloque que será procesado puede ser un escaneo diagonal (escaneo en diagonal vertical) .
De esta manera, la unidad de control de codificación de coeficientes 223 se configura para cambiar el orden de escaneo para cada modo de intra predicción. En general, hay una correlación entre un modo de intra predicción y una desviación de un coeficiente de transformación. Así, cambiar el orden de escaneo de acuerdo con el modo de intra predicción puede traducirse en escaneo de sub-bloques adecuado para una desviación del indicador de presencia/ausencia de coeficientes de sub-bloques. En consecuencia, la cantidad de codificación del indicador de presencia/ausencia de coeficientes de sub-bloques a ser codificado y decodificado puede ser reducida, dando como resultado una mejora en eficiencia de codificación.
Unidad de codificación de valores de coeficientes Y225 La unidad de codificación de valores de coeficientes Y225 lleva a cabo un proceso diferente dependiendo de si se lleva a cabo un proceso regular o un proceso simplificado. En el caso del proceso regular, la unidad de codificación de valores de coeficientes Y225 genera bins que indican los elementos de sintaxis coeff_abs_level_greaterl_flag, coeff_abs_level_greater2_flag, coeff_sign_flag, y coeff_abs_level_minus3 suministrados desde la unidad de derivación de sintaxis Y228. Como se describió con respecto al dispositivo de decodificación de video 3, en el caso del proceso simplificado, bins que indican coeff_sign_flag and coeff_abs_level_minusl son generados en la primera a tercera configuraciones de simplificación. En la cuarta a quinta configuraciones de simplificación, bins que indican coeff_sign_flag, coeff_abs_level_minusl , y coeff_abs_level son generados.
Los bins generados son suministrados a la unidad de codificación de bits 232. Además, índices de contexto ctxldx que especifican contextos que serán referidos para poder codificar los bins de los elementos de sintaxis descritos arriba son suministrados a la unidad de grabación/actualización de contextos 231. En el caso del proceso simplificado, la derivación de índices de contexto es omitida.
Unidad de codificación de indicadores de presencia/ausencia de coeficientes Y224 La unidad de codificación de indicadores de presencia/ausencia de coeficientes Y224 de acuerdo con esta modalidad codifica el elemento de sintaxis significant_coeff_flag [xC] [yC] especificado por cada posición (xC, yC) . Más específicamente, la unidad de codificación de indicadores de presencia/ausencia de coeficientes Y224 genera un bin que indica el elemento de sintaxis significant_coeff_flag [xC] [yC] especificado por cada posición (xC, yC) . Los bins generados son suministrados a la unidad de codificación de bits 232. Además, la unidad de codificación de indicadores de presencia/ausencia de coeficientes Y224 calcula un índice de contexto ctxldx para determinar un contexto que se usará para codificar el bin el elemento de sintaxis significant_coeff_flag [xC] [yC] usando la unidad de codificación de códigos aritméticos 230. El índice de contextos ctxldx calculado es suministrado a la unidad de grabación/actualización de contextos 231.
Nótese que, como se describió con respecto al dispositivo de decodificación de video 3, en la primera configuración de simplificación a la tercera configuración de simplificación, el índice de contexto de significant_coeff_flag se deriva en el proceso regular mientras que el índice de contexto no se deriva cuando modo de derivación es usado en el proceso simplificado.
La figura 75 es un diagrama de bloques que ilustra una configuración de la unidad de codificación de indicadores de presencia/ausencia de coeficientes Y224. Como se ilustra en la figura 75, la unidad de codificación de indicadores de presencia/ausencia de coeficientes Y224 incluye una unidad de clasificación de frecuencias 224a, una unidad de derivación de contextos de posición 224b, una unidad de derivación de contextos de referencia adyacentes 224c, una unidad de memoria de indicadores de presencia/ausencia de coeficientes 224d y una unidad de establecimiento de configuración de indicadores de presencia/ausencia de coeficientes 224e.
Los procesos específicos llevados a cabo por la unidad de clasificación de frecuencias 224a, la de derivación de contextos de referencia adyacentes 224c, y la unidad de memoria de indicadores de presencia/ausencia de coeficientes 224d son similares a aquellos de los medios incluidos en el dispositivo de decodificación de video 3, y no se describen aquí .
Unidad de establecimiento de configuración de indicadores de presencia/ausencia de coeficientes 224e La unidad de establecimiento de configuración de indicadores de presencia/ausencia de coeficientes 224e genera un bin que indica el elemento de sintaxis significant_coeff_flag [xC] [yC] suministrado desde la unidad de derivación de sintaxis Y228. El bin generado es suministrado a la unidad de codificación de bits 232. Además, la unidad de establecimiento de configuración de indicadores de presencia/ausencia de coeficientes 224e se refiere a los valores de significant_coeff_flag [xC] [yC] incluidos en el sub-bloque objetivo, y establece el valor de significant_coeffgroup_flag [xC] [yC] para el sub-bloque objetivo en cero cuando todos los valores de significant_coeff_flag [xC] [yC] incluidos en el sub-bloque objetivo son iguales a 0, es decir, cuando el sub-bloque objetivo no incluye ningún coeficiente de transformación no cero, o de otra manera establece el valor de significantgroup_coeff_flag [xC] [yC] para el sub-bloque objetivo en 1. significant_coeffgroup_flag [xC] [yC] , el valor del cual ha sido un valor asignado de la manera descrita arriba, se suministra a la unidad de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloque Y227.
De acuerdo con la configuración descrita arriba, en el caso del proceso simplificado, el proceso de derivación de contextos y el proceso de actualización de contextos pueden ser omitidos, dando como resultado una mejora en emisión. Además, en NPL 2 en el cual se usa binarización para codificación CAVLC, se usan dos modos, en particular, modo de corrida y modo de nivel, mientras que en una configuración de esta modalidad, un proceso simplificado puede llevarse a cabo con binarización individual, dando como resultado la ventaja de una configuración de procesamiento más simple. Se proporcionan descubrimientos de que particularmente en una región de alta velocidad de bits que incluye un problema de emisión, la relación de coeficientes de transformación 0 es relativamente baja y la eficiencia de codificación similar a aquella en modo de corrida puede implementarse en modo de nivel. En esta configuración, el modo de corrida en el cual un número de coeficientes 0 consecutivos son codificados no se usa sino sólo un modo para codificar directamente un valor, que corresponde a modo de nivel, es usado, dando como resultado una reducción en la complejidad de la configuración del dispositivo mientras se mantiene eficiencia de codificación.
Apéndice 1 El dispositivo de codificación de video 2 y el dispositivo de decodificación de video 1 descritos arriba pueden ser montados en varios aparatos para transmitir, recibir, grabar y reproducir una imagen en movimiento para uso. La imagen en movimiento puede ser una imagen en movimiento natural capturada usando una cámara o similar, o puede ser una imagen en movimiento artificial (incluyendo CG y GUI) generada usando una computadora o similar.
Primero, el uso del dispositivo de codificación de video 2 y el dispositivo de decodificación de video 1 descritos arriba para la transmisión y recepción de una imagen en movimiento se describirá con referencia a las figuras 29A y 29B.
La figura 29A es un diagrama de bloques que ilustra una configuración de un aparato de transmisión PR0D_A que incluye el dispositivo de codificación de video 2. Como se ilustra en la figura 29A, el aparato de transmisión PR0D_A incluye un codificador PR0D_A1 para codificar una imagen en movimiento para obtener datos codificados, un modulador PR0D_A2 para modular una onda portadora usando los datos codificados obtenidos por el codificador PR0D_A1 para obtener una señal de modulación, y un transmisor PR0D_A3 para transmitir la señal de modulación obtenida por el modulador PR0D_A2. El dispositivo de codificación de video 2 descrito arriba puede usarse como el codificador PR0D_A1.
El aparato de transmisión PROD_A puede incluir además fuentes desde las cuales se suministren imágenes en movimiento que serán ingresadas al codificador PR0D_A1, incluyendo una cámara PR0D_A4 para capturar una imagen en movimiento, un medio de grabación PROD_A5 que tenga una imagen en movimiento grabada en el mismo, una terminal de entrada PR0D_A6 a través de la cual una imagen en movimiento se ingrese desde el exterior, y un procesador de imágenes A7 para generar o modificar una imagen. En la figura 29A, todos ellos están incluidos en el aparato de transmisión PR0D_A, a manera de ejemplo. Sin embargo, algunos de ellos pueden ser omitidos.
El medio de grabación PROD_A5 puede tener grabado en el mismo una imagen en movimiento que no haya sido codificada, o puede tener grabado en el mismo una imagen en movimiento que haya sido codificada usando un esquema de codificación para grabar un esquema de codificación diferente al de transmisión. En el último caso, un decodificador (no ilustrado) puede ser dispuesto entre el medio de grabación PR0D_A5 y el codificador PR0D_A1 para decodificar datos codificados leídos del medio de grabación PROD_A de acuerdo con un esquema de codificación para grabación.
La figura 29B es un diagrama de bloques que ilustra una configuración de un aparato de recepción PROD_B que incluye el dispositivo de decodificación de video 1. Como se ilustra en la figura 29B, el aparato de recepción PROD_B incluye un receptor PR0D_B1 para recibir una señal de modulación, un desmodulador PR0D_B2 para desmodular la señal de modulación recibida por el receptor PR0D_B1 para obtener datos codificados, y un decodificador PR0D_B3 para decodificar los datos codificados obtenidos por el desmodulador PROD_B2 para obtener una imagen en movimiento. El dispositivo de decodificación de video 1 descrito arriba puede usarse como el decodificador PR0D_B3.
El aparato receptor PR0D_B puede incluir además destinos a los cuales se vaya a suministrar una imagen en movimiento enviada desde el decodificador PR0D_B3 , incluyendo un presentador visual PROD_B4 en el cual se presente visualmente la imagen en movimiento, un medio de grabación PR0D_B5 en el cual se grabe la imagen en movimiento, y una terminal de salida PROD_B6 a través de la cual la imagen en movimiento sea enviada al exterior. En la figura 29B, todos ellos están incluidos en el aparato recetor PR0D_B, a manera de ejemplo. Sin embargo, algunos de ellos pueden ser omitidos .
El medio de grabación PR0D_B5 puede ser configurado para tener grabado en el mismo una imagen en movimiento que no haya sido codificada, o puede ser configurado para tener grabada en el mismo una imagen en movimiento que haya sido codificada usando un esquema de codificación para grabación diferente a un esquema de codificación para transmisión. En el último caso, un codificador (no ilustrado) puede ser dispuesto entre el decodificador PR0D_B3 y el medio de grabación PR0D_B5 para codificar una imagen en movimiento adquirida del decodificador PR0D_B3 de acuerdo con un esquema de codificación para grabación.
Un medio de transmisión en el cual una señal de modulación viaja puede ser inalámbrico o alámbrico. Una forma de transmisión en la cual una señal de modulación sea transmitida puede ser difusión (aquí, una forma de transmisión en la cual un destino no se especifica por adelantado) o comunicación (aquí, una forma de transmisión en la cual un destino se especifique por adelantado) . Es decir, la transmisión de una señal de modulación puede implementarse por cualquiera de radiodifusión, difusión alámbrica, comunicación inalámbrica y comunicación alámbrica.
Por ejemplo, una estación de difusión (tal como una instalación difusora) /estación receptora (tal como un receptor de televisión) de difusión digital terrestre es un ejemplo del aparato de transmisión PROD_BA/el aparato receptor PROD_B para transmitir/recibir una señal de modulación por medio de radiodifusión. Una estación de difusión (tal como una instalación de difusión) /estación receptora (tal como un receptor de televisión) de difusión de televisión por cable es un ejemplo del aparato de transmisión PROD_A/el aparato receptor PROD_B para transmitir/recibir una señal de modulación por medio de difusión alámbrica.
Un servidor (tal como una estación de trabaj o) /cliente (tal como un receptor de televisión, una computadora personal o un teléfono inteligente) para servicios VOD (Video Bajo Demanda) , servicios de compartir video y similares por internet es un ejemplo del aparato de transmisión PROD A/el aparato receptor PROD B para transmitir/recibir una señal de modulación por medio de comunicación (en general, medios de transmisión alámbricos o inalámbricos pueden ser usados para LANs, y medios de transmisión alámbricos se usan para WA s) . Ejemplos de la computadora personal incluyen una PC de escritorio, una PC portátil y una PC de tableta. Ejemplos del teléfono inteligente también incluyen una terminal de teléfono móvil multifuncional .
Un cliente para servicios de compartir video tiene una función de decodificar datos codificados bajados desde un servidor y de presentar visualmente video en un presentador visual, y tiene también una función de codificar una imagen en movimiento capturada usando una cámara y de subir la imagen en movimiento a un servidor. Es decir, un cliente para servicios de compartir video sirve tanto como el aparato de transmisión PROD_A como el aparato de recepción PROD_B .
A continuación se describirá con referencia a las figuras 30A y 30B el uso de dispositivo de decodificación de video 2 y el dispositivo de decodificación de video 1 descritos arriba para la grabación y reproducción de una imagen en movimiento.
La figura 30A es un diagrama de bloques que ilustra una conf guración de un aparato de grabación PROD_C que incluye el dispositivo de codificación de video 2 descrito arriba. Como se ilustra en la figura 30A, el aparato de grabación PROD_C incluye un codificador PR0D_C1 para codificar una imagen en movimiento para obtener datos codificados, y un escritor PROD_C2 para escribir los datos codificados obtenidos por el codificador PR0D_C1 en un medio de grabación PR0D_M. El dispositivo de codificación de video 2 descrito arriba puede ser usado como el codificador PR0D_C1.
El medio de grabación PROD M puede ser (1) de un tipo incorporado en el aparato de grabación PROD_C, por ejemplo, tal como un HDD (Unidad de Disco Duro) o una SSD (Unidad de Estado Sólido) , o (2) de un tipo conectado al aparato de grabación PROD_C, por ejemplo, una tarjeta de memoria SD o una memoria flash USB (Bus en Serie Universal) , o puede ser (3) establecido en un dispositivo de unidad (no ilustrado) incorporado en el aparato de grabación PROD_C, por ejemplo, un DVD (Disco Versátil Digital) o un BD (Disco Blu-ray) (marca registrada) .
El aparato de grabación PROD_C puede incluir además fuentes desde las cuales imágenes en movimiento que serán ingresadas en el codificador PR0D_C1 sean suministradas, incluyendo una cámara PROD_C3 para capturar una imagen en movimiento, una terminal de entrada PR0D_C4 a través de la cual una imagen en movimiento sea ingresada desde el exterior, un receptor PROD_C5 para recibir una imagen en movimiento y un procesador de imágenes PROD_C6 para generar o modificar una imagen. En la figura 30a, todos ellos están incluidos en el aparato de grabación PR0D_C, a manera de ejemplo. Sin embargo, algunos de ellos pueden ser omitidos.
El receptor PROD_C5 puede ser configurado para recibir una imagen en movimiento que no haya sido codificada, o puede configurarse para recibir datos codificados que hayan sido codificados usando un esquema de codificación para transmisión que sea diferente de un esquema de codificación para grabación. En el segundo caso, un decodificador de transmisión (no ilustrado) puede ser dispuesto entre el receptor PR0D_C5 y el codificador PR0D_C1 para decodificar datos codificados que hayan sido codificados usando un esquema de codificación para transmisión.
Ejemplos del aparato de grabación PR0D_C incluyen un grabador de DVD, un grabador de BD y un grabador de HDD (Unidad de Disco Duro) (en este caso, la terminal de entrada PR0D_C4 o el receptor PR0D_C5 sirve como una fuente principal desde la cual se suministra una imagen en movimiento) . Otros ejemplos del aparato de grabación PR0D_C incluyen una videocámara (en este caso, la cámara PROD_C3 sirve como una fuente principal desde la cual se suministra una imagen en movimiento) , una computadora personal (en este caso, el receptor PROD_C5 o el procesador de imágenes PR0D_C6 sirve como una fuente principal desde al cual se suministra una imagen en movimiento) , y un teléfono inteligente (en este caso, la cámara PR0D_C3 o el receptor PROD_C5 sirve como una fuente principal desde la cual se suministra una imagen en movimiento) .
La figura 30B es un diagrama de bloques que ilustra una configuración de un aparato reproductor PR0D_D que incluye el dispositivo de decodificación de video 1 descrito arriba. Como se ilustra en la figura 30B, el aparato reproductor PR0D_D incluye un lector PR0D_D1 para leer datos codificados escritos en un medio de grabación PR0D_M, y un decodificador PROD_D2 para decodificar los datos codificados leídos por el lector PR0D_D1 para obtener una imagen en movimiento. El dispositivo de decodificación de video 1 descrito arriba puede usarse como el decodificador PR0D_D2.
El medio de grabación PROD_M puede ser (1) de un tipo incorporado en el aparato reproductor PROD_D, por ejemplo, un HDD o un SSD, o (2) de un tipo conectado al aparato reproductor PROD_D, por ejemplo, una tarjeta de memoria SD o una memoria flash USB, o puede ser (3) instalado en un dispositivo de unidad (no ilustrado) incorporado en el aparato reproductor PROD_D, por ejemplo, un DVD o un BD.
El aparato reproductor PROD_D puede incluir además destinos a los cuales se vaya a suministrar una imagen en movimiento enviada desde el decodificador PR0D_D2 , incluyendo un presentador visual PR0D_D3 en el cual se presente visualmente la imagen en movimiento, una terminal de salida PR0D_D4 a través de la cual la imagen en movimiento sea enviada al exterior y un transmisor PR0D_D5 para transmitir la imagen en movimiento. En la figura 30B, todos ellos están incluidos en el aparato reproductor PR0D_D, a manera de ejemplo. Sin embargo, algunos de ellos pueden ser omitidos.
El transmisor PR0D_D5 puede ser configurado para transmitir una imagen en movimiento que haya codificada, o puede ser configurado para transmitir datos codificados que hayan sido codificados usando un esquema de codificación para transmisión que sea diferente de un esquema de codificación para grabación. En el último caso, un codificador (no ilustrado) puede ser dispuesto entre el decodificador PR0D_D2 y el transmisor PR0D_D5 para codificar una imagen en movimiento usando un esquema de codificación para transmisión .
Ejemplos del aparato reproductor PROD_D incluyen un reproductor de DVD, un reproductor de BD y un reproductor de HDD (en este caso, la terminal de salida PR0D_D4 , a la cual un receptor de televisión o similar es conectado, sirve como un destino principal al cual se va a suministrar una imagen en movimiento) . Otros ejemplos del aparato reproductor PROD_D incluyen un receptor de televisión (en este caso, el presentador visual PR0D_D3 sirve como un destino principal al cual se va a suministrar una imagen en movimiento) , una firma digital (también denominado un letrero electrónico, un tablón de anuncios electrónico, o similar, en cuyo caso el presentador visual PR0D_D3 o el transmisor PR0D_D5 sirve como un destino principal al cual se va a suministrar una imagen en movimiento) , una PC de escritorio (en este caso, la terminal de salida PR0D_D4 o el transmisor PR0D_D5 sirve como un destino principal al cual se va a suministrar una imagen en movimiento) , una computadora portátil o PC de tableta (en este caso, el presentador visual PR0D_D3 o el transmisor PR0D_D5 sirve como un destino principal al cual se va a suministrar una imagen en movimiento) , y un teléfono inteligente (en este caso, el presentador visual PR0D_D3 o el transmisor PR0D_D5 sirve como un destino principal al cual se va a suministrar una imagen en movimiento) .
Apéndice 2 Los bloques respectivos del dispositivo de decodificación de video 1 y el dispositivo de decodificación de video 2 descritos arriba pueden implementarse en hardware como un circuito lógico formado en un circuito integrado (chip IC) o pueden implementarse en software usando una CPU (Unidad de Procesamiento Central) .
En el segundo caso, cada uno de los dispositivos descritos arriba incluye una CPU para ejecutar instrucciones en un programa para implementar funciones individuales, una ROM (Memoria de Sólo Lectura) que tiene el programa almacenado en la misma, una RAM (Memoria de Acceso Aleatorio) en la cual se carga el programa, un dispositivo de almacenamiento (medio de grabación) , tal como una memoria, para almacenar el programa y varios tipos de datos, y así sucesivamente. El objetivo de la presente invención también puede lograrse al suministrar a cada uno de los dispositivos descritos arriba un medio de grabación en el cual un código de programa (un programa de forma de ejecución, un programa de código intermedio o un programa de origen) de un programa de control para cada uno de los dispositivos descritos arriba, que es software que implementa las funciones descritas arriba, se grabe en una forma legible por computadora, y al leer y ejecutar el código de programa grabado en el medio de grabación usando una computadora (o una CPU o una MPU.
Ejemplos del medio de grabación incluyen cintas tales como una cinta magnética y una cinta de cásete, discos incluyendo discos magnéticos tales como un disco flexible (marca registrada) y un disco duro, y discos ópticos tales como un CD-ROM, un disco MO, un MD, un DVD y un CD-R, tarjetas tales como una tarjeta IC (que incluye una tarjeta de memoria) y una tarjeta óptica, memorias semiconductoras tales como una ROM de máscara, una EPROM, una EEPROM y una ROM flash, y circuitos lógicos tales como un PLD (dispositivo Lógico Programable) y una FPGA (Disposición de Puertas Programable por Campos) .
Además, cada uno de los dispositivos descritos arriba puede ser configurado para poderse conectar a una red de comunicación, y puede ser suministrado con el código de programa descrito arriba por medio de la red de comunicación. La red de comunicación no está limitada particularmente siempre y cuando pueda transmitir código de programa. Por ejemplo, internet, una intranet, una extranet, una LAN, una ISDN, una VAN, una red de comunicación por CATV, una red privada virtual, una red telefónica, una red de comunicación móvil, una red de comunicación por satélite o similares pueden ser usadas. Un medio de transmisión que forma la red de comunicación puede ser un medio capaz de transmitir código de programa, y no está limitado a ninguna configuración o tipo específico. Un medio de transmisión alámbrico, tal como IEEE 1394, USB, portador de línea eléctrica, líneas de TV por cable, líneas telefónicas o líneas ADSL (siglas en inglés para Línea de Abonados Digitales Asimétricos) , o un medio de transmisión inalámbrico, tal como tipo infrarrojo, por ejemplo, IrDA o un control remoto, Bluetooth (marca registrada), radio IEEE 802.11, HDR (Alta Velocidad de Datos) , NFC (siglas en inglés para Comunicación de Campo Cercano) , DLNA (siglas en inglés para Alianza de Redes Vivas Digitales), una red de telefonía móvil, una red satelital o una red digital terrestre, pueden ser usadas.
Invención (A) descrita en la presente La invención descrita en la presente proporciona al menos lo siguiente.
Al .
Un dispositivo de decodificación aritmética para decodificar datos codificados para cada coeficiente de transformación individual obtenido al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, los datos codificados siendo obtenidos por codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, que incluye: medio de división para dividir una región de frecuencia objetivo que corresponda a una región de unidad que será procesada en una pluralidad de sub-regiones ; medio de derivación de índices de contexto para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que sea un elemento de sintaxis que indique si un coeficiente de transformación incluido en cada sub-región es o no 0 ; y medio de decodificación de sintaxis para decodificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, con base en un estado de probabilidad especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, en donde el medio de derivación de índices de contexto deriva un índice de contexto que será asignado a un indicador de presencia/ausencia de coeficientes de transformación que pertenece a cada sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones , de acuerdo con la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo.
A2.
Un dispositivo de decodificación aritmética para decodificar datos codificados para coeficiente de transformación individual obtenido al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, los datos codificados siendo obtenidos por codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, que incluye : medio de división para dividir una región de frecuencia objetivo que corresponda a una región de unidad que será procesada en una pluralidad de sub-regiones ; medio de derivación de índices de contexto para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que sea un elemento de sintaxis que indique si un coeficiente de transformación incluido en cada sub-región es o no 0 ; y medio de decodificación de sintaxis para decodificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, con base en un estado de probabilidad especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, en donde el medio de derivación de índices de contexto está configurado para derivar un índice de contexto que será asignado a un indicador de presencia/ausencia de coeficientes de transformación, con base en el número de coeficientes de transformación no cero decodificados incluidos en un conjunto de regiones de referencia cerca de la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo, y un conjunto de regiones de referencia en una sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones es más pequeño que un conjunto de regiones de referencia en una sub-región del lado de baja frecuencia entre la pluralidad de sub-regiones .
A3.
El dispositivo de decodificación aritmética de acuerdo con A2 , en donde el medio de derivación de índices de contexto se configura para derivar un índice de contexto al añadir juntos un punto de partida predeterminado determinado para cada una de las sub-regiones y una variable determinada para cada una de las sub-regiones, y se configura para establecer puntos de partida para una pluralidad de sub-regiones para cada una de los cuales la variable se derive usando un método diferente a un valor igual de tal manera que se use un contexto común para la pluralidad en sub-regiones para cada una de las cuales se derive un índice de contexto usando un método diferente.
A4.
El dispositivo de decodificación aritmética de acuerdo con cualquiera de Al a A3 , en donde el medio de división está configurado para clasificar la región de frecuencia objetivo en por lo menos tres sub-regiones de acuerdo con una posición de un indicador de presencia/ausencia de coeficientes de transformación que será procesado, y el medio de derivación de índices de contexto deriva un índice de contexto al referirse a NI coeficientes de transformación no cero decodificados (en donde NI es un número natural) para una primera sub-región y al referirse a N2 coeficientes de transformación no cero decodificados (en donde N2 es un número natural que satisface N2 < NI) para una segunda sub-región, y deriva un índice de contexto para una tercera sub-región de acuerdo con una posición del indicador de presencia/ausencia de coeficientes de transformación.
A5.
El dispositivo de decodificación aritmética de acuerdo con A2 , en donde el medio de derivación de índices de contexto deriva un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que se encuentra a lo largo de una secuencia de escaneo actual en una sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones, además con base en el número de coeficientes de transformación no cero que se encuentran a lo largo de una secuencia de escaneo precedente .
A6.
Un dispositivo de decodificación aritmética para decodificar datos codificados para cada coeficiente de transformación individual obtenido al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, los datos codificados siendo obtenidos por codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, que incluye : medio de división para dividir una región de frecuencia objetivo que corresponde a una región de unidad que será procesada en una pluralidad de sub-regiones ; medio de derivación de índices de contexto para derivar secuencialmente , a lo largo de cada secuencia de escaneo, un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que es un elemento de sintaxis que indica si un coeficiente de transformación incluido en cada sub-región es o no cero; y medio de decodificación de sintaxis para decodificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, con base en un estado de probabilidad especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, en donde el medio de derivación de índices de contexto deriva un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que se encuentre a lo largo de una secuencia de escaneo actual en una sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones, con base en el número de coeficientes de transformación no cero que se encuentren a lo largo de una secuencia de escaneo precedente.
A7.
Un dispositivo de decodificación aritmética para decodificar datos codificados para cada coeficiente de transformación individual obtenido al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, los datos codificados son siendo obtenidos por codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, que incluye: medio de división para dividir una región de frecuencia objetivo que corresponde a una región de unidad que será procesada en una pluralidad de sub-regiones; medio de derivación de índices de contexto para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que sea un elemento de sintaxis que indique si un coeficiente de transformación incluido en cada sub-región es o no 0; y medio de decodificación de sintaxis para decodificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, con base en un estado de probabilidad especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, en donde el medio de derivación de índices de contexto se configura para derivar un índice de contexto que será asignado a un indicador de presencia/ausencia de coeficientes de transformación, con base en el número de coeficientes de transformación no cero decodificados incluido en un conjunto de regiones de referencia cerca de la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo, y el número de coeficientes de transformación decodificados incluidos en la región de referencia es menor que o igual a 4.
A8.
Un dispositivo de decodificación aritmética para codificar datos codificados para cada coeficiente de transformación individual obtenido al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, los datos codificados siendo obtenidos por codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, que incluye : medio de división para dividir una región de frecuencia objetivo que corresponde a una región de unidad que será procesada en una pluralidad de sub-regiones ; medio de asignación de índices de contexto para asignar un índice de contexto diferente a cada sub-región; y medio de decodificación de sintaxis para decodificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que sea un elemento de sintaxis que indique si un coeficiente de transformación incluido en cada sub-región es o no 0, con base en un estado de probabilidad especificado por un índice de contexto asignado a una sub-región a la cual pertenezca el indicador de presencia/ausencia de coeficientes de transformación, en donde una sub-región del lado de baja frecuencia entre la pluralidad de sub-regiones es más pequeña que una sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones .
A9.
El dispositivo de decodificación aritmética de acuerdo con Al, en donde el medio de división se configura para dividir la región de frecuencia objetivo en una pluralidad de sub-regiones de acuerdo con SUM que representa una suma de coordenada X y coordenada Y de un indicador de presencia/ausencia de coeficientes de transformación, el medio de división divide la región de frecuencia objetivo en por lo menos una sub-región del lado de baja frecuencia y la sub-región del lado de alta frecuencia de acuerdo con una relación de magnitud entre la SUM y un primer valor umbral TH2 determinado de acuerdo con un tamaño sz de la región de frecuencia objetivo, y el primer valor umbral TH2 es mayor que o igual a sz.
A10.
El dispositivo de decodificación aritmética de acuerdo con A2 , en donde el medio de división se configura para dividir la región de frecuencia objetivo en una pluralidad de sub-regiones de acuerdo con SUM que representa una suma de coordenada X y coordenada Y de un indicador de presencia/ausencia de coeficientes de transformación, el medio de división divide la región de frecuencia objetivo en por lo menos la sub-región del lado de baja frecuencia y la sub-región del lado de alta frecuencia de acuerdo con una relación de magnitud entre la SUM y el primer valor umbral TH2 determinado de acuerdo con un tamaño sz de la región de frecuencia objetivo, y el primer valor umbral TH2 es menor que o igual a sz-2.
All .
El dispositivo de decodificación aritmética de acuerdo con A4, en donde el medio de división se configura para dividir la región de frecuencia objetivo en una pluralidad de sub-regiones de acuerdo con SUM que represente una suma de coordenada X y coordenada Y de un indicador de presencia/ausencia de coeficientes de transformación, el medio de división divide la región de frecuencia objetivo en la primera sub-región y la segunda sub-región de acuerdo con una relación de magnitud entre la SUM y un primer valor umbral TH2 determinado de acuerdo con un tamaño sz de la región de frecuencia objetivo, y divide la región de frecuencia objetivo en la segunda sub-región y la tercera sub-región de acuerdo con una relación de magnitud entre la SUM y un segundo valor umbral TH3 determinado de acuerdo con el tamaño sz de la región de frecuencia objetivo, y el primer valor umbral TH2 es menor que o igual a sz-2 y el segundo valor umbral TH3 es mayor que o igual a sz.
A12.
Un dispositivo de decodificación de imágenes que incluye : el dispositivo de decodificación aritmética de acuerdo con cualquiera de Al a All; medio de transformación de frecuencia inversa para llevar a cabo una transformación de frecuencia inversa en un coeficiente de transformación decodificado por el dispositivo de decodificación aritmética para generar una imagen residual; y medio de generación de imágenes decodificadas para generar una imagen decodificada al añadir juntas la imagen residual generada por el medio de transformación de frecuencia inversa y una imagen de predicción predicha a partir de una imagen decodificada generada.
A13.
Un dispositivo de codificación aritmética para codificar aritméticamente, para cada coeficiente de transformación individual obtenido al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, varios elementos de sintaxis que representan el coeficiente de transformación individual para generar datos codificados, que incluye: medio de división para dividir una región de frecuencia objetivo que corresponda a una región de unidad que será procesada en una pluralidad de sub-regiones ; medio de derivación de índices de contexto para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que sea un elemento de sintaxis que indique si un coeficiente de transformación incluido en cada sub-región es o no 0; y medio de codificación de sintaxis para codificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, con base en un estado de probabilidad especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, en donde el medio de derivación de índices de contexto deriva un índice de contexto que será asignado a un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a una sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones , de acuerdo con la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo.
A14.
Un dispositivo de codificación de imágenes que incluye : medio de generación de coeficientes de transformación para generar coeficientes de transformación al llevar a cabo una transformación de frecuencia en una imagen residual entre una imagen que será codificada y una imagen de predicción para cada región de unidad; y el dispositivo de codificación aritmética de acuerdo con A13, en donde el dispositivo de codificación aritmética se configura para codificar aritméticamente varios elementos de sintaxis que representen coeficientes de transformación generados por el medio de generación de coeficientes de transformación para generar datos codificados.
Al5.
Una estructura de datos de datos codificados obtenida por, para cada coeficiente de transformación individual obtenido al llevar a cabo una transformación de frecuencia de una imagen objetivo para cada región de unidad, codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, que incluye un indicador de restricción que indica si se decodifica o no un coeficiente de transformación del lado de alta frecuencia en cada región de frecuencia objetivo que corresponda a una región de unidad, en donde un dispositivo de decodificación aritmética configurado para decodificar los datos codificados no decodifica el coeficiente de transformación del lado de alta frecuencia en caso de que el indicador de restricción indique que el coeficiente de transformación del lado de alta frecuencia no es decodificado .
Invención (B) descrita en la presente La invención descrita en la presente proporciona además al menos lo siguiente.
Bl.
Un dispositivo de decodificación aritmética para decodificar datos codificados para cada coeficiente de transformación individual obtenido para cada componente de frecuencia al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, los datos codificados siendo obtenidos por codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, que incluye medio de división de sub-bloques para dividir una región de frecuencia objetivo que corresponda a una región de unidad que será procesada en sub-bloques que tengan un tamaño predeterminado; medio de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques para decodificar, para cada uno de los sub-bloques obtenidos por el medio de división de sub-bloques a través de división, un indicador de presencia/ausencia de coeficientes de sub-bloque que indique si el sub-bloque incluye o no al menos un coeficiente de transformación no cero; medio de división para dividir la región de frecuencia objetivo en una pluralidad de sub-regiones usando al menos cualquiera de cada componente de frecuencia y cada sub-bloque como una unidad de división; medio de derivación de índices de contexto para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que sea un elemento de sintaxis que indique si un coeficiente de transformación incluido en cada sub-región es o no 0 ; y medio de decodificación de sintaxis para decodificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, con base en un estado de probabilidad especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, en donde en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloque decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo incluye al menos un coeficiente de transformación no cero y en caso de que el sub-bloque objetivo esté incluido en una sub-región del lado de alta frecuencia en la región de frecuencia objetivo, el medio de derivación de índices de contexto deriva un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que pertenezca al sub-bloque objetivo, de acuerdo con la posición del sub-bloque objetivo en la región de frecuencia objetivo, y en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloque decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo no incluye un coeficiente de transformación no cero, se lleva a cabo un proceso de decodificación, dado que un indicador de presencia/ausencia de coeficientes de transformación para cada uno de todos los coeficientes de transformación que pertenece al sub-bloque objetivo indica que el coeficiente de transformación es 0.
B2.
El dispositivo de decodificación aritmética de acuerdo con Bl, en donde el medio de división se configura para dividir la región de frecuencia objetivo en por lo menos una sub-región del lado de baja frecuencia y la sub-región del lado de alta frecuencia de acuerdo con una relación de magnitud entre una suma de coordenada X y coordenada Y de un sub-bloque al cual pertenece un indicador de presencia/ausencia de coeficientes de transformación y un valor umbral THA determinado de acuerdo con un tamaño de la región de frecuencia objetivo, y el valor umbral THA tiene un valor mayor que o igual a sz/16, en donde sz representa el número de componentes de frecuencia que se encuentran a lo largo de cada lado de la región de frecuencia objetivo.
B3.
Un dispositivo de decodificación aritmética para decodificar datos codificados para cada coeficiente de transformación individual obtenido para cada componente de frecuencia al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, los datos codificados siendo obtenidos por codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, que incluye: medio de división de sub-bloques para dividir una región de frecuencia objetivo que corresponda a una región de unidad que será procesada en sub-bloques que tengan un tamaño predeterminado; medio de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloque para decodificar, para cada uno de los sub-bloques obtenidos por el medio de división de sub-bloques a través de división, un indicador de presencia/ausencia de coeficientes de sub-bloque que indique si el sub-bloque incluye o no al menos un coeficiente de transformación no cero; medio de división para dividir la región de frecuencia objetivo en una pluralidad de sub-regiones usando al menos cualquiera de cada componente de frecuencia y cada sub-bloque como una unidad de división; medio de derivación de índices de contexto para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que sea un elemento de sintaxis que indique si un coeficiente de transformación incluido en cada sub-región es o no 0 ; y medio de decodificación de sintaxis para decodificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, con base en un estado de probabilidad especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, en donde en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloques decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo incluye al menos un coeficiente de transformación no cero y en caso de que el sub-bloque objetivo esté incluido en una sub-región del lado de alta frecuencia o una sub-región del lado de baja frecuencia en la región de frecuencia objetivo, el medio de derivación de índices de contexto deriva un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que pertenezca al sub-bloque objetivo, con base en el número de coeficientes de transformación no cero decodificados incluidos en una región de referencia que sea ya sea una región de referencia del lado de alta frecuencia o una región de referencia del lado de baja frecuencia seleccionada de acuerdo con una posición de un sub-bloque al cual pertenezca el indicador de presencia/ausencia de coeficientes de transformación en una región de frecuencia objetivo, la región de referencia siendo establecida cerca de la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo, y en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloque decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo no incluye un coeficiente de transformación no cero, se lleva a cabo un proceso de decodificación, dado que un indicador de presencia/ausencia de coeficientes de transformación para cada uno de todos los coeficientes que pertenecen al sub-bloque objetivo indica que el coeficiente de transformación es 0.
B4.
Un dispositivo de decodificación aritmética para decodificar datos codificados para cada coeficiente de transformación individual obtenido para cada componente de frecuencia al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, los datos codificados siendo obtenidos por codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, que incluye: medio de división de sub-bloques para dividir una región de frecuencia objetivo que corresponda a una región de unidad que será procesada en sub-bloques que tengan un tamaño predeterminado; medio de decodificación de indicadores de prese3ncia/ausencia de coeficientes de sub-bloques para decodificar, para cada uno de los sub-bloques obtenidos por el medio de división de sub-bloques a través de división, un indicador de presencia/ausencia de coeficientes de sub-bloques que indique si el sub-bloque incluye o no al menos un coeficiente de transformación no cero; medio de división para dividir la región de frecuencia objetivo en una pluralidad de sub-regiones usando al menos cualquiera de cada componente de frecuencia y cada sub-bloque como una unidad de división; medio de derivación de índices de contexto para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que sea un elemento de sintaxis que indica si un coeficiente de transformación incluido en cada sub-región es o no 0 ; y medio de decodificación de sintaxis para decodificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, con base en un estado de probabilidad especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, en donde en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloque es decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo incluye al menos un coeficiente de transformación no cero y en caso de que el sub-bloque objetivo esté incluido en una sub-región del lado de alta frecuencia en la región de frecuencia objetivo, el medio de derivación de índices de contexto deriva un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que pertenezca al sub-bloque objetivo, con base en el número de coeficientes de transformación no cero que sean coeficientes de transformación no cero decodificados incluidos en una región de referencia establecida cerca de la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo, el número de coeficientes de transformación no cero excluyendo un coeficiente de transformación no cero decodificado inmediatamente antes del indicador de presencia/ausencia de coeficientes de transformación en orden de procesamiento, y en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloque es decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo no incluye un coeficiente de transformación no cero, se lleva a cabo un proceso de decodificación, dado que un indicador de presencia/ausencia de coeficientes de transformación para cada uno de todos los coeficientes de transformación que pertenecen al sub-bloque objetivo indica que el coeficiente de transformación es 0.
B5.
El dispositivo de decodificación aritmética de acuerdo con B3 o B4 , en donde el medio de división se configura para dividir la región de frecuencia objetivo en por lo menos tres sub-regiones , y el medio de derivación de índices de contexto deriva un índice de contexto al referirse a NI coeficientes de transformación no cero decodificados (en donde NI es un número natural) para una primera sub-región y al referirse a N2 coeficientes de transformación no cero decodificados (en donde N2 es un número natural que satisface N2 < NI) para una segunda sub-región, y deriva un índice de contexto para una tercera sub-región de acuerdo con una posición de un indicador de presencia/ausencia de coeficientes de transformación.
B6.
El dispositivo de decodificación aritmética de acuerdo con B3, en donde el medio de división se configura para dividir la región de frecuencia objetivo en al menos una sub-región del lado de baja frecuencia y la sub-región del lado de alta frecuencia de acuerdo con una relación de magnitud entre una suma de coordenada X y coordenada Y de un sub-bloque al cual pertenezca un indicador de presencia/ausencia de coeficientes de transformación y un valor umbral THB determinado de acuerdo con un tamaño de la región de frecuencia objetivo, y El valor umbral THB tiene un valor menor que o igual a sz/4, en donde el número de componentes de frecuencia que se encuentran a lo largo de cada lado de la región de frecuencia objetivo es representado por sz.
B7.
El dispositivo de decodificación aritmética de acuerdo con B5, en donde el medio de división se configura para dividir la región de frecuencia objetivo en la primera sub-región y la segunda sub-región de acuerdo con una relación de magnitud entre una suma de coordenada X y coordenada Y de un sub-bloque al cual pertenezca un indicador de presencia/ausencia de coeficientes de transformación y un valor umbral THB determinado de acuerdo con un tamaño de la región de frecuencia objetivo, y se configura para dividir la región de frecuencia objetivo en la segunda sub-región y la tercera sub-región de acuerdo con una relación de magnitud entre la suma de la coordenada X y la coordenada Y del sub-bloque al cual pertenezca el indicador de presencia/ausencia de coeficientes de transformación y un valor umbral THC determinado de acuerdo con el tamaño de la región de frecuencia objetivo, y el valor umbral THB tiene un valor menor que o igual a sz/4, y el valor umbral THC tiene un valor mayor que o igual a (sz/4) + 2, en donde sz representa el número de componentes de frecuencia que se encuentran a lo largo de cada lado de la región de frecuencia objetivo.
B8.
Un dispositivo de decodificación de imágenes que incluye : el dispositivo de decodificación aritmética de acuerdo con cualquiera de Bl a B7; medio de transformación de frecuencia inversa para llevar a cabo una transformación de frecuencia inversa en un coeficiente de transformación decodificado por el dispositivo de decodificación aritmética para generar una imagen residual; y medio de generación de imágenes decodificadas para generar una imagen decodificada al añadir juntas la imagen residual generada por el medio de transformación de frecuencia inversa y una imagen de predicción predicha a partir de una imagen decodificada generada.
B9.
Un dispositivo de codificación aritmética para codificar aritméticamente, para cada coeficiente de transformación individual obtenido para cada componente de frecuencia al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, varios elementos de sintaxis que representan el coeficiente de transformación individual para generar datos codificados, que incluye : medio de división de sub-bloques para dividir una región de frecuencia objetivo que corresponda a una región de unidad que será procesada en sub-bloques que tengan un tamaño predeterminado medio de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloques para codificar, para cada uno de los sub-bloques obtenidos por el medio de división de sub-bloques a través de división, un indicador de presencia/ausencia de coeficientes de sub-bloques que indique si el sub-bloque incluye o no al menos un coeficiente de transformación no cero; medio de división para dividir la región de frecuencia objetivo en una pluralidad de sub-regiones usando al menos cualquiera de cada componente de frecuencia y cada sub-bloque como una unidad de división; medio de derivación de índices de contexto para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que sea un elemento de sintaxis que indique si un coeficiente de transformación incluido en cada sub-región es o no 0 ; y medio de codificación de sintaxis para codificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, con base en un estado de probabilidad especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, en donde en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloque codificado para un sub-bloque objetivo indique que el sub-bloque objetivo incluye al menos un coeficiente de transformación no cero y en caso de que el sub-bloque objetivo se incluya en una sub-región del lado de alta frecuencia en la región de frecuencia objetivo, el medio de derivación de índices de contexto deriva un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que pertenezca al sub-bloque objetivo, de acuerdo con la posición del sub-bloque objetivo en la región de frecuencia objetivo, y en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloques codificado para un sub-bloque objetivo indique que el sub-bloque objetivo no incluye un coeficiente de transformación no cero, se lleva a cabo un proceso de codificación, dado que un indicador de presencia/ausencia de coeficientes de transformación para cada uno de todos los coeficientes de transformación que pertenece al sub-bloque objetivo indica que el coeficiente de transformación es 0.
B10.
Un dispositivo de codificación de imágenes que incluye : medio de generación de coeficientes de trans ormación para generar coeficientes de transformación al llevar a cabo una transformación de frecuencia en una imagen residual entre una imagen que será codificada y una imagen de predicción para cada región de unidad; y el dispositivo de codificación aritmética de acuerdo con B9, en donde el dispositivo de codificación aritmética se configura para codificar aritméticamente varios elementos de sintaxis que representen coeficientes de transformación generados por el medio de generación de coeficientes de transformación para generar datos codificados.
BU .
Una estructura de datos de datos codificados obtenidos por, para cada coeficiente de transformación individual obtenido para cada componente de frecuencia al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, que incluye un indicador de presencia/ausencia de coeficientes de sub-bloques que indica, para cada uno de los sub-bloques que tienen un tamaño predeterminado que se obtienen al dividir una región de frecuencia que corresponde a la región de unidad, si el sub-bloque incluye o no al menos un coeficiente de transformación no cero, en donde un dispositivo de decodificación configurado para decodificar los datos codificados se configura para en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloques decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo incluye al menos un coeficiente de transformación no cero y en caso de que el sub-bloque objetivo esté incluido en una sub-región del lado de alta frecuencia en la región de frecuencia objetivo, derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que pertenezca al sub-bloque objetivo, de acuerdo con la posición del sub-bloque objetivo en la región de frecuencia objetivo, y decodificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, con base en un estado de probabilidad especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, y en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloque decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo no incluye un coeficiente de transformación no cero, llevar a cabo un proceso de decodificación, dado que un indicador de presencia/ausencia de coeficientes de transformación para cada uno de todos los coeficientes de transformación que pertenece al sub-bloque objetivo indica que el coeficiente de transformación es 0.
Invención (C) descrita, en la presente La invención descrita en la presente proporciona además al menos lo siguiente, Cl .
Un dispositivo de decodificación aritmética de acuerdo con un aspecto de la presente invención es un dispositivo de decodificación aritmética para decodificar datos codificados para cada coeficiente de transformación individual obtenido para cada componente de frecuencia al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, los datos codificados siendo obtenidos por codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, incluyendo medio de división de sub-bloques para dividir una región de frecuencia objetivo que corresponda a una región de unidad que será procesada en sub-bloques que tengan un tamaño predeterminado; medio de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques para decodificar, para cada uno de los sub-bloques obtenidos por el medio de división de sub-bloques a través de división, un indicador de presencia/ausencia de coeficientes de sub-bloque que indique si el sub-bloque incluye o no al menos un coeficiente de transformación no cero; medio de división para dividir la región de frecuencia objetivo en una pluralidad de sub-regiones usando al menos cualquiera de cada componente de frecuencia y cada sub-bloque como una unidad de división; medio de derivación de índices de contexto para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que sea un elemento de sintaxis que indique si un coeficiente de transformación incluido en cada sub-región es o no cero; y medio de decodificación de sintaxis para decodificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, con base en un estado de probabilidad especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, en donde en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloques decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo incluye al menos un coeficiente de transformación no cero y en caso de que el sub-bloque objetivo incluye al menos un coeficiente de transformación no cero y en caso de que el sub-bloque objetivo esté incluido en una sub-región del lado de alta frecuencia en la región de frecuencia objetivo, el medio de derivación de índices de contexto deriva un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que pertenezca al sub-bloque objetivo, de acuerdo con la posición del sub-bloque objetivo en la región de frecuencia objetivo, y en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloques decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo no incluye un coeficiente de transformación no cero, se lleva a cabo un proceso de decodificación, dado que un indicador de presencia/ausencia de coeficientes de transformación para cada uno de todos los coeficientes de transformación que pertenecen al sub-bloque objetivo indica que el coeficiente de transformación es 0.
De acuerdo con el dispositivo de decodificación aritmética que tiene la configuración descrita arriba, en caso de que un sub-bloque objetivo esté incluido en una sub-región del lado de alta frecuencia en una región de frecuencia objetivo, el medio de derivación de índices de contexto deriva un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que pertenezca al sub-bloque objetivo, de acuerdo con la posición del sub-bloque objetivo en la región de frecuencia objetivo. Así, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente, mientras se logra alta eficiencia de codificación.
De acuerdo con la configuración descrita arriba, además, en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloques decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo no incluye un coeficiente de transformación no cero, se lleva a cabo un proceso de decodificación, dado que un indicador de presencia/ausencia de coeficientes de transformación para cada uno de todos los coeficientes de transformación que pertenece al sub-bloque objetivo indica que el coeficiente de transformación es 0. De esta manera, la cantidad de procesamiento para decodificar coeficientes de transformación puede ser reducida, en comparación con la configuración en la cual no se use un indicador de presencia/ausencia de coeficientes de sub-bloques .
C2.
De preferencia, el medio de división se configura para dividir la región de frecuencia objetivo en por lo menos dos sub-regiones del lado de baja frecuencia y lado de alta frecuencia, y el medio de derivación de índices de contexto deriva un índice de contexto para al menos una de sub-regiones ubicadas en el lado de baja frecuencia al hacer referencia a un coeficiente de transformación no cero decodificado, y deriva, para una sub-región ubicada en el lado de alta frecuencia, un valor que se basa en una posición en la región de frecuencia o un valor predeterminado fijo como un índice de contexto.
De acuerdo con la configuración descrita arriba, un índice de contexto para al menos una de las sub-regiones ubicadas en el lado de baja frecuencia se deriva al hacer referencia a un coeficiente de transformación no cero decodificado, y, para una sub-región ubicada en el lado de alta frecuencia, un valor que se basa en una posición en la región de frecuencia o un valor predeterminado fijo se deriva como un índice de contexto. De esta manera, es posible reducir la cantidad de procesamiento mientras se mantiene alta eficiencia de codificación.
C3.
Además, de preferencia, en el dispositivo de decodificación aritmética, el valor de un índice de contexto usado para una sub-región ubicada en el lado de alta frecuencia, que se deriva por el medio de derivación de índices de contexto, está dentro del intervalo de índices de contexto usados para sub-regiones ubicadas en el lado de baja frecuencia .
De acuerdo con la configuración descrita arriba, el valor de un índice de contexto usado para una sub-región ubicada en el lado de alta frecuencia está dentro del intervalo de índices de contexto usados para sub-regiones ubicadas en el lado de baja frecuencia. Así, la cantidad de procesamiento para derivar un índice de contexto puede ser reducida.
C4.
Más aún, de preferencia, en el dispositivo de decodificación aritmética, el valor de un índice de contexto para luma, que es un índice de contexto usado para una sub-región ubicada en el lado de alta frecuencia y que se deriva por el medio de derivación de índices de contexto, es un valor fuera del intervalo de índices de contexto usados para sub-regiones ubicadas en el lado de baja frecuencia, y el valor de un índice de contexto para croma, que es un índice de contexto usado para una sub-región ubicada en el lado de alta frecuencia y que se deriva por el medio de derivación de índices de contexto, está dentro del intervalo de índices de contexto usados para sub-regiones ubicadas en el lado de baja frecuencia .
De acuerdo con la configuración descrita arriba, el valor de un índice de contexto para croma, que es un índice de contexto usado para una sub-región ubicada en el lado de alta frecuencia, está dentro del intervalo de índices de contexto usados para sub-regiones ubicadas en el lado de baja frecuencia. Así, la cantidad de procesamiento para derivar un índice de contexto para croma puede ser reducida.
C5.
Más aún, de preferencia, el medio de división está configurado para dividir la región de frecuencia objetivo en por lo menos dos sub-regiones del lado de baja frecuencia y lado de alta frecuencia, y el medio de derivación de índices de contexto deriva un índice de contexto para al menos una sub-región ubicada en el lado de lado baja frecuencia y hace referencia a NI o más coeficientes de transformación no cero decodificados (en donde NI es un número natural) , y deriva un índice de contexto para una sub-región ubicada en el lado de alta frecuencia al hacer referencia a N2 coeficientes de transformación no cero decodificados (en donde N2 es un número natural que satisface N2 < NI) .
De acuerdo con la configuración descrita arriba, el número de coeficientes de transformación no cero decodificados que será referido para una sub-región ubicada en el lado de alta frecuencia es más pequeño que el número de coeficientes de transformación no cero decodificados que serán referidos para al menos una sub-región ubicada en el lado de baja frecuencia. Así, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia.
C6.
Más aún, de preferencia, el medio de derivación de índices de contexto deriva un índice de contexto para una sub-región ubicada en el lado de baja frecuencia, al llevar a cabo transformación de muchos a uno en el número de coeficientes de transformación no cero decodificados , y deriva el número de coeficientes de ransformación no cero como un índice de contexto para una sub-región ubicada en el lado de alta frecuencia.
De acuerdo con la configuración descrita arriba, un índice de contexto para una sub-región ubicada en el lado de alta frecuencia se deriva sin usar un proceso para llevar a cabo transformación de muchos a uno en el número de coeficientes de transformación no cero. De esta manera, la cantidad de procesamiento puede ser reducida.
C7.
Además, de preferencia, el medio de división se configura para dividir la región de frecuencia objetivo en por lo menos una sub-región del lado de baja frecuencia y la sub-región del lado de alta frecuencia de acuerdo con una relación de magnitud entre una suma de coordenada X y coordenada Y de un indicador de presencia/ausencia de coeficientes de transformación o una suma de coordenada X y coordenada Y de un sub-bloque al cual pertenezca el indicador de presencia/ausencia de coeficientes de transformación y un valor umbral THA determinado de acuerdo con un tamaño obtenido por el valor máximo del ancho y altura de la región de frecuencia objetivo, y el valor umbral THA tiene un valor menor que o igual a sz en el caso de la suma de la coordenada X y la coordenada Y, y tiene un valor menor que o igual a un tamaño de sz/sub-bloque en el caso de la suma de la coordenada X y la coordenada Y del sub-bloque, en donde sz representa el tamaño de la región de frecuencia objetivo.
De acuerdo con la configuración descrita arriba, la región de frecuencia objetivo se divide en al menos una sub-región del lado de baja frecuencia y la sub-región del lado de alta frecuencia de acuerdo con una relación de magnitud entre una suma de coordenada X y coordenada Y de un indicador de presencia/ausencia de coeficientes de transformación o una suma de coordenada X y coordenada Y de un sub-bloque al cual pertenezca el indicador de presencia/ausencia de coeficientes de transformación y un valor umbral THA determinado de acuerdo con un tamaño obtenido por el valor máximo del ancho y altura de la región de frecuencia objetivo, y el valor umbral THA tiene un valor menor que o igual a sz en el caso de la suma de la coordenada X y la coordenada Y, y tiene un valor menor que o igual a un tamaño de sz/sub-bloque en el caso de la suma de la coordenada X y la coordenada Y del sub-bloque, en donde sz representa el tamaño de la región de frecuencia objetivo. Así, es posible reducir la cantidad de procesamiento mientras se mantiene alta eficiencia de codificación .
Más aún, en el dispositivo de decodificación aritmética, de preferencia, el medio de división se configura para dividir la región de frecuencia objetivo en al menos una sub-región del lado de baja frecuencia y la sub-región de lado de alta frecuencia de acuerdo con una relación de magnitud entre una suma de la coordenada X y coordenada Y de un sub-bloque al cual pertenezca un indicador de presencia/ausencia de coeficientes de transformación y un valor umbral THA determinado de acuerdo con un tamaño de la región de frecuencia objetivo, y el valor umbral THA tiene un valor mayor que o igual a sz/16 en donde el número de componentes de frecuencia que se encuentran a lo largo de cada lago de la región de frecuencia objetivo se representa por sz.
De acuerdo con la configuración descrita arriba, la región de frecuencia objetivo puede dividirse adecuadamente para alta eficiencia de codificación y reducción en la cantidad de procesamiento.
C8.
Un dispositivo de decodificación aritmética de acuerdo con un aspecto de la presente invención es un dispositivo de decodificación aritmética para decodificar datos codificados para cada coeficiente de transformación individual obtenido para cada componente de frecuencia al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, los datos codificados siendo obtenidos por codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, incluyendo medio de división de sub-bloques para dividir una región de frecuencia objetivo que corresponda a una región de unidad que será procesada en sub-bloques que tengan un tamaño predeterminado; medio de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques para decodificar, para cada uno de los sub-bloques obtenidos por el medio de división de sub-bloques a través de división, un indicador de presencia/ausencia de coeficientes de sub-bloque que indique si el sub-bloque incluye o no por lo menos un coeficiente de transformación no cero; medio de división para dividir la región de frecuencia objetivo en una pluralidad de sub- regiones usando al menos cualquiera de cada componente de frecuencia y cada sub-bloque como una unidad de división; medio de derivación de índices de contexto para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que será un elemento de sintaxis que indique si un coeficiente de transformación incluido en cada sub-región es o no 0; y medio de decodificación de sintaxis para decodificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, con base en un estado de probabilidad especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, en donde en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloques decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo incluye al menos un coeficiente de transformación cero y en caso de que el sub-bloque objetivo esté incluido en una sub-región del lado de alta frecuencia o una sub-región del lado de baja frecuencia en la región de frecuencia objetivo, el medio de derivación de índices de contexto deriva un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que pertenezca al sub-bloque objetivo, con base en el número de coeficientes de transformación no cero decodificados incluidos en una región de referencia que sea ya sea una región de referencia del lado de alta frecuencia o una región de referencia del lado de baja frecuencia seleccionada de acuerdo con una posición de un sub-bloque al cual pertenezca el indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo, la región de referencia siendo establecida cerca de la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo, y en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloque decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo no incluye un coeficiente de transformación no cero, se lleva a cabo un proceso de decodificación, dado que un indicador de presencia/ausencia de coeficientes de transformación para cada uno de todos los coeficientes de transformación que pertenece al sub-bloque objetivo indica que el coeficiente de transformación es 0.
De acuerdo con el dispositivo de decodificación aritmética que tiene una configuración descrita arriba, en caso de que un sub-bloque objetivo esté incluido en una sub-región del lado de alta frecuencia o una sub-región del lado de baja frecuencia en la región de frecuencia objetivo, el medio de derivación de índices de contexto deriva un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que pertenezca al sub-bloque objetivo, con base en el número de coeficientes de transformación no cero decodificados incluidos en un conjunto de las regiones de referencia cerca de la posición del indicador de presencia/ausencia de coefici9entes de transformación en la región de frecuencia objetivo. Así, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente, mientras se logra alta eficiencia de codificación.
De acuerdo con la configuración descrita arriba, además, en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloque decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo n incluye un coeficiente de transformación no cero, se lleva a cabo un proceso de decodificación, dado que un indicador de presencia/ausencia de coeficientes de transformación para cada uno de todos los coeficientes de transformación que pertenecen al sub-bloque objetivo indica que el coeficiente de transformación es 0. De esta manera, la cantidad de procesamiento para decodificar coeficientes de transformación puede ser reducida, en comparación con la configuración en la cual no se usa un indicador de presencia/ausencia de coeficientes de sub-bloques .
C9.
Un dispositivo de decodificación aritmética de acuerdo con un aspecto de la presente invención es un dispositivo de decodificación aritmética para decodificar datos codificados para coeficiente de transformación individual obtenido para cada componente de frecuencia al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, los datos codificados siendo obtenidos por codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, incluyendo medio de división de sub-bloques para dividir una región de frecuencia objetivo que corresponda a una región de unidad que será procesada en sub-bloques que tengan un tamaño predeterminado; medio de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques para decodificar, para cada uno de los sub-bloques obtenidos por el medio de división de sub-bloques a través de división, un indicador de presencia/ausencia de coeficientes de sub-bloques que indique si el sub-bloque incluye o no al menos un coeficiente de transformación no cero; medio de división para dividir la región de frecuencia objetivo en una pluralidad de sub-regiones usando por lo menos cualquiera de cada componente de frecuencia y cada sub-bloque como una unidad de división; medio de derivación de índices de contexto para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que sea un elemento de sintaxis que indique si un coeficiente de transformación incluido o en cada sub-región es 0; y medio de decodificación de sintaxis para decodificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, con base en un estado de probabilidad especificado por el índice de contexto asignado al índice de presencia/ausencia de coeficiente de transformación, en donde en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloques decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo incluye al menos un coeficiente de transformación no cero y en caso de que el sub-bloque objetivo esté incluido en una sub-región del lado de alta frecuencia en la región de frecuencia objetivo, el medio de derivación de índices de contexto deriva un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que pertenezca al sub-bloque objetivo, con base en el número de coeficientes de transformación no cero que sean coeficientes de transformación no cero decodificados incluidos en una región de referencia establecida cerca de la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo, el número de coeficientes de transformación no cero excluyendo un coeficiente de transformación no cero decodificado inmediatamente antes del indicador de presencia/ausencia de coeficientes de transformación en orden de procesamiento, y en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloque decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo no incluye un coeficiente de transformación no cero, se lleva a cabo un proceso de decodificación, dado que un indicador de presencia/ausencia de coeficientes de transformación para cada uno de todos los coeficientes de transformación que pertenecen al sub-bloque objetivo indican que el coeficiente de transformación es 0.
De acuerdo con el dispositivo de decodificación aritmética que tiene la configuración descrita arriba, en caso de que un sub-bloque objetivo esté incluido en una sub-región del lado de alta frecuencia en una región de frecuencia objetivo, el medio de derivación de índices de contexto deriva un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que pertenezca al sub-bloque objetivo, con base en el número de coeficientes de transformación no cero que sean coeficientes de transformación no cero decodificados incluidos en una región de referencia establecida cerca de la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo, el número de coeficientes de transformación no cero excluyendo un coeficiente de transformación no cero decodificado inmediatamente antes del indicador de presencia/ausencia de coeficientes de transformación en orden de procesamiento. Así, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente, mientras se logra alta eficiencia de codificación.
De acuerdo con la configuración descrita arriba, además, en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloque decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo no incluye un coeficiente de transformación no cero, se lleva a cabo un proceso de decodificación, dado que un indicador de presencia/ausencia de coeficientes de transformación para cada uno de todos los coeficientes de transformación que pertenecen al sub-bloque objetivo indica que el coeficiente de transformación es 0. Así, la cantidad de procesamiento para decodificar coeficientes de transformación puede ser reducida, en comparación con la configuración en la cual no se use un indicador de presencia/ausencia de coeficientes de sub-bloque .
CIO .
Más aún, en el dispositivo de decodificación aritmética, de preferencia, el medio de división se configura para dividir la región de frecuencia objetivo en al menos tres sub-regiones , y el medio de derivación de índices de contexto deriva un índice de contexto al referirse a NI coeficientes de transformación no cero decodificados (en donde NI es un número natural) para una primera sub-región y al referirse a N2 coeficientes de transformación no cero decodificados (en donde N2 es un número natural que satisface N2 < NI) para una segunda sub-región, y deriva un índice de contexto para una tercera sub-región con base en la posición de un indicador de presencia/ausencia de coeficientes de transformación.
De acuerdo con la configuración descrita arriba, una sub-región para la cual el número de coeficientes de transformación no cero decodificados que será derivada para poder referirse a un índice de contexto se establece para ser más pequeño, y una sub-región para la cual un índice de contexto se deriva de acuerdo con la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo son combinadas. De esta manera, es posible reducir la cantidad de procesamiento particularmente para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente, mientras se logra alta eficiencia de codificación.
Cll.
Más aún, en el dispositivo de decodificación aritmética, de preferencia, el medio de división se configura para dividir la región de frecuencia objetivo en al menos una sub-región del lado de baja frecuencia y la sub-región del lado de alta frecuencia de acuerdo con una relación de magnitud entre una suma de coordenada X y coordenada Y de un sub-bloque al cual pertenezca un indicador de presencia/ausencia de coeficientes de transformación, y un valor umbral THB determinado de acuerdo con un tamaño de la región de frecuencia objetivo, y el valor umbral THB tiene un valor menor que o igual a sz/4, en donde sz representa el número de componentes de frecuencia que se encuentran a lo largo de cada lado de la región de frecuencia objetivo.
De acuerdo con la configuración descrita arriba, la región de frecuencia objetivo puede dividirse adecuadamente para alta eficiencia de codificación y reducción en la cantidad de procesamiento.
C12.
Además, en el dispositivo de decodificación aritmética, de preferencia, el medio de división se configura para dividir la región de frecuencia objetivo en la primera sub-región y la segunda sub-región de acuerdo con una relación de magnitud entre una suma de coordenada X y coordenada Y de un sub-bloque al cual pertenezca un indicador de presencia/ausencia de coeficientes de transformación y un valor umbral THB determinado de acuerdo con un tamaño de la región de frecuencia objetivo, y se configura para dividir la región de frecuencia objetivo en la segunda sub- egión y la tercera sub-región de acuerdo con una relación de magnitud entre la suma de la coordenada X y la coordenada Y del sub-bloque al cual pertenezca el indicador de presencia/ausencia de coeficientes de transformación y un valor umbral THC determinado de acuerdo con el tamaño de la región de frecuencia objetivo, y el valor umbral THB tiene un valor menor que o igual a sz/4, y el valor umbral THC tiene un valor mayor que o igual a (sz/4) + 2, en donde sz representa el número de componentes de frecuencia que se encuentran a lo largo de cada lado de la región de frecuencia objetivo.
De acuerdo con la configuración descrita arriba, la región de frecuencia objetivo puede ser dividida adecuadamente para alta eficiencia de codificación y reducción en la cantidad de procesamiento.
C13.
Un dispositivo de decodificación de imágenes de acuerdo con un aspecto de la presente invención es un dispositivo de decodificación de imágenes que incluye el dispositivo de decodificación aritmética descrito arriba; medio de transformación de frecuencias inversas para llevar a cabo una transformación de frecuencia inversa en un coeficiente de transformación decodificado por el dispositivo de decodificación aritmética para generar una imagen residual; y medio de generación de imágenes decodificadas para generar una imagen decodificada al sumar juntas la imagen residual generada por el medio de transformación de frecuencia inversa y una imagen de predicción predicha a partir de una imagen decodificada generada.
De acuerdo con el dispositivo de decodificación de imágenes, es posible decodificar datos codificados con alta eficiencia de codificación mientras se reduce la cantidad de procesamiento para derivación de sintaxis.
C14.
Un dispositivo de codificación aritmética de acuerdo con un aspecto de la presente invención es un dispositivo de decodificación aritmética para codificar aritméticamente, para cada coeficiente de transformación individual obtenido para cada componente de frecuencia al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, varios elementos de sintaxis que representan el coeficiente de transformación individual para generar datos codificados, incluyendo medio de división de sub-bloques para dividir una región de frecuencia objetivo que corresponda a una región de unidad que será procesada en sub-bloques que tengan un tamaño predeterminado; y medio de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloques para codificar, para cada uno de los sub-bloques obtenidos por el medio de división de sub-bloques a través de división, un indicador de presencia/ausencia de coeficientes de sub-bloque que indique si el sub-bloque incluye o no al menos un coeficiente de transformación no cero; medio de división para dividir la región de frecuencia objetivo en una pluralidad de sub-regiones usando por lo menos cualquiera de cada componente de frecuencia y cada sub-bloque como una unidad de división; medios de derivación de índices de contexto para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que sea un elemento de sintaxis que indique si un coeficiente de trasformación incluido en cada sub-región es o no 0; el medio de codificación de sintaxis para codificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, con base en un estado de probabilidad especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, en donde en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloque codificado para un sub-bloque objetivo indique que el sub-bloque objetivo incluye al menos un coeficiente de transformación no cero y en caso de que el sub-bloque objetivo esté incluido en una sub-región del lado de alta frecuencia en la región de frecuencia objetivo, el medio de derivación de índices de contexto deriva un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que pertenezca al sub-bloque objetivo, de acuerdo con la posición del sub-bloque objetivo en la región de frecuencia objetivo, y en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloque codificado para un sub-bloque objetivo indique que el sub-bloque objetivo no incluye un coeficiente de transformación no cero, se lleva a cabo un proceso de codificación, dado que un indicador de presencia/ausencia de coeficientes de transformación para cada uno de todos los coeficientes de transformación que pertenecen al sub-bloque objetivo indica que el coeficiente de transformación es 0.
De acuerdo con el dispositivo de codificación aritmética que tiene la configuración descrita arriba, en caso de que un sub-bloque objetivo esté incluido en una sub-región del lado de alta frecuencia en una región de frecuencia objetivo, el medio de derivación de índices de contexto deriva un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que pertenezca al sub-bloque objetivo, de acuerdo con la posición del sub-bloque objetivo en la región de frecuencia objetivo. Así, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente, mientras se logra alta eficiencia de codificación.
De acuerdo con la configuración descrita arriba, además, en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloque decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo no incluye un coeficiente de transformación no cero, se lleva a cabo un proceso de codificación, dado que un indicador de presencia/ausencia de coeficientes de transformación para cada uno de todos los coeficientes de transformación que pertenecen al sub-bloque objetivo indica que el coeficiente de transformación es 0. De esta manera, la cantidad de procesamiento para codificar coeficientes de transformación puede ser reducida, en comparación con la configuración en la cual no se usa un indicador de presencia/ausencia de coeficientes de sub-bloque.
C15.
Un dispositivo de codificación de imágenes de acuerdo con un aspecto de la presente invención es un dispositivo de codificación de imágenes que incluye medio de generación de coeficientes de transformación para generar coeficientes de transformación al llevar a cabo una transformación de frecuencia en una imagen residual entre una imagen que será codificada y una imagen de predicción para cada región de unidad; y el dispositivo de codificación aritmética descrito arriba, en donde el dispositivo de codificación aritmética se configura para codificar aritméticamente varios elementos de sintaxis que representen coeficientes de transformación generados por el medio de generación de coeficientes de transformación para generar datos codificados.
De acuerdo con el dispositivo de codificación de imágenes, es posible generar datos codificados por alta eficiencia de codificación mientras se reduce la cantidad de procesamiento para derivación de sintaxis.
C16.
Además, una estructura de datos de datos codificados de acuerdo con un aspecto de la presente invención es una estructura de datos de datos codificados obtenidos por, para cada coeficiente de transformación individual obtenido para cada componente de frecuencia al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, incluyendo un indicador de presencia/ausencia de coeficientes de sub-bloque que indica, para cada uno de sub-bloques que tienen un tamaño predeterminado que se obtienen al dividir una región de frecuencia que corresponde a la región de unidad, si el sub-bloque incluye o no al menos un coeficiente de transformación no cero, en donde un dispositivo de decodificación configurado para decodificar los datos codificados está configurado para, en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloque decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo incluye al menos un coeficiente de transformación no cero y en caso de que el sub-bloque objetivo esté incluido en una sub-región del lado de alta frecuencia en la región de frecuencia objetivo, derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que pertenezca al sub-bloque objetivo, de acuerdo con la posición del sub-bloque objetivo en la región de frecuencia objetivo, y decodificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, sobre la base de un estado de probabilidades especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, y, en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloque decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo no incluye un coeficiente de transformación no cero, llevar a cabo un proceso de decodificación, dado que un indicador de presencia/ausencia de coeficientes de transformación para cada uno de todos los coeficientes de transformación que pertenecen al sub-bloque objetivo indica que el coeficiente de transformación es 0.
Los datos codificados que tienen la configuración descrita arriba incluyen un indicador de presencia/ausencia de coeficientes de sub-bloque que indica, para cada uno de sub-bloques que tienen un tamaño predeterminado que se obtienen al dividir una región de frecuencia que corresponde a la región de unidad, si el sub-bloque incluye o no por lo menos un coeficiente de transformación no cero, en donde un dispositivo de decodificación configuración para decodificar los datos codificados se configura para, en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloque decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo incluye al menos un coeficiente de transformación no cero y en caso de que el sub-bloque objetivo esté incluido en una sub-región del lado de alta frecuencia en la región de frecuencia objetivo, derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que pertenezca al sub-bloque objetivo, de acuerdo con la posición del sub-bloque objetivo en la región de frecuencia objetivo, y decodificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, con base en un estado de probabilidad especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, y, en caso de que un indicador de presencia/ausencia de coeficientes de sub-bloque decodificado para un sub-bloque objetivo indique que el sub-bloque objetivo no incluye un coeficiente de transformación no cero, llevar a cabo un proceso de decodificación, dado que un indicador de presencia/ausencia de coeficientes de transformación para cada uno de todos los coeficientes de transformación que pertenecen al sub-bloque objetivo indica que el coeficiente de transformación es 0. Así, es posible reducir la cantidad de procesamiento para decodificación mientras se mantiene alta eficiencia de codificación.
C17.
Más aún, un dispositivo de decodificación aritmética de acuerdo con un aspecto de la presente invención es un dispositivo de decodificación aritmética para decodificar datos codificados para cada coeficiente de transformación individual obtenido para cada componente de frecuencia al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, los datos codificados siendo obtenidos por codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, el dispositivo de decodificación aritmética se configura para decodificar un valor de cada coeficiente de transformación al usar selectivamente un modo regular en el cual MI elementos de sintaxis (en donde MI es un número natural) son decodificados para decodificar un valor de cada coeficiente de transformación o un modo simplificado en el cual M2 elementos de sintaxis (en donde M2 es un número natural que satisface M2 < MI) son decodificados para decodificar un valor de cada coeficiente de transformación.
De acuerdo con el dispositivo de decodificación aritmética, un número de elementos de sintaxis más pequeño que el modo regular se usan en modo simplificado. Así, se puede mejorar la emisión del proceso de decodificación.
C18.
De preferencia, el dispositivo de decodificación aritmética incluye medio de decodificación de sintaxis para decodificar cada elemento de sintaxis usando decodificación aritmética de decodificación aritmética que se basa en un estado de probabilidad especificado por un contexto asignado a cada elemento de sintaxis y decodificación aritmética que se basa en un estado de probabilidad fijo sin usar un contexto, y el medio de decodificación de sintaxis decodifica los MI elementos de sintaxis usando un contexto en el modo regular, y decodifica los M2 elementos de sintaxis usando un contexto en el modo simplificado.
De acuerdo con el dispositivo de decodificación aritmética, en modo simplificado, se usan contextos para un número de elementos de sintaxis más pequeño que en modo regular. Así, se puede omitir un proceso necesario para derivación de contextos y actualización de contextos, dando como resultado una mejora en la emisión del proceso de decodificación.
C19.
Además, de preferencia, el dispositivo de decodificación aritmética incluye medio de división de sub-bloques para dividir una región de frecuencia objetivo que corresponda a una región de unidad que será procesada en sub-bloques que tengan un tamaño predeterminado, medio de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques para decodificar, para cada uno de los sub-bloques obtenidos por el medio de división de sub-bloques a través de división, un indicador de presencia/ausencia de coeficientes de sub-bloque que indique si el sub-bloque incluye o no al menos un coeficiente de transformación no cero, el indicador de presencia/ausencia de coeficientes de sub-bloque y un indicador de presencia/ausencia de coeficientes de transformación que indican si un coeficiente de transformación es o no 0 son decodificados usando un contexto en modo regular, y el indicador de presencia/ausencia de coeficientes de sub-bloque es decodificado usando un contexto y el indicador de presencia/ausencia de coeficientes de transformación es decodificado sin usar un contexto en modo simplificado.
De acuerdo con el dispositivo de decodificación aritmética, un contexto se usa para el indicador de presencia/ausencia de coeficientes de sub-bloque significant_coeffgroup_flag, el cual es un elemento de sintaxis con baja frecuencia de ocurrencia y para el cual es importante mantener la cantidad de codificación baja, no obstante de modo regular a modo simplificado. De esta manera, es posible mejorar la emisión mientras se mantiene alta eficiencia de codificación.
C20.
Además, de preferencia, en modo regular, el dispositivo de decodificación aritmética decodifica un indicador de presencia/ausencia de coeficientes de transformación significant_coeff_flag que indica si un coeficiente de transformación es o no 0, un elemento de sintaxis coeff_abs_greaterl_flag que indica si el valor absoluto de un coeficiente de transformación es mayor que 1, un elemento de sintaxis coe f_abs_greater2_flag que indica si el valor absoluto de un coeficiente de transformación es más grande que 2, un elemento de sintaxis coeff_abs_minus3 que indica un valor obtenido al restar 3 del valor absoluto de un coeficiente de transformación, y un elemento de sintaxis coeff_sign que indica el signo de un coeficiente de transformación, y el modo simplificado, el dispositivo de decodificación aritmética decodifica el indicador de presencia/ausencia de coeficientes de transformación significant_coeff_flag, un elemento de sintaxis coeff_abs_minusl que indica un valor obtenido al restar 1 del valor absoluto de un coeficiente de transformación, y un elemento de sintaxis coeff_sign que indica el signo de un coeficiente de transformación.
De acuerdo con el dispositivo de decodificación aritmética, un número de elementos de sintaxis más pequeño que en modo regular se usa en el modo simplificado. De esta manera, se puede mejorar la emisión del proceso de decodificación .
C21.
Más aún, de preferencia, en modo regular, el dispositivo de decodificación aritmética decodifica el indicador de presencia/ausencia de coeficientes de transformación significant_coeff_flag, el elemento de sintaxis coeff_abs_greaterl_flag indica si el valor absoluto de un coeficiente de transformación es o no más grande que 1, y el elemento de sintaxis coeff_abs_greater2 indica si el valor absoluto de un coeficiente de transformación es o no más grande que 2 usando un contexto, y en modo simplificado, el dispositivo de decodificación aritmética decodifica el indicador de presencia/ausencia de coeficientes de transformación significant_coeff_flag, el elemento de sintaxis coeff_abs_minusl que indica un valor obtenido al restar 1 del valor absoluto de un coeficiente de transformación, y el elemento de sintaxis coeff_sign que indique el signo de un coeficiente de transformación sin usar un contexto.
De acuerdo con el dispositivo de decodificación aritmética, en modo simplificado, un elemento de sintaxis que constituye un valor de un coeficiente de transformación es decodificado sin usar un contexto. Así, se puede mejorar la emisión del proceso de decodificación.
C22.
Además, de preferencia, en modo regular, el dispositivo de decodificación aritmética decodifica el indicador de presencia/ausencia de coeficientes de transformación significant_coeff_flag, el elemento de sintaxis coeff_abs_greaterl_flag indica si el valor absoluto de un coeficiente de transformación es mayor que 1, y el elemento de sintaxis coeff_abs_greater2_flag indica si el valor absoluto de un coeficiente de transformación es más grande que 2 usando un contexto, y en modo simplificado el dispositivo de decodificación aritmética decodifica el elemento de sintaxis coeff_abs_minusl que indica un valor obtenido al restar 1 del valor absoluto de un coeficiente de transformación y el elemento de sintaxis coeff_sign indica el signo de un coeficiente de transformación sin usar un contexto .
De acuerdo con el dispositivo de decodificación aritmética, en modo simplificado, la mayoría de los elementos de sintaxis que constituyen un valor de un coeficiente de transformación son decodificados sin usar un contexto. Así, se puede mejorar la emisión del proceso de decodificación.
C23.
Más aún, de preferencia, en modo simplificado, el dispositivo de decodificación aritmética decodifica sucesivamente el elemento de sintaxis coeff_abs_minusl que indica un valor obtenido al restar 1 del valor absoluto de un coeficiente de transformación y el elemento de sintaxis coeff_sign que indica el signo de un coeficiente de transformación.
De acuerdo con el dispositivo de decodificación aritmética, en modo simplificado, elementos de sintaxis decodificados sin usar un contexto son puestos sucesivamente. Así, se puede mejorar la emisión del proceso de decodificación.
C24.
Además, de preferencia, en modo regular, el dispositivo de decodificación aritmética decodifica un indicador de presencia/ausencia de coeficientes de transformación significant_coeff_flag que indica si un coeficiente de transformación es o no 0, un elemento de sintaxis coeff_abs_greaterl_flag que indica si el valor absoluto de un coeficiente de transformación es o no mayor que 1, un elemento de sintaxis coeff_abs_greater2_flag que indica si el valor absoluto de un coeficiente de transformación es o no mayor que 2, un elemento de sintaxis coeff_abs_minus3 que indica un valor obtenido al restar 3 del valor absoluto de un coeficiente de transformación, y un elemento de sintaxis coeff_sign que indique el signo de un coeficiente de transformación, y en modo simplificado, el dispositivo de decodificación aritmética decodifica un elemento de sintaxis coeff_abs_minusl que indica un valor obtenido al restar 1 del valor absoluto de un coeficiente de transformación, el valor absoluto de un coeficiente de transformación coeff_abs, y un elemento de sintaxis coeff_sign que indique el signo de un coeficiente de transformación .
De acuerdo con el dispositivo de decodificación aritmética, un número de elementos de sintaxis más pequeño que en modo regular es usado en modo simplificado. Así, se puede mejorar la emisión del proceso de decodificación.
C25.
Además, de preferencia, en modo regular, el dispositivo de decodificación aritmética decodifica el indicador de presencia/ausencia de coeficientes de transformación significant_coeff_flag, el elemento de sintaxis coeff_abs_greaterl_flag indica si el valor absoluto de un coeficiente de transformación es o no mayor que 1, y el elemento de sintaxis coeff_abs_greater2_flag indica si el valor absoluto de un coeficiente de transformación es o no más grande que 2 usando un contexto, y en modo simplificado, el dispositivo de decodificación aritmética decodifica el elemento de sintaxis coeff_abs_minusl que indica un valor obtenido al restar 1 del valor absoluto de un coeficiente de transformación y un elemento de sintaxis coeff_sign que indica el signo de un coeficiente de transformación sin usar un contexto.
De acuerdo con el dispositivo de decodificación aritmética, en modo simplificado, la mayoría de los elementos de sintaxis que constituyen un valor de un coeficiente de transformación son decodificados sin usar un contexto. Así, se puede mejorar la emisión del proceso de decodificación.
C26.
Además, de preferencia, de acuerdo con comparación de magnitud entre la suma de la coordenada X y la coordenada Y de la última posición de coeficientes de transformación y un valor umbral predeterminado, el dispositivo de decodificación aritmética selecciona el modo simplificado si la suma de la coordenada X y la coordenada Y de la última posición es más grande, y de otra manera selecciona el modo regular .
De acuerdo con el dispositivo de decodificación aritmética, modo simplificado se usa sólo en caso de que se determine que procesamiento con alta emisión es necesario. Así, es posible mejorar la emisión del proceso de decodificación mientras se mantiene alta eficiencia de codificación .
C27.
Más aún, de preferencia, si la suma de la coordenada X y la coordenada Y para la última posición es más grande, el dispositivo de decodificación aritmética reduce el número de elementos de sintaxis que serán decodificados usando un contexto, cuando se compara con la otra manera.
De acuerdo con el dispositivo de decodificación aritmética, se puede determinar adecuadamente la necesidad de procesamiento de alta emisión. Así, debido a modo simplificado, es posible mejorar la emisión del proceso de decodificación mientras se mantiene alta eficiencia de codificación .
C28.
Además, de preferencia, el dispositivo de decodificación aritmética usa diferentes valores como un valor umbral cuando regiones de frecuencia tienen un ancho y altura iguales y cuando regiones de frecuencia tienen diferentes anchos y alturas.
De acuerdo con el dispositivo de decodificación aritmética, la necesidad para procesamiento de alta emisión puede determinarse adecuadamente también cuando regiones de frecuencia tengan diferentes anchos y alturas. Así, debido al modo simplificado, es posible mejorar la emisión del proceso de decodificación mientras se mantiene alta eficiencia de codificación.
C29.
Además, de preferencia, el dispositivo de decodificación aritmética incluye medio de división para dividir la región de frecuencia objetivo en una pluralidad de sub-regiones usando al menos cualquiera de cada componente de frecuencia y cada sub-bloque como una unidad de división, y medio de derivación de índices de contexto para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que sea un elemento de sintaxis que indique si un coeficiente de transformación incluido en cada sub-región es o no 0, en donde en caso de que el número de indicadores de presencia/ausencia de coeficientes de transformación para un sub-bloque dado sea mayor que o igual a un valor predeterminado, un indicador de presencia/ausencia de coeficientes de transformación para el sub-bloque que será procesado subsecuentemente al sub-bloque dado se decodifica sin un contexto.
De acuerdo con el dispositivo de decodificación aritmética, modo simplificado se usa sólo cuando se determina que existe la necesidad de procesamiento de alta emisión. Así, es posible mejorar la emisión del proceso de decodificación mientras se mantiene alta eficiencia de codificación.
C30.
Además, un dispositivo de codificación aritmética de acuerdo con un aspecto de la presente invención es un dispositivo de codificación aritmética para codificar aritméticamente, para cada coeficiente de transformación individual obtenido para cada componente de frecuencia al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, varios elementos de sintaxis que representan el coeficiente de transformación individual para generar datos codificados, el dispositivo de codificación aritmética es configurado para codificar un valor de cada coeficiente de transformación al usar selectivamente un modo regular en el cual MI elementos de sintaxis (en donde MI es un número natural) son usados para codificar un valor de cada coeficiente de transformación o un modo simplificado en el cual M2 elementos de sintaxis (en donde M2 es un número natural que satisface M2 < MI) se usan para codificar un valor de cada coeficiente de transformación .
De acuerdo con el dispositivo de codificación aritmética, un número de elementos de sintaxis más pequeño que en modo regular se usa en el modo simplificado. Así, se puede mejorar la emisión del proceso de codificación y decodificación.
C31.
Un dispositivo de decodificación aritmética de acuerdo con un aspecto de la presente invenciones un dispositivo de decodificación aritmética para decodificar datos codificados para cada coeficiente de transformación individual obtenido al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, los datos codificados siendo obtenidos por codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, incluyendo medio de división para dividir una región de frecuencia objetivo que corresponda a una región de unidad que será procesada en una pluralidad de sub-regiones ; medio de derivación de índices de contexto para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que sea un elemento de sintaxis que indique si un coeficiente de transformación incluido en cada sub-región es o no 0; y medio de decodificación de sintaxis para decodificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, con base en un estado de probabilidad especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, en donde el medio de derivación de índices de contexto deriva un índice de contexto que será asignado a un indicador de presencia/ausencia de coeficientes de transformación que pertenece a cada sub-región del lado de alta frecuencia entre una pluralidad de sub-regiones , de acuerdo con la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia obj etivo .
De acuerdo con el dispositivo de decodificación aritmética que tiene la configuración descrita arriba, un índice de contexto que será asignado a un indicador de presencia/ausencia de coeficientes de transformación que pertenece a una sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones en la región de frecuencia objetivo se deriva de acuerdo con la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo. Así, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente, mientras se logra alta eficiencia de codificación.
C32.
Más aún, un dispositivo de decodificación aritmética de acuerdo con un aspecto de la presente invención es un dispositivo de decodificación aritmética para decodificar datos codificados para cada coeficiente de transformación individual obtenido al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, los datos codificados siendo obtenidos por codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, incluyendo un medio de división para dividir una región de frecuencia objetivo que corresponda a una región de unidad que será procesada en una pluralidad de sub-regiones ; medio de derivación de índices de contexto para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que sea un elemento de sintaxis que indique si un coeficiente de transformación incluido en cada sub-región es o no 0; y medio de decodificación de sintaxis para decodificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, con base en un estado de probabilidad especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, en donde el medio de derivación de índices de contexto se configura para derivar un índice de contexto que será asignado a un indicador de presencia/ausencia de coeficientes de transformación, con base en el número de coeficientes de transformación no cero decodificados incluidos en una región de referencia establecida cerca de la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo, y una región de referencia establecida en una sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones sea más pequeña que una región de referencia establecida en una sub-región del lado de baja frecuencia entre la pluralidad de sub-regiones .
De acuerdo con el dispositivo de decodificación aritmética que tiene la configuración descrita arriba, un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación se deriva con base en el número de coeficientes de transformación no cero decodificados incluidos en un una región de referencia establecida cerca de la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo. En la pluralidad de sub-regiones descritas arriba, una región de referencia establecida en una sub-región del lado de alta frecuencia es más pequeña que una región de referencia establecida en una sub-región del lado de baja frecuencia. Así, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente en la cual una región de referencia establecida en una sub-región del lado de baja frecuencia y una región de referencia establecida en una sub-región del lado de alta frecuencia tienen el mismo tamaño, y es también posible lograr alta eficiencia de codificación.
C33.
Además, de preferencia, el medio de derivación de índices de contexto se configura para derivar un índice de contexto al sumar juntos un punto de partida predeterminado determinado para cada una de las sub-regiones y una variable determinada para cada una de las sub-regiones, y se configura para establecer puntos de partida para una pluralidad de sub-regiones para cada una de las cuales la variable se derive usando un método diferente a un valor igual de tal manera que un contexto común se use para la pluralidad de sub-regiones para cada una de las cuales se derive un índice de contexto usando un método diferente.
De acuerdo con el dispositivo de decodificación aritmética que tiene la configuración descrita arriba, en una pluralidad de sub-regiones para cada una de las cuales se usa un método de derivación diferente, los puntos de partida determinados para sub-regiones respectivas se hacen iguales, haciendo entonces posible reducir la cantidad de procesamiento, sin incrementar el número de contextos, mientras se logra alta eficiencia de codificación.
C34.
Además, de preferencia, el medio de división se configura para clasificar la región de frecuencia objetivo en por lo menos tres sub-regiones de acuerdo con una posición de un indicador de presencia/ausencia de coeficientes de transformación que será procesado, y el medio de derivación de índices de contexto deriva un índice de contexto al referirse a NI coeficientes de transformación no cero decodificados (en donde NI es un número natural) para una primera sub-región y al referirse a N2 coeficientes de transformación no cero decodificados (en donde N2 es un número natural que satisface N2 < NI) para una segunda sub-región, y deriva un índice de contexto para una tercera sub-región de acuerdo con una posición del indicador de presencia/ausencia de coeficientes de transformación.
De acuerdo con el dispositivo de decodificación aritmética que tiene la configuración descrita arriba, una sub-región para la cual el número de coeficientes de transformación no cero decodificados que serán derivados para poder referirse a un índice de contexto se establece para ser más pequeña, y una sub-región para la cual un índice de contexto se deriva sobre la base de la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo son combinadas. Así, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente, mientras se logra alta eficiencia de codificación.
C35.
Más aún, de preferencia, en el dispositivo de decodificación aritmética, el medio de derivación de índices de contexto deriva un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que se encuentre a lo largo de una secuencia de escaneo actual en una sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones , además con base en el número de coeficientes de transformación no cero que se encuentren a lo largo de una secuencia de escaneo precedente .
De acuerdo con la configuración descrita arriba, el medio de derivación de índices de contexto se configura para derivar un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que se encuentre a lo largo de la secuencia de escaneo actual en una sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones descritas arriba, con base en el número de coeficientes de transformación no cero que se encuentren a lo largo de la secuencia de escaneo precedente y el número de coeficientes de transformación no cero decodificados incluidos en una región de referencia establecida cerca de la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo. Una región de referencia establecida en una sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones es más pequeña que una región de referencia establecida en una sub-región del lado de baja frecuencia entre la pluralidad de sub-regiones descritas arriba. Así, es posible reducir de manera más efectiva la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, que una configuración existente, y también es posible lograr alta eficiencia de codificación.
C36.
Además, un dispositivo de decodificación aritmética de acuerdo con un aspecto de la presente invención es un dispositivo de decodificación aritmética para decodificar datos codificados para cada coeficiente de transformación individual obtenido al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, los datos codificados siendo obtenidos por codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, incluyendo medio de división para dividir una región de frecuencia objetivo que corresponda a una región de unidad que será procesada en una pluralidad de sub-regiones ; medio de derivación de índices de contexto para derivar secuencialmente , a lo largo de cada secuencia de escaneo, un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que sea un elemento de sintaxis que indique si un coeficiente de transformación incluido en cada sub-región es o no 0; y medio de decodificación de sintaxis para decodificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, con base en un estado de probabilidad especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, en donde el medio de derivación de índices de contexto deriva un índice de contexto que será asignado a cada indicador de presencia/ausencia de coeficientes de transformación que se encuentre a lo largo de una secuencia de escaneo actual en una sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones, con base en el número de coeficientes de transformación no cero que se encuentren a lo largo de una secuencia de escaneo precedente.
De acuerdo con el dispositivo de decodificación aritmética que tiene la configuración descrita anteriormente, un índice de contexto asignado a cada indicador de presencia/ausencia de coeficientes de transformación que se extiende a lo largo de la secuencia de escaneo actual en una sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones se deriva con base del número de coeficientes de transformación no cero que se extienden a lo largo de una secuencia de escaneo anterior. Si el número de coeficientes de transformación no cero que se extienden a lo largo de una secuencia de escaneo anterior se contabiliza una vez, el número de coeficientes de transformación no cero se puede utilizar normalmente para derivar un índice de contexto que se asignará a cada indicador de presencia/ausencia de coeficientes de transformación que se encuentre a lo largo de la secuencia de escaneo actual. Por lo tanto, es posible reducir la cantidad de procesamiento para un proceso de derivación de índice de contextos en el lado de alta frecuencia, en comparación con una configuración existente la cual requiere derivación separada de los índices de contexto para transformar indicadores de presencia/ausencia de coeficientes de transformación, y es también es posible lograr una alta eficiencia de codificación.
C37.
Además, un dispositivo de decodificación aritmética de acuerdo con un aspecto de la presente invención es un dispositivo de decodificación aritmética para decodificar datos codificados para cada coeficiente de transformación individual obtenido al llevar a cabo una transformación de frecuencia en la imagen objetivo para cada región de unidad, los datos codificados se obtienen por la codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, incluyendo medio de división para dividir una región de frecuencia objetivo correspondiente en una región de unidad que será procesada en una pluralidad de sub-regiones ; medio de derivación de índices de contexto para derivar un índice de contexto que se asignará a cada indicador de presencia/ausencia de coeficientes de transformación que es un elemento de sintaxis que indica si un coeficiente de transformación incluido en cada sub-región es o no 0; y medio de decodificación de sintaxis para decodificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, sobre la base de un estado de probabilidad especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, en donde el medio de derivación de índices de contexto está configurado para derivar un índice de contexto para ser asignado a un indicador de presencia/ausencia de coeficientes de transformación, sobre la base del número de coeficientes de transformación no cero decodificados incluidos en una región de referencia establecida cerca de la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo, y el número de coeficientes de transformación decodificados incluidos en la región de referencia es menor o igual a 4.
De acuerdo con el dispositivo de decodificación aritmética que tiene la configuración descrita anteriormente, un índice de contexto que se asignará a cada indicador de presencia/ausencia de coeficientes de transformación se deriva sobre la base del número de coeficientes de transformación no cero decodificados incluidos en una región de referencia establecida cerca de la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo. El número de coeficientes de transformación decodificados incluidos en la región de referencia es menor o igual a 4. Por lo tanto, sólo se requiere referirse a un número de coeficientes de transformación decodificados menor que en una configuración existente. De acuerdo con la configuración descrita anteriormente, por lo tanto, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente, y también es posible lograr una alta eficiencia de codificación.
C38.
Además, un dispositivo de decodificación aritmética de acuerdo con un aspecto de la presente invención es un dispositivo de decodificación aritmética para decodificar datos codificados para cada coeficiente de transformación individual obtenido al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, los datos codificados siendo obtenidos por codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, incluyendo medio de división para dividir una región de frecuencia objetivo correspondiente a una región de unidad a ser procesada en una pluralidad de sub-regiones ; medio de asignación de índices de contexto para asignar un índice de contexto diferente a cada sub-región; y medio de decodificación de sintaxis para decodificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que es un elemento de sintaxis que indica si un coeficiente de transformación incluido en cada sub-región es o no 0, sobre la base de un estado de probabilidad especificado por un índice de contexto asignado a una sub-región a la que pertenece el indicador de presencia/ausencia de coeficientes de transformación, en donde una sub-región del lado de baja frecuencia entre la pluralidad de sub-regiones es más pequeña que una sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones.
De acuerdo con el dispositivo de decodificación aritmética que tiene la configuración descrita anteriormente, en la pluralidad de sub-regiones anteriores, una sub-región del lado de baja frecuencia es menor que una sub-región del lado de alta frecuencia. Por lo tanto, índices de contexto más finos se pueden asignar a las regiones del lado de baja frecuencia. De acuerdo con la configuración descrita anteriormente, por lo tanto, es posible decodificar de manera eficiente un elemento de sintaxis para el lado de baja frecuencia, lo que resulta en un aumento en la eficiencia de codificación.
C39.
Además, preferiblemente, el medio de división está configurado para dividir la región de frecuencia objetivo en una pluralidad de sub-regiones de conformidad con SUM que representa una suma de coordenada X y coordenada Y de un indicador de presencia/ausencia de coeficientes de transformación, el medio de división divide la región de frecuencia objetivo en al menos una sub-región del lado de baja frecuencia y la sub-región del lado de alta frecuencia de acuerdo con una relación de magnitud entre la SUM y un primer valor umbral TH2 determinado de acuerdo con un tamaño sz de la región de frecuencia objetivo, y el primer valor umbral TH2 es mayor que o igual a sz.
De acuerdo con el dispositivo de decodificación aritmética que tiene la configuración descrita anteriormente, también en caso de que el índice de contexto que se asignará a un indicador de presencia/ausencia de coeficientes de transformación en una región de frecuencia objetivo se derive sobre la base de la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente, mientras se logra una alta eficiencia de codificación.
C40.
Además, preferiblemente, el medio de división está configurado para dividir la región de frecuencia objetivo en una pluralidad de sub-regiones de conformidad con SU que representa la suma de coordenada X y coordenada Y de un indicador de presencia/ausencia de coeficientes de transformación, el medio de división divide la región de frecuencia objetivo en al menos la sub-región del lado de baja frecuencia y la sub-región de alta del lado frecuencia de acuerdo con una relación de magnitud entre la SUM y un primer valor umbral TH2 determinado de acuerdo con un tamaño sz de la región de frecuencia objetivo, y el primer valor umbral TH2 es menor o igual a SZ-2.
De acuerdo con el dispositivo de decodificación aritmética que tiene la configuración descrita anteriormente, también en un caso en el que una sub-región para la que el número de coeficientes de transformación no cero decodificados a ser derivados a fin de hacer referencia a un índice de contexto se establezca para que sea más pequeño, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente, mientras se logra una alta eficiencia de codificación.
C41.
Además, preferiblemente, el medio de división está configurado para dividir la región de frecuencia objetivo en una pluralidad de sub-regiones de conformidad con SUM que representa la suma de coordenada X y coordenada Y de un indicador de presencia/ausencia de coeficientes de transformación, el medio de división divide la región de frecuencia objetivo en la primera sub-región y la segunda sub-región de acuerdo con una relación de magnitud entre la SUM y un primer valor umbral TH2 determinado de acuerdo con un tamaño sz de la región frecuencia objetivo, y divide la región de frecuencia objetivo en la segunda sub-región y la tercera sub-región de acuerdo con una relación de magnitud entre la SUM y un segundo valor umbral TH3 determinado de acuerdo con el tamaño sz de la región de frecuencia objetivo, y el primer valor umbral TH2 es menor o igual a SZ-2 y el segundo valor umbral TH3 es mayor que o igual a S .
De acuerdo con el dispositivo de decodificación aritmética que tiene la configuración descrita anteriormente, también en un caso en el que una sub-región para la que el número de coeficientes de transformación no cero decodificado a ser derivados a fin de hacer referencia a un índice de contexto se establezca para que sea más pequeño, y una sub-región para la que un índice de contexto se derive de conformidad con la posición del indicador de presencia/ausencia de coeficientes de transformación se combinen, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente, mientras se logra una alta eficiencia de codificación.
C42.
Además, un dispositivo de decodificación de imágenes según un aspecto de la presente invención es un dispositivo de decodificación de imágenes que incluye el dispositivo de decodificación aritmética descrito anteriormente; medio de transformación de frecuencia inversa para realizar una transformación de frecuencia inversa en un coeficiente de transformación decodificado por el dispositivo de decodificación aritmética para generar una imagen residual; y medi de generación de imágenes decodificadas para generar una imagen decodificada mediante la suma de la imagen residual generada por el medio de transformación de frecuencia inversa y una imagen de predicción predicha a partir de una imagen decodificada generada.
De acuerdo con el dispositivo de decodificación de imágenes, es posible decodificar los datos codificados con una alta eficiencia de codificación, mientras se reduce la cantidad de procesamiento para la derivación de sintaxis.
C43.
Además, un dispositivo de codificación aritmética según un aspecto de la presente invención es un dispositivo de codificación aritmética para codificación aritmética, para cada coeficiente de transformación individual obtenido al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, varios elementos de sintaxis que representan el coeficiente de transformación individual para generar datos codificados, incluyendo medio de división para dividir una región de frecuencia objetivo correspondiente a una región de unidad a ser procesada en una pluralidad de sub-regiones ; medio de derivación de índices de contexto para derivar un índice de contexto que se asignará a cada indicador de presencia/ausencia de coeficientes de transformación que es un elemento de sintaxis que indica si un coeficiente de transformación incluido en cada sub-región es 0; y medio de codificación para codificar aritméticamente un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a cada sub-región, sobre la base de un estado de probabilidad especificado por el índice de contexto asignado al indicador de presencia/ausencia de coeficientes de transformación, en donde el medio de derivación de índices de contexto deriva un índice de contexto que se asignará a un indicador de presencia/ausencia de coeficientes de transformación que pertenece a una sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones , de acuerdo con la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo.
De acuerdo con el dispositivo de codificación aritmética que tiene la configuración descrita anteriormente, un índice de contexto que se asignará a un indicador de presencia/ausencia de coeficientes de transformación que pertenezca a una sub-región del lado de alta frecuencia entre la pluralidad de sub-regiones se deriva de acuerdo con la posición del indicador de presencia/ausencia de coeficientes de transformación en la región de frecuencia objetivo. Por lo tanto, es posible reducir la cantidad de procesamiento para un proceso de derivación de índices de contexto en el lado de alta frecuencia, en comparación con una configuración existente .
C44.
Además, un dispositivo de codificación de imágenes de acuerdo con un aspecto de la presente invención es un dispositivo de codificación de imágenes que incluye medio de generación de coeficientes de transformación para generar coeficientes de transformación al llevar a cabo una transformación de frecuencia en una imagen residual entre una imagen a codificar y una imagen de predicción para cada región de unidad; y el dispositivo de codificación aritmética descrito anteriormente, en donde el dispositivo de codificación aritmética está configurado para codificar aritméticamente varios elementos de sintaxis que representen coeficientes de transformación generados por el medio de generación de coeficientes de transformación para generar datos codificados.
De acuerdo con el dispositivo de decodificación de imágenes, es posible generar datos codificados con una alta eficiencia de codificación, mientras se reduce la cantidad de procesamiento para la derivación de sintaxis.
C45.
Además, una estructura de datos de datos codificados de acuerdo con un aspecto de la presente invención es una estructura de datos de datos codificados obtenidos por, para cada coeficiente de transformación individual obtenido al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, codificación aritmética de varios elementos de sintaxis que representan el coeficiente de transformación individual, incluyendo un indicador de restricción que indica si se decodifica o no un coeficiente de transformación del lado de alta frecuencia en cada región de frecuencia objetivo correspondiente a una región de unidad, en donde un dispositivo de decodificación aritmética configurado para decodificar los datos codificados no decodifica el coeficiente de transformación del lado de alta frecuencia en caso de que el indicador de restricción indique que el coeficiente de transformación del lado de alta frecuencia no sea decodificado .
Los datos codificados que tienen la configuración descrita anteriormente incluyen un indicador de restricción que indica si se decodifica o no un coeficiente de transformación del lado de alta frecuencia en cada región de frecuencia objetivo correspondiente a una región de unidad. Si el indicador de restricción indica que un coeficiente de transformación del lado de alta frecuencia no se decodifica, un dispositivo de decodificación aritmética configurado para decodificar los datos codificados puede omitir el proceso de decodificación para el coeficiente de transformación del lado de alta frecuencia. De acuerdo con ello, la cantidad de procesamiento decodificar coeficientes de transformación se puede reducir.
La presente invención no se limita a las modalidades descritas anteriormente, y una variedad de modificaciones se puede hacer dentro de un alcance definido por las reivindicaciones. Las modalidades alcanzables combinando apropiadamente los medios técnicos revelados en diferentes modalidades también caen dentro del alcance técnico de la presente invención.
Aplicabilidad industrial La presente invención puede ser adecuada para usarse en dispositivos de decodificación aritmética para decodificar datos codificados que se hayan codificado aritméticamente, y dispositivos de codificación aritmética para generar datos codificados que se hayan codificado aritméticamente .
Lista de signos de referencia 1 dispositivo de decodificación de video (dispositivo de decodificación de imágenes) 11 decodificador de códigos de longitud variable 111 decodificador de información residual cuantificada (dispositivo de decodificación aritmética) 120 unidad de decodificación de coeficientes de transformación 124 unidad de decodificación de indicadores de presencia/ausencia de coeficientes 124a unidad de clasificación de frecuencias (medio de división, medio de derivación de índices de contexto) 124b unidad de derivación de contextos de posición de baja frecuencia (medio de derivación de índices de contexto) 124c, 124g unidad de derivación de contextos de referencia adyacentes (medio de derivación de índices de contexto) 124d unidad de derivación de contextos de posición de alta frecuencia (medios de derivación de índices de contexto) XI unidad de decodi icación de indicadores de presencia/ausencia de coeficientes de sub-bloques (medio de decodificación de indicadores de presencia/ausencia de coeficientes de sub-bloques) 130 unidad de decodificación de códigos aritméticos 131 unidad de grabación/actualización de contextos 132 unidad de decodificación de bits (medio de decodificación de sintaxis) 2 dispositivo de codificación de video (dispositivo de codificación de imágenes) 27 codificador de códigos de longitud variable 271 codificador de información residual cuantificada (dispositivo de codificación aritmética) 220 unidad de codificación de coeficientes de transformación 224 unidad de codificación de indicadores de presencia/ausencia de coeficientes 224a unidad de clasificación de frecuencias (medio de división, medio de codificación de sintaxis) 224b unidad de derivación de contextos de posición de baja frecuencia 224c unidad de derivación de contextos de referencia adyacentes 224d unidad de derivación de contextos de posición de alta frecuencia (medio de derivación de índices de contexto) X2 unidad de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloques (medio de codificación de indicadores de presencia/ausencia de coeficientes de sub-bloques) 230 unidad de codificación de códigos aritméticos 231 unidad de de grabación/actualización de contextos 232 unidad de codificación de bits (medio de codificación de sintaxis) 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 presente invención, es el que resulta claro de la presente descripción de la invención.

Claims (9)

REIVINDICACIONES Habiéndose descrito la invención como antecede, se reclama como propiedad lo contenido en las siguientes reivindicaciones :
1. Un dispositivo de decodificación aritmética para decodificar aritméticamente datos codificados de un coeficiente de transformación obtenido al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, caracterizado porque comprende: medio de decodificación de sintaxis para decodificar cada uno de al menos un primer elemento de sintaxis y un segundo elemento de sintaxis que indican el coeficiente de transformación usando decodificación aritmética con un contexto o decodificación aritmética sin un contexto, en donde el medio de decodificación de sintaxis se configura para realizar decodificación que al menos incluye no decodificar el primer elemento de sintaxis y decodificar el segundo elemento de sintaxis, y decodificar el primer elemento de sintaxis y el segundo elemento de sintaxis.
2. El dispositivo de decodificación aritmética de conformidad con la reivindicación 1, caracterizado porque el primer elemento de sintaxis es un elemento de sintaxis en relación a si el valor absoluto del coeficiente de transformación es o no más grande que un valor predeterminado, y el segundo elemento de sintaxis es un elemento de sintaxis en relación con un valor obtenido restando un valor predeterminado a partir del valor absoluto del coeficiente de transformación.
3. El dispositivo de decodificación aritmética de conformidad con la reivindicación 2, caracterizado porque el primer elemento de sintaxis incluye al menos un elemento de sintaxis en relación a si el valor absoluto del coeficiente de transformación es o no más grande que 1.
4. El dispositivo de decodificación aritmética de conformidad con la reivindicación 3, caracterizado porque el primer elemento de sintaxis incluye un elemento de sintaxis en relación a si el valor absoluto del coeficiente de transformación es o no más grande que 2.
5. El dispositivo de decodificación aritmética de conformidad con la reivindicación 1, caracterizado porque el segundo elemento de sintaxis se decodifica usando decodificación aritmética sin un contexto.
6. El dispositivo de decodificación aritmética de conformidad con la reivindicación 1, caracterizado porque el primer elemento de sintaxis se decodifica usando decodificación aritmética con un contexto.
7. Un dispositivo de decodificación de imágenes caracterizado porque comprende: el dispositivo de decodificación aritmética de conformidad con cualquiera de las reivindicaciones 1 a 6; medio de transformación de frecuencia inversa para realizar una transformación de frecuencia inversa en un coeficiente de transformación decodificado por el dispositivo de decodificación aritmética para generar una imagen residual .
8. Un dispositivo de codificación aritmética para generar datos codificados de un coeficiente de transformación obtenido al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, caracterizado porque comprende : medio de codificación de sintaxis para codificar aritméticamente cada uno de al menos un primer elemento de sintaxis y un segundo elemento de sintaxis que indiquen el coeficiente de transformación usando codificación aritmética con un contexto o codificación aritmética sin un contexto, en donde el medio de codificación de sintaxis está configurado para llevar a cabo codificación que al menos incluye no codificar el primer elemento de sintaxis y codificar el segundo elemento de sintaxis, y codificar el primer elemento de sintaxis y el segundo elemento de sintaxis .
9. Un método de decodificación aritmética para decodificar aritméticamente datos codificados de un coeficiente de transformación obtenido al llevar a cabo una transformación de frecuencia en una imagen objetivo para cada región de unidad, caracterizado porque comprende: decodificar cada uno de al menos un primer elemento de sintaxis y un segundo elemento de sintaxis que indican el coeficiente de transformación usando decodificación aritmética con un contexto o decodificación aritmética sin un contexto, en donde la decodificación al menos incluye no decodificar el primero elemento de sintaxis y decodificar el segundo elemento de sintaxis, y decodificar el primer elemento de sintaxis y el segundo elemento de sintaxis.
MX2014005246A 2011-11-04 2012-10-31 Dispositivo de decodificacion aritmetica, dispositivo de decodificacion de imagenes, dispositivo de codificacion aritmetica, dispositivo de codificacion de imagenes y metodo de decodificacion aritmetica. MX338671B (es)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2011242840 2011-11-04
JP2011264156 2011-12-01
JP2012009447 2012-01-19
PCT/JP2012/078086 WO2013065702A1 (ja) 2011-11-04 2012-10-31 算術復号装置、画像復号装置、算術符号化装置、画像符号化装置、および、算術復号方法

Publications (2)

Publication Number Publication Date
MX2014005246A true MX2014005246A (es) 2014-08-22
MX338671B MX338671B (es) 2016-04-27

Family

ID=48192047

Family Applications (2)

Application Number Title Priority Date Filing Date
MX2016005051A MX346677B (es) 2011-11-04 2012-10-31 Dispositivo de decodificacion aritmetica, dispositivo de decodificacion de imagenes, dispositivo de codificacion aritmetica, dispositivo de codificacion de imagenes y metodo de decodificacion aritmetica.
MX2014005246A MX338671B (es) 2011-11-04 2012-10-31 Dispositivo de decodificacion aritmetica, dispositivo de decodificacion de imagenes, dispositivo de codificacion aritmetica, dispositivo de codificacion de imagenes y metodo de decodificacion aritmetica.

Family Applications Before (1)

Application Number Title Priority Date Filing Date
MX2016005051A MX346677B (es) 2011-11-04 2012-10-31 Dispositivo de decodificacion aritmetica, dispositivo de decodificacion de imagenes, dispositivo de codificacion aritmetica, dispositivo de codificacion de imagenes y metodo de decodificacion aritmetica.

Country Status (8)

Country Link
US (6) US9525876B2 (es)
EP (1) EP2775713B1 (es)
JP (2) JPWO2013065702A1 (es)
CN (3) CN103907349B (es)
IN (1) IN2014CN03598A (es)
MX (2) MX346677B (es)
MY (1) MY167316A (es)
WO (1) WO2013065702A1 (es)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10091529B2 (en) * 2010-07-09 2018-10-02 Samsung Electronics Co., Ltd. Method and apparatus for entropy encoding/decoding a transform coefficient
CN103339937B (zh) * 2011-12-21 2017-07-25 太阳专利托管公司 图像编码方法、图像编码装置、图像解码方法、图像解码装置以及图像编解码装置
US20130188736A1 (en) 2012-01-19 2013-07-25 Sharp Laboratories Of America, Inc. High throughput significance map processing for cabac in hevc
US9743116B2 (en) 2012-01-19 2017-08-22 Huawei Technologies Co., Ltd. High throughput coding for CABAC in HEVC
US9860527B2 (en) * 2012-01-19 2018-01-02 Huawei Technologies Co., Ltd. High throughput residual coding for a transform skipped block for CABAC in HEVC
US10616581B2 (en) 2012-01-19 2020-04-07 Huawei Technologies Co., Ltd. Modified coding for a transform skipped block for CABAC in HEVC
US9584812B2 (en) * 2012-01-20 2017-02-28 Blackberry Limited Methods and devices for context set selection
KR20180030250A (ko) * 2012-01-20 2018-03-21 소니 주식회사 유효성 맵 코딩의 복잡성 감소
AU2013285752B2 (en) * 2012-07-02 2016-02-11 Samsung Electronics Co., Ltd. Method and apparatus for entropy coding video and method and apparatus for entropy decoding video
US9619229B2 (en) 2012-12-27 2017-04-11 Intel Corporation Collapsing of multiple nested loops, methods and instructions
CN106134192B (zh) * 2014-03-25 2020-08-11 株式会社索思未来 图像解码装置、图像解码方法及集成电路
EP2958328A1 (en) * 2014-06-20 2015-12-23 Thomson Licensing Method and device for signaling in a bitstream a picture/video format of an LDR picture and a picture/video format of a decoded HDR picture obtained from said LDR picture and an illumination picture
US9781424B2 (en) 2015-01-19 2017-10-03 Google Inc. Efficient context handling in arithmetic coding
EP3751304B1 (en) 2015-05-12 2025-09-10 HERE Global B.V. Compressing and decompressing data about radio signals
EP3099072A1 (en) * 2015-05-28 2016-11-30 Parabola Research Limited Method, system and device for image and video coding
MX2018001540A (es) * 2015-09-10 2018-05-17 Samsung Electronics Co Ltd Dispositivo de codificacion, dispositivo de decodificacion y metodo de codificacion y decodificacion para los mismos.
WO2017041271A1 (en) * 2015-09-10 2017-03-16 Mediatek Singapore Pte. Ltd. Efficient context modeling for coding a block of data
CN114567785B (zh) * 2015-09-11 2024-12-24 株式会社Kt 图像解码方法、图像编码方法和包括比特流的设备
US10440399B2 (en) * 2015-11-13 2019-10-08 Qualcomm Incorporated Coding sign information of video data
US20170311003A1 (en) * 2016-04-20 2017-10-26 Mediatek Inc. Method and apparatus for performing entropy encoding with sign data removal and associated method and apparatus for performing entropy decoding with sign data recovery
EP3457691A4 (en) 2016-05-13 2019-03-20 Sharp Kabushiki Kaisha IMAGE DECODING DEVICE AND IMAGE CODING DEVICE
US10694202B2 (en) * 2016-12-01 2020-06-23 Qualcomm Incorporated Indication of bilateral filter usage in video coding
KR20180089290A (ko) * 2017-01-31 2018-08-08 세종대학교산학협력단 영상의 부호화/복호화 방법 및 장치
US10484695B2 (en) 2017-10-23 2019-11-19 Google Llc Refined entropy coding for level maps
US11252420B2 (en) * 2017-12-15 2022-02-15 Lg Electronics Inc. Image coding method on basis of secondary transform and device therefor
EP3514968B1 (en) 2018-01-18 2023-03-08 BlackBerry Limited Methods and devices for entropy coding point clouds
EP3937132B1 (en) * 2018-04-09 2025-05-28 BlackBerry Limited Methods and devices for binary entropy coding of point clouds
EP3562156A1 (en) * 2018-04-27 2019-10-30 InterDigital VC Holdings, Inc. Method and apparatus for adaptive context modeling in video encoding and decoding
US10645381B2 (en) 2018-04-30 2020-05-05 Google Llc Intra-prediction for smooth blocks in image/video
WO2019212230A1 (ko) * 2018-05-03 2019-11-07 엘지전자 주식회사 영상 코딩 시스템에서 블록 사이즈에 따른 변환을 사용하는 영상 디코딩 방법 및 그 장치
CN118138779A (zh) * 2018-06-01 2024-06-04 夏普株式会社 图像解码装置以及图像编码装置
BR112020026912A2 (pt) * 2018-07-02 2021-03-30 Huawei Technologies Co., Ltd. Aparelho e método para filtragem em codificação de vídeo
JP7127160B2 (ja) 2018-07-02 2022-08-29 フラウンホファー ゲセルシャフト ツール フェールデルンク ダー アンゲヴァンテン フォルシュンク エー.ファオ. 依存スカラー量子化に好適な変換係数のエントロピーコーディング
TWI765164B (zh) * 2018-07-06 2022-05-21 弗勞恩霍夫爾協會 算術編碼器、算術解碼器、視訊編碼器、視訊解碼器、編碼方法、解碼方法及電腦程式
MX2021003205A (es) * 2018-09-20 2021-05-27 Nokia Technologies Oy Un metodo y un aparato para codificacion y decodificacion de material de imagen/video digital.
CN113170132B (zh) 2018-09-24 2024-07-26 弗劳恩霍夫应用研究促进协会 使用或适用于与依赖标量量化的组合的变换系数的有效编码
EP3857894A4 (en) * 2018-10-08 2022-09-07 HFI Innovation Inc. METHOD AND APPARATUS FOR CODING THE LAST SIGNIFICANT COEFFICIENT IN IMAGE AND VIDEO CODING
US10728557B2 (en) * 2018-10-24 2020-07-28 Sony Corporation Embedded codec circuitry for sub-block based entropy coding of quantized-transformed residual levels
US11463712B2 (en) 2018-11-21 2022-10-04 Interdigital Vc Holdings, Inc. Residual coding with reduced usage of local neighborhood
KR102768903B1 (ko) 2018-12-17 2025-02-18 비보 모바일 커뮤니케이션 컴퍼니 리미티드 고주파 제로잉을 기반으로 변환 계수 스캔 순서를 결정하는 방법 및 장치
JP7282904B2 (ja) * 2019-02-19 2023-05-29 エルジー エレクトロニクス インコーポレイティド 映像コーディングシステムにおいてレジデュアル情報を使用する映像デコーディング方法及びその装置
US10939107B2 (en) 2019-03-01 2021-03-02 Sony Corporation Embedded codec circuitry for sub-block based allocation of refinement bits
CN113678450B (zh) * 2019-03-12 2024-09-13 弗劳恩霍夫应用研究促进协会 用于图像和视频编码的选择性分量间变换(ict)
WO2021045187A1 (ja) * 2019-09-06 2021-03-11 ソニー株式会社 画像処理装置および方法
CN120529077A (zh) * 2019-09-23 2025-08-22 株式会社Kt 对视频进行解码或编码的方法以及传输压缩的视频数据的装置
WO2021180166A1 (en) 2020-03-11 2021-09-16 Beijing Bytedance Network Technology Co., Ltd. Adaptive loop filtering
WO2021244420A1 (en) 2020-05-31 2021-12-09 Beijing Bytedance Network Technology Co., Ltd. Palette mode with local dual tree modetype definition
JP7821088B2 (ja) * 2022-10-13 2026-02-26 Kddi株式会社 メッシュ復号装置、メッシュ符号化装置、メッシュ復号方法及びプログラム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003043347A1 (fr) * 2001-11-16 2003-05-22 Ntt Docomo, Inc. Procede de codage d'image, procede de decodage d'image, codeur et decodeur d'image, programme, signal de donnees informatiques et systeme d'emission d'image
JP2003319391A (ja) * 2002-04-26 2003-11-07 Sony Corp 符号化装置および方法、復号装置および方法、記録媒体、並びにプログラム
CN100473164C (zh) * 2002-05-28 2009-03-25 夏普株式会社 图像内预测模式估计方法
JP2005130099A (ja) * 2003-10-22 2005-05-19 Matsushita Electric Ind Co Ltd 算術復号装置、算術符号化装置、算術符号化・復号装置、携帯端末装置、動画像撮影装置、及び、動画像記録・再生装置
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
JP2006140758A (ja) * 2004-11-12 2006-06-01 Toshiba Corp 動画像符号化方法、動画像符号化装置および動画像符号化プログラム
WO2007081116A1 (en) * 2006-01-07 2007-07-19 Electronics And Telecommunications Research Institute Method and apparatus for video data encoding and decoding
US8463061B2 (en) * 2006-07-13 2013-06-11 Nec Corporation Encoding and decoding two-dimensional signal using a wavelet transform
TWI341657B (en) * 2007-04-03 2011-05-01 Nat Univ Tsing Hua Cabac decoding method
KR102417196B1 (ko) * 2010-04-13 2022-07-05 지이 비디오 컴프레션, 엘엘씨 유효성 맵 및 변환 계수 블록의 코딩
PL2559166T3 (pl) * 2010-04-13 2018-04-30 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Koder i dekoder dzielący interwał prawdopodobieństwa
US8976861B2 (en) * 2010-12-03 2015-03-10 Qualcomm Incorporated Separately coding the position of a last significant coefficient of a video block in video coding
KR102393305B1 (ko) * 2011-01-14 2022-05-02 지이 비디오 컴프레션, 엘엘씨 엔트로피 인코딩 및 디코딩 방식
AU2012268951B2 (en) * 2011-06-16 2015-07-30 Dolby Video Compression, Llc Context initialization in entropy coding
JP5733590B2 (ja) * 2011-07-15 2015-06-10 モトローラ モビリティ エルエルシーMotorola Mobility Llc 変換係数レベルを符号化するコンテキストモデリング技法
WO2013050612A1 (en) * 2011-10-06 2013-04-11 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Entropy coding buffer arrangement
US9191670B2 (en) 2012-01-17 2015-11-17 Qualcomm Incorporated Throughput improvement for CABAC coefficient level coding

Also Published As

Publication number Publication date
JPWO2013065702A1 (ja) 2015-04-02
EP2775713A1 (en) 2014-09-10
JP6560702B2 (ja) 2019-08-14
US11310530B2 (en) 2022-04-19
US9525876B2 (en) 2016-12-20
CN109120927B (zh) 2021-05-18
US20210084335A1 (en) 2021-03-18
CN109120930A (zh) 2019-01-01
US20170041635A1 (en) 2017-02-09
EP2775713B1 (en) 2021-06-16
US10897632B2 (en) 2021-01-19
US20200154140A1 (en) 2020-05-14
JP2017123685A (ja) 2017-07-13
US20140307801A1 (en) 2014-10-16
US20180160144A1 (en) 2018-06-07
CN109120927A (zh) 2019-01-01
EP2775713A4 (en) 2015-05-06
MY167316A (en) 2018-08-16
CN109120930B (zh) 2021-03-26
US10158887B2 (en) 2018-12-18
CN103907349A (zh) 2014-07-02
US10547870B2 (en) 2020-01-28
IN2014CN03598A (es) 2015-07-31
MX338671B (es) 2016-04-27
MX346677B (es) 2017-03-29
WO2013065702A1 (ja) 2013-05-10
US20190052905A1 (en) 2019-02-14
CN103907349B (zh) 2018-08-28

Similar Documents

Publication Publication Date Title
MX2014005246A (es) Dispositivo de decodificacion aritmetica, dispositivo de decodificacion de imagenes, dispositivo de codificacion aritmetica, dispositivo de codificacion de imagenes y metodo de decodificacion aritmetica.
US11509898B2 (en) Arithmetic decoding device, image decoding apparatus, arithmetic coding device, and image coding apparatus
EP3100456B1 (en) Low complexity sample adaptive offset encoding
CN106604038B (zh) 偏移解码装置、偏移编码装置、图像滤波器装置
JP2018078647A (ja) 算術復号装置
WO2014005092A1 (en) Sign hiding techniques for quantized transform coefficients in video coding
CN113597762A (zh) 视频译码中具有非线性自适应环路滤波器的固定滤波器
CN113170162A (zh) 用于视频译码的共享候选列表和并行候选列表推导
JP2013192118A (ja) 算術復号装置、画像復号装置、算術符号化装置、および画像符号化装置
JP7771187B2 (ja) 高ビット深度ビデオコーディング用のriceパラメータ導出のための低複雑度履歴の使用
CN113994705A (zh) 变换跳过残差译码中的二值化
JP2013223051A (ja) 算術復号装置、画像復号装置、算術符号化装置、および画像符号化装置
WO2019142764A1 (ja) 動画像符号化装置、動画像復号装置および動画像フィルタ装置
HK40009087B (zh) 算术解码装置、图像解码装置、算术编码装置以及图像编码装置
HK1196483B (en) Arithmetic decoding device, image decoding device, arithmetic coding device and arithmetic decoding method
HK1196483A (en) Arithmetic decoding device, image decoding device, arithmetic coding device and arithmetic decoding method
HK1204736B (zh) 算术解码装置、图像解码装置、算术编码装置以及图像编码装置
HK1190849B (en) Offset decoding device, offset encoding device, image filter device
HK1190849A (en) Offset decoding device, offset encoding device, image filter device
HK1194223A (en) Image decoding apparatus, image decoding method and image encoding apparatus
HK1194223B (en) Image decoding apparatus, image decoding method and image encoding apparatus

Legal Events

Date Code Title Description
FG Grant or registration