ES2729781T3 - Dispositivo de decodificación aritmética, aparato de decodificación de imágenes, dispositivo de codificación aritmética y aparato de codificación de imágenes - Google Patents

Dispositivo de decodificación aritmética, aparato de decodificación de imágenes, dispositivo de codificación aritmética y aparato de codificación de imágenes Download PDF

Info

Publication number
ES2729781T3
ES2729781T3 ES13796751T ES13796751T ES2729781T3 ES 2729781 T3 ES2729781 T3 ES 2729781T3 ES 13796751 T ES13796751 T ES 13796751T ES 13796751 T ES13796751 T ES 13796751T ES 2729781 T3 ES2729781 T3 ES 2729781T3
Authority
ES
Spain
Prior art keywords
block
sub
coefficient
context
case
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES13796751T
Other languages
English (en)
Inventor
Tomohiro Ikai
Takeshi Tsukuba
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Velos Media International Ltd
Original Assignee
Velos Media International Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=49673219&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=ES2729781(T3) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Velos Media International Ltd filed Critical Velos Media International Ltd
Application granted granted Critical
Publication of ES2729781T3 publication Critical patent/ES2729781T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/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/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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

Un dispositivo de decodificación aritmética para decodificar datos codificados de un coeficiente de transformación obtenido realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad, comprendiendo el dispositivo: una unidad de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque (127) configurada para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si uno o más coeficientes de transformación distintos de cero se encuentran incluidos en cada uno de una pluralidad de subbloques en los que se divide el dominio de unidad; y una unidad de derivación de índice de contexto configurada para derivar un índice de contexto a partir de una coordenada horizontal y una coordenada vertical de un coeficiente de transformación objetivo del proceso, en el que el índice de contexto corresponde a un indicador de presencia/ausencia de coeficiente de transformación que indica si el coeficiente de transformación objetivo del proceso es igual o no es igual a 0, en el que en un caso en el que el indicador de presencia/ausencia de coeficiente en sub-bloque indica que no hay un coeficiente de transformación distinto de cero en cada uno, el sub-bloque adyacente derecho y el sub-bloque adyacente inferior, la unidad de derivación de índice de contexto está configurada para derivar: (i) un primer índice de contexto en un caso en el que una agregación de una coordenada horizontal y una coordenada vertical que indican una posición del coeficiente de transformación es igual a o menor que un primer valor de umbral, (ii) un segundo índice de contexto que es menor que el primer índice de contexto en un caso en el que la agregación es mayor que el primer valor de umbral y es igual a o menor que un segundo valor de umbral, y (iii) un tercer índice de contexto que es menor que el segundo índice de contexto en un caso en el que la agregación es mayor que el primer y el segundo valores de umbral, en el que en un caso en el que el indicador de presencia/ausencia de coeficiente en sub-bloque indica un coeficiente de transformación distinto de cero en cada uno, el sub-bloque adyacente derecho y el sub-bloque adyacente inferior, la unidad de derivación de índice de contexto está configurada para tener el primer índice de contexto para todos los coeficientes de transformación del sub-bloque objetivo del proceso.

Description

DESCRIPCIÓN
Dispositivo de decodificación aritmética, aparato de decodificación de imágenes, dispositivo de codificación aritmética y aparato de codificación de imágenes
Campo técnico
La presente invención se refiere a un dispositivo de decodificación aritmética que decodifica unos datos codificados que están codificados aritméticamente, y un aparato de decodificación de imágenes que incluye el dispositivo de decodificación aritmética. Además, la presente invención se refiere a un dispositivo de codificación aritmética que genera datos codificados que están codificados aritméticamente, y un aparato de codificación de imágenes que incluye el dispositivo de codificación aritmética.
Técnica anterior
Con el fin de transmitir o registrar eficazmente imágenes en movimiento, se utilizan un aparato de codificación de imágenes en movimiento (aparato de codificación de imágenes) que genera datos codificados codificando una imagen en movimiento, y un aparato de decodificación de imágenes en movimiento (aparato de decodificación de imágenes) que genera una imagen decodificada decodificando los datos codificados.
Como procedimiento específico de codificación de imágenes en movimiento, por ejemplo, se proponen unos procedimientos (NPL 1) en H. 264/MPEG-4. AVC, y la codificación de vídeo de alta eficiencia (HEVC), que es un códec posterior del mismo.
En estos procedimientos de codificación de imágenes en movimiento, una imagen (imagen) que forma una imagen en movimiento es gestionada en una estructura de capas constituida por un segmento obtenido dividiendo la imagen, una unidad de codificación obtenida dividiendo el segmento, y un bloque y una partición obtenida dividiendo la unidad de codificación, y la imagen es codificada y decodificada comúnmente para cada bloque.
Además, en estos procedimientos de codificación, normalmente se genera una imagen pronosticada (predicted) en base a una imagen codificada local obtenida codificando y decodificando una imagen de input, y la codificación se realiza sobre un coeficiente de transformación que se obtiene realizando una transformación de frecuencia tal como la transformación de coseno discreta (DCT) sobre una imagen de diferencia (también denominada "imagen residual" o "residual de predicción" en algunos casos) entre la imagen pronosticada y la imagen de input para cada bloque. Como procedimiento específico de codificación de un coeficiente de transformación, se conoce la codificación de longitud variable adaptativa basada en contexto (CAVLC) y la codificación aritmética binaria adaptativa basada en contexto (CABAC).
En CALVC, se genera un vector unidimensional explorando secuencialmente cada coeficiente de transformación, y se codifica una sintaxis que indica un valor de cada coeficiente de transformación, una sintaxis que indica una longitud (también denominada serie o “run”) de 0 consecutivos, y similares.
En CABAC, se realiza un proceso de binarización sobre diversos elementos de sintaxis que indican un coeficiente de transformación, y se codifican aritméticamente los datos binarios obtenidos a través del proceso de binarización. En este caso, los diversos elementos de sintaxis incluyen un indicador (flag) que indica si un coeficiente de transformación es igual o no es igual a 0, es decir, un indicador significant_coeff_flag (también denominado indicador de presencia/ausencia de coeficiente de transformación) que indica si se encuentra o no se encuentra presente un coeficiente de transformación distinto de cero, unos elementos de sintaxis last_significant_coeff_x y last_significant_coeff_y que indican una posición del último coeficiente de transformación distinto de cero en un orden de proceso, y similares.
Además, en el CABAC, cuando se codifica un símbolo único (también denominado 1 bit de datos binarios, o un Bin), se referencia a un índice de contexto asignado a un componente de frecuencia objetivo del proceso, y se realiza una codificación aritmética correspondiente a la probabilidad de ocurrencia indicada por un índice de estado de probabilidad incluido en una variable de contexto designada por el índice de contexto. Además, se actualiza la probabilidad de ocurrencia designada por el índice de estado de probabilidad cada vez que se codifica un símbolo único.
Además, en NPL 1, se utiliza una codificación de dos capas como procedimiento de codificación de un coeficiente de transformación distinto de cero. En la codificación de dos capas, la unidad de transformación se divide en una pluralidad de sub-bloques, un indicador (significant_coeff_flag) que indica si se codifica o no se codifica un coeficiente de transformación distinto de cero para cada coeficiente de transformación incluido en cada sub-bloque, y un indicador (también denominado significant_coeff_group_flag, o coded_sub_block_flag) que indica si se incluye o no se incluye un coeficiente de transformación distinto de cero en cada sub-bloque se codifica en las unidades de sub-bloque.
Además, en NPL 1, se realiza la siguiente codificación de acuerdo con un tamaño de la unidad de transformación (UT: Unidad de transformación; TU: Transform Unit). En otras palabras, en la pequeña UT (4x4 u 8x8), se utiliza 4x4 u 8x2 como tamaño de sub-bloque, y se deriva un contexto que se asigna a un componente de frecuencia en base a una posición. En la derivación de contexto basada en una posición, se asigna al componente de frecuencia un índice de contexto (también denominado contexto de posición) que se define de acuerdo con una posición de un componente de frecuencia en un dominio de frecuencia.
Además, en las grandes UT (16x16, 32x32, 16x4, 4x16, 32x8, u 8x32), se utiliza 4x4 como tamaño de sub-bloque, y se deriva un contexto que se asigna a un componente de frecuencia en base a referencia de periferia. En la derivación de contexto basada en referencia de periferia, se asigna al componente de frecuencia un índice de contexto (también denominado contexto de referencia de periferia) que se define de acuerdo con el número de coeficientes de transformación distintos de cero (es decir, es referenciado el indicador significant_coeff_flag) en componentes de frecuencia periféricos de un componente de frecuencia correspondiente.
En contraste, NPL 2 presenta una propuesta para eliminar la derivación de contexto basada en la referencia de periferia según se ha descrito anteriormente, y se espera que esta propuesta sea aceptada en la próxima versión (HM7) de un modelo de prueba del HEVC.
NPL 2 propone seleccionar un patrón de derivación de acuerdo con la presencia o ausencia de un coeficiente de transformación distinto de cero en un sub-bloque adyacente, y derivar un índice de contexto de una posición en un sub-bloque de acuerdo con el patrón de derivación seleccionado.
Con referencia a las Figuras 50 - 52, se describirá a continuación el contenido propuesto en la NPL 2. En relación con un sub-bloque objetivo del proceso X ilustrado en la Figura 50, se obtienen los siguientes patrones a partir de un estado de un coeficiente de transformación distinto de cero en un sub-bloque A adyacente al lado derecho del sub­ bloque X y un sub-bloque B adyacente al lado inferior del mismo.
(Patrón 0) Caso en el que un valor de un indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 0 tanto en el sub-bloque adyacente derecho (xCG+1,yCG) como en el sub-bloque adyacente inferior (xCG,yCG+1). (Patrón 1) Caso en el que un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 1 en el sub-bloque adyacente derecho (xCG+1,yCG), un valor del indicador de presencia/ausencia de coeficiente en sub­ bloque es igual a 0 en el sub-bloque adyacente inferior (xCG,yCG+1).
(Patrón 2) Caso en el que un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 0 en el sub-bloque adyacente derecho (xCG+1,yCG), un valor del indicador de presencia/ausencia de coeficiente en subbloque es igual a 1 en el sub-bloque adyacente inferior (xCG,yCG+1).
(Patrón 3) Caso en el que un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 1 tanto en el sub-bloque adyacente derecho (xCG+1,yCG) como en el sub-bloque adyacente inferior (xCG,yCG+1). Según NPL 2, se deriva un índice de patrón idxCG que indica los patrones utilizando la siguiente ecuación (X).
idxCG = significant_coeff_group_flag[xCG+l][yCG]
(significant_coeff_group_flag[xCG] [yCG+1] << 1) •••(X)
Además, se deriva un índice de contexto utilizando unas coordenadas (xB,yB) en el sub-bloque X en un procedimiento ilustrado en la Figura 51 de acuerdo con el índice de patrón idxCG. Con referencia a la Figura 51, se describirá un valor de un índice de contexto que se deriva en cada caso de los patrones 0 - 3.
(Caso del patrón 0)
En un caso del patrón 0, se deriva un índice de contexto por medio de sigCtx = (xB yB <= 2) ? 1 : 0.
Los valores del índice de contexto se disponen según se ilustra en la Figura 52(a).
(Caso del patrón 1)
En un caso del patrón 1, se deriva un índice de contexto por medio de sigCtx = (yB <= 1) ? 1 : 0.
Por lo tanto, según se ilustra en la Figura 52(b), los valores de los índices de contexto son iguales a 1 en la primera y segunda filas del sub-bloque, y los valores de los índices de contexto son iguales a 0 en las filas tercera y cuarta del sub-bloque.
(Caso del patrón 2)
En un caso del patrón 2, se deriva un índice de contexto por medio de sigCtx = (xB <= 1) ? 1 : 0.
Por lo tanto, según se ilustra en la Figura 52(c), los valores de los índices de contexto son iguales a 1 en la primera y segunda columnas del sub-bloque, y los valores de los índices de contexto son iguales a 0 en las columnas tercera y cuarta del sub-bloque.
(Caso del patrón 3)
En un caso del patrón 3, se deriva un índice de contexto por medio de sigCtx = (xB yB <= 4) ? 2 : 1.
Por lo tanto, en un caso del patrón 3, si una agregación de la coordenada xB en la dirección horizontal y la coordenada yB en la dirección vertical de las coordenadas (xB,yB) en el sub-bloque es igual a o menor que 4, un valor del índice de contexto es igual a 1, y, en caso contrario, un valor del índice de contexto es igual a 0.
Por lo tanto, los valores de los índices de contexto se disponen según se ilustra en la Figura 52(d).
Además, NPL 3 propone que, en una UT de 8x8, las formas de los sub-bloques que son diferentes entre sí en cada dirección de exploración son unificadas en un sub-bloque de 4x4, y también en una UT de 8x8 hasta una UT de 32x32, se selecciona un patrón de derivación de acuerdo con la presencia o ausencia de un coeficiente de transformación distinto de cero en un sub-bloque adyacente, y se deriva un índice de contexto relativo a un indicador de presencia/ausencia de coeficiente de transformación de una posición en el sub-bloque de acuerdo con el patrón de derivación seleccionado. Además, según NPL 3, se propone que, en relación con una UT de luminancia de 8x8, los contextos relativos a un indicador de presencia/ausencia de coeficiente de transformación se diferencien entre sí en función de las direcciones de exploración, que son una dirección diagonal vertical y una dirección horizontal o vertical. En otras palabras, se comparte un contexto en una exploración vertical y una exploración horizontal por separado suministrado por un contexto en una exploración en diagonal hacia arriba a la derecha.
NPL 4 divulga una propuesta en la que los índices de contexto para el mapa de significancia son derivados por medio del significant_coeff_group_flag y se elimina por completo la dependencia de la derivación del índice de contexto del mapa de significancia en el subconjunto.
NPL 5 divulga una propuesta de dos unificaciones para la codificación del coeficiente. Una es unificar la partición del subconjunto de UT de 8x8 con otras UT. La otra es unificar las tablas de búsqueda de selección de contexto en base a la posición entre UT de 4x4 y de 8x8.
NPL 6 divulga una propuesta en la que se aplica un modelado de contexto basado en plantillas para codificar todos los significant_coeff_flag para todos los tamaños de UT.
Lista de citas
Literatura de “no patente”:
NPL 1: "Suggested bug-fixes for HEVC text specification draft 6 (JCTVC-10030)", Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11 9th Meeting: Geneva, CH, del 27 de Abril al 7 de Mayo del 2012 (publicado en Abril del 2012)
NPL 2: "Non-CE3: Simplified context derivation for significance map (JCTVC-10296)", Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 119th Meeting: Geneva, CH, del 27 de Abril al 7 de Mayo del 2012 (publicado en Abril del 2012)
NPL 3: "Removal of the 8x2/2x8 coefficient groups (JCTVC-J0256)", Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 10th Meeting: Stockholm, SW, del 11 al 20 de Julio del 2012 (publicado en Julio del 2012)
NPL 4: KUMAKURA T ET AL: "Non-CE3: Simplified context derivation for significance map", 100. MPEG MEETING; 30-4-2012 - 4-5-2012; GENEVA; (MOTION PICTURE EXPERT GROUP OR ISO/IEC JTCl/SC29/WG11), no m24543, 28 de Abril del 2012 (2012-04-28), XP030052886
NPL 5: C-W HSU ET AL: "Non-CE11: Unification of transform coefficient coding", 99. MPEG MEETING; 6-2-2012 -10-2-2012; SAN JOSÉ; (MOTION PICTURE EXPERT GROUP OR ISO/IEC JTC1/SC29/WG11), no m23159, 7 de Febrero del 2012 (2012-02-07), XP030051684
NPL 6: W-J CHIEN ET AL: "Template-based context modeling for coefficient coding", 100. MPEG MEETING; 30-4­ 2012 - 4-5-2012; GENEVA; (MOTION PICTURE EXPERT GROUP OR ISO/IEC JTC1/SC29/WG11), no m24632, 25 de Abril del 2012 (2012-04- 25), XP030052975
Resumen de la invención
Problema técnico
Sin embargo, en la técnica relacionada descrita anteriormente, persiste el problema de que los procesos relacionados con la codificación y decodificación de un coeficiente de transformación son complejos, y la eficiencia de la codificación no es suficiente.
La presente invención se ha realizado a la luz de los problemas, y un objeto de la misma es realizar un dispositivo de decodificación aritmética, un aparato de decodificación de imágenes, un dispositivo de codificación aritmética, y un aparato de codificación de imágenes, en los que se simplifica el hardware mediante la simplificación de los procesos relacionados con la codificación y decodificación de un coeficiente de transformación, y se mejora la eficiencia de la codificación.
Solución al problema
Con el fin de resolver los problemas que se han descrito anteriormente, un dispositivo de decodificación aritmética de acuerdo con una forma de realización de la presente invención decodifica los datos codificados de un coeficiente de transformación obtenido realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad, incluyendo el dispositivo unos medios de decodificación de un indicador de presencia/ausencia de coeficiente en sub-bloque para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en cada uno de una pluralidad de sub-bloques en los que se divide el dominio de unidad; y unos medios de derivación de índices de contexto para derivar un índice de contexto correspondiente a un indicador de presencia/ausencia de coeficiente de transformación que indica si el coeficiente de transformación de un objetivo del proceso es igual o no es igual a 0, en el que, en un caso en el que el coeficiente de transformación distinto de cero no se encuentra incluido en al menos dos sub-bloques adyacentes que son adyacentes a un sub-bloque objetivo del proceso, los medios de derivación de índices de contexto derivan tres índices de contexto con valores diferentes.
Con el fin de resolver los problemas que se han descrito anteriormente, un dispositivo de decodificación aritmética de acuerdo con una forma de realización de la presente invención decodifica datos codificados de un coeficiente de transformación obtenido realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad, incluyendo el dispositivo unos medios de decodificación de un indicador de presencia/ausencia de coeficiente en sub-bloque para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en cada uno de una pluralidad de sub-bloques en los se divide que el dominio de unidad; y unos medios de derivación de índices de contexto para derivar un índice de contexto correspondiente a un indicador de presencia/ausencia de coeficiente de transformación que indica si el coeficiente de transformación de un objetivo del proceso es igual o no es igual a 0, en el que el número de índices de contexto derivados es diferente dependiendo de si el coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en al menos dos sub-bloques adyacentes que son adyacentes a un sub-bloque objetivo del proceso.
Con el fin de resolver los problemas que se han descrito anteriormente, un aparato de decodificación de imágenes de acuerdo con una forma de realización de la presente invención incluye el dispositivo de decodificación aritmética; unos medios de transformación de frecuencia inversa para generar una imagen residual realizando una transformación de frecuencia inversa en un coeficiente de transformación que es decodificado por el dispositivo de decodificación aritmética; y unos medios de generación de imagen decodificada para generar una imagen decodificada agregando la imagen residual generada por los medios de transformación de frecuencia inversa y una imagen pronosticada que es pronosticada a partir de una imagen decodificada generada.
Con el fin de resolver los problemas que se han descrito anteriormente, un dispositivo de codificación aritmética de acuerdo con una forma de realización de la presente invención codifica aritméticamente cada elemento de sintaxis que indica un coeficiente de transformación obtenido realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad, incluyendo el dispositivo unos medios de codificación de un indicador de presencia/ausencia de coeficiente en sub-bloque para codificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en cada uno de una pluralidad de sub-bloques en los que se divide el dominio de unidad; y unos medios de derivación de índices de contexto para derivar un índice de contexto correspondiente a un indicador de presencia/ausencia de coeficiente de transformación que indica si el coeficiente de transformación objetivo del proceso es igual o no es igual a 0, en el que, en un caso en el que el coeficiente de transformación distinto de cero no se encuentra incluido en al menos dos sub-bloques adyacentes que son adyacentes a un sub-bloque objetivo del proceso, los medios de derivación de índices de contexto derivan tres índices de contexto que tienen valores diferentes.
Con el fin de resolver los problemas que se han descrito anteriormente, un dispositivo de codificación aritmética de acuerdo con una forma de realización de la presente invención codifica aritméticamente cada elemento de sintaxis que indica un coeficiente de transformación obtenido realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad, incluyendo el dispositivo unos medios de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque para codificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en cada uno de una pluralidad de sub-bloques en los que se divide el dominio de unidad; y unos medios de derivación de índices de contexto para derivar un índice de contexto correspondiente a un indicador de presencia/ausencia de coeficiente de transformación que indica si el coeficiente de transformación objetivo del proceso es igual o no es igual a 0, en el que el número de índices de contexto derivados es diferente dependiendo de si el coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en al menos dos sub­ bloques adyacentes que son adyacentes a un sub-bloque objetivo del proceso.
Con el fin de resolver los problemas que se han descrito anteriormente, un aparato de codificación de imágenes de acuerdo con una forma de realización de la presente invención incluye unos medios de generación de coeficiente de transformación para generar un coeficiente de transformación realizando una transformación de frecuencia en una imagen residual entre una imagen objetivo de la codificación y una imagen pronosticada para cada dominio de unidad; y uno cualquiera de los dispositivos de codificación aritmética, en el que el dispositivo de codificación aritmética genera datos codificados mediante una sintaxis de codificación aritmética, que es un coeficiente de transformación generado por los medios de generación de coeficiente de transformación.
La presente invención se define en las reivindicaciones independientes. La divulgación habilitante para la invención se encuentra en la forma de realización de las figuras 28 - 30. Las formas de realización restantes deben entenderse como ejemplos útiles para comprender la invención pero que no representan formas de realización de la presente invención reivindicada. Estos ejemplos se divulgan con fines ilustrativos solamente.
Efectos ventajosos de la invención
Como se ha descrito anteriormente, en el dispositivo de decodificación aritmética de acuerdo con la presente invención, cuando un coeficiente de transformación distinto de cero no se encuentra presente en ninguno de los sub­ bloques adyacentes al sub-bloque objetivo del proceso, en base al resultado de la determinación, los medios de derivación de índices de contexto derivan los índices de contexto que corresponden respectivamente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja, un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, y un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia entre la probabilidad alta y la probabilidad baja, según una posición de un coeficiente de transformación objetivo del proceso en el subbloque objetivo del proceso.
Por lo tanto, es posible realizar un patrón de derivación de contexto que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación, y por lo tanto es posible mejorar la eficiencia de la codificación.
Según se ha mencionado anteriormente, en el dispositivo de decodificación aritmética de acuerdo con la presente invención, si las coordenadas del sub-bloque que tiene el tamaño 4x4 se establecen iguales a (xB,yB) (en el que xB es una coordenada en una dirección horizontal, yB es una coordenada en una dirección vertical, y el lado superior izquierdo del sub-bloque se establece igual a un origen (0,0)), cuando un orden de exploración aplicado al sub­ bloque es una exploración en diagonal hacia arriba a la derecha, en un caso en el que una directividad determinada es una dirección vertical, los medios de derivación de índices de contexto derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación es mayor que en dominios distintos de un dominio formado por (0,0) hasta (0,3), (1,0) hasta (1,2) y (2,0), y en un caso en el que una directividad determinada es una dirección horizontal, los medios de derivación de índices de contexto derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación es mayor que en dominios distintos de un dominio formado por (0,0) hasta (3,0), (0,1) hasta (2,1) y (0,2 ).
Por lo tanto, es posible eliminar cambios en los índices de contexto en un sub-bloque en comparación con la técnica relacionada. Por consiguiente, según se ha descrito anteriormente, en el hardware que define el número de 0 y 1 repetidos, se simplifica el montaje del hardware.
Según se ha mencionado anteriormente, el dispositivo de decodificación aritmética según la presente invención incluye unos medios de decodificación de coeficientes de transformación para decodificar un coeficiente de transformación utilizando un orden de exploración según una directividad que es determinada por unos medios de determinación de directividad para determinar una directividad de una distribución de un coeficiente de transformación.
Según la configuración, es posible decodificar un coeficiente de transformación utilizando un orden de exploración según la directividad de una distribución de un coeficiente de transformación. Por consiguiente, según se ha descrito anteriormente, en el hardware que define el número de 0 y 1 repetidos, se simplifica el montaje del hardware.
Según se ha mencionado anteriormente, en el dispositivo de decodificación aritmética según la presente invención, los medios de derivación de índices de contexto derivan el índice de contexto utilizando una agregación de una coordenada en una dirección horizontal y una coordenada en una dirección vertical de un coeficiente de transformación objetivo del proceso en el sub-bloque objetivo del proceso de acuerdo con el número contado por los medios de contaje del número de sub-bloques con presencia de coeficiente para contar el número de sub-bloques que incluyen al menos un coeficiente de transformación distinto de cero para cada sub-bloque adyacente a un sub­ bloque objetivo del proceso en base al indicador de presencia/ausencia de coeficiente en sub-bloque.
En la configuración, dado que el indicador de presencia/ausencia de coeficiente en sub-bloque no se diferencia entre un sub-bloque adyacente derecho y un sub-bloque adyacente inferior, es posible conseguir un efecto de simplificación del montaje de hardware.
Según se ha mencionado anteriormente, en el dispositivo de decodificación aritmética de acuerdo con la presente invención, los medios de derivación de índices de contexto derivan el índice de contexto utilizando bits de orden superior en la expresión de 2 bits de cada una de las coordenadas en una dirección horizontal y una dirección vertical de un coeficiente de transformación objetivo del proceso en el sub-bloque objetivo del proceso de acuerdo con un resultado de determinación suministrado por los medios de determinación de patrones para determinar un patrón de un valor de un indicador de presencia/ausencia de coeficiente en sub-bloque que es decodificado para cada sub-bloque adyacente a un sub-bloque objetivo del proceso.
Según se ha mencionado anteriormente, el dispositivo de decodificación aritmética de acuerdo con la presente invención incluye unos medios de decodificación de coeficientes de transformación para decodificar un coeficiente de transformación utilizando un orden de exploración en un dominio parcial con respecto a dominios parciales respectivos, teniendo cada uno de los mismos un tamaño de 2x2, obtenidos dividiendo en cuatro dominios un sub­ bloque que tiene un tamaño de 4x4.
Según la configuración, dado que se puede evitar que se modifiquen considerablemente las coordenadas en un orden de exploración (por ejemplo, coordenadas de componentes de frecuencia adyacentes entre sí en el orden de exploración), se pueden decodificar secuencialmente los coeficientes de transformación que tienen espacialmente los mismos tipos de características entre sí. Como resultado, se mejora la eficiencia de la codificación.
Según se ha mencionado anteriormente, en el dispositivo de decodificación aritmética según la presente invención, los medios de derivación de índices de contexto derivan el índice de contexto utilizando unas coordenadas en el dominio de unidad objetivo del proceso en el sub-bloque objetivo del proceso según una directividad determinada por unos medios de determinación de directividad para determinar una directividad de una distribución de coeficientes de transformación en base a un indicador de presencia/ausencia de coeficiente en sub-bloque en un sub-bloque adyacente a un sub-bloque objetivo del proceso.
De acuerdo con la configuración, dado que un índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta es utilizado en un caso en el que una probabilidad de presencia del borde horizontal o del borde vertical es alta, es posible mejorar la eficiencia de la codificación.
Según se ha mencionado anteriormente, en el dispositivo de decodificación aritmética de acuerdo con la presente invención, en un caso en el que al menos un coeficiente de transformación distinto de cero es incluido en subbloques de un número predeterminado o superior como resultado de determinar si al menos un coeficiente de transformación distinto de cero es incluido o no en cada uno de los sub-bloques adyacentes a un sub-bloque objetivo del proceso en base al indicador de presencia/ausencia de coeficiente en sub-bloque, los medios de derivación de índices de contexto derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, igualmente en el sub-bloque objetivo del proceso.
Por lo tanto, en un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es igualmente alta, es posible derivar el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, igualmente en el sub-bloque objetivo del proceso, y por lo tanto es posible mejorar la eficiencia de la codificación.
Según se ha descrito anteriormente, según la presente invención, es posible realizar una simplificación del hardware simplificando procesos relacionados con la codificación y decodificación de un coeficiente de transformación, y mejorar la eficiencia de la codificación en comparación con la configuración de la técnica relacionada.
Además, el dispositivo de codificación aritmética que tiene una configuración correspondiente a la configuración puede conseguir los mismos efectos.
Breve descripción de los dibujos
La Figura 1 es un diagrama de bloques que ilustra una configuración de una unidad de codificación de indicador de presencia/ausencia de coeficiente incluida en un aparato de decodificación de imágenes en movimiento de acuerdo con una forma de realización de la presente invención.
La Figura 2 ilustra una configuración de datos de datos codificados generados por un aparato de codificación de imágenes en movimiento de acuerdo con la forma de realización de la presente invención y decodificados por el aparato de decodificación de imágenes en movimiento, en el que las Figuras 2(a) - 2(d) son diagramas que ilustran respectivamente una capa de imágenes, una capa de segmentos, una capa de bloques de árbol y una capa de unidades de codificación (UC; coding unit: UC).
Las Figuras 3(a) - 3(h) son diagramas que ilustran un patrón de tipo de división de unidad de predicción (UP; prediction unit: PU), e ilustran respectivamente formas de partición en casos de 2N*2N, 2N*N, 2N*nU, 2N*nD, N*2N, nL*2N, y nR*2D; las Figuras 3(i) - 3(o) son diagramas que ilustran procedimientos de división en los que un nodo cuadrado es subdividido en árboles cuaternarios cuadrados o no cuadrados en los que la Figura 3(i) ilustra una división en formas cuadradas, la Figura 3(j) ilustra una división en formas rectangulares que son largas transversalmente, la Figura 3(k) ilustra una división en formas rectangulares que son largas longitudinalmente, la Figura 3(l) ilustra que un nodo largo transversalmente se divide en formas rectangulares que son largas transversalmente, la Figura 3(m) ilustra que un nodo largo transversalmente se divide en formas cuadradas, la Figura 3(n) ilustra que un nodo largo longitudinalmente se divide en formas rectangulares que son largas longitudinalmente, y la Figura 3(o) ilustra que un nodo largo longitudinalmente se divide en formas cuadradas.
La Figura 4 ilustra una relación entre un bloque y un sub-bloque, en la que la Figura 4(a) ilustra un ejemplo en el que una UT de 4*4 está formada por un único sub-bloque que incluye componentes 4*4; la Figura 4(b) ilustra un ejemplo en el que una UT de 8*8 está formada por cuatro sub-bloques, cada uno de los cuales incluye componentes 4*4; y la Figura 4(c) ilustra un ejemplo en el que una UT de 16*16 está formada por dieciséis sub-bloques, cada uno de los cuales incluye componentes 4*4.
La Figura 5 ilustra un orden de exploración (o escaneado) en un proceso de decodificación y un proceso de codificación según la forma de realización, en la que la Figura 5(a) ilustra que una exploración de sub-bloque es una exploración hacia adelante, la Figura 5(b) ilustra que una exploración en un sub-bloque es una exploración hacia adelante, la Figura 5(c) ilustra que una exploración de sub-bloque es una exploración hacia atrás, y la Figura 5(d) ilustra que una exploración en un sub-bloque es una exploración hacia atrás.
La Figura 6 ilustra un proceso de decodificación de un coeficiente de transformación distinto de cero en la forma de realización en la que la Figura 6(a) ilustra un orden de exploración en un caso en el que un bloque con un tamaño de UT de 8*8 se divide en sub-bloques, teniendo cada uno de los mismos un tamaño de 4*4, y respectivos componentes de frecuencia son explorados en una exploración hacia adelante; la Figura 6(b) ejemplifica coeficientes de transformación (coeficientes de transformación distintos de cero) que no son 0 en un dominio de frecuencia, un componente de frecuencia con un tamaño de UT de 8*8; la Figura 6(c) ilustra cada valor de un indicador de presencia/ausencia de coeficiente en sub-bloque significant_coeff_group_flag que se decodifica para cada sub­ bloque en un caso en el que los coeficientes de transformación objetivo de la decodificación son los que se ilustran en la Figura 6(b); la Figura 6(d) ilustra cada valor de la sintaxis significant_coeff_flag que indica la presencia o ausencia de un coeficiente de transformación distinto de cero en un caso en el que los coeficientes de transformación objetivo de la decodificación son los que se ilustran en la Figura 6(b); la Figura 6(e) ilustra un valor absoluto de cada uno de los coeficientes de transformación que se obtiene decodificando las sintaxis coeff_abs_level_greater2_flag, y coeff_abs_level_remaining en un caso en el que los coeficientes de transformación objetivo de la decodificación son los ilustrados en la Figura 6(b); y la Figura 6(f) ilustra la sintaxis coeff_sign_flag en un caso en el que los coeficientes de transformación objetivo de la decodificación son los ilustrados en la Figura 6(b).
La Figura 7 es un diagrama de bloques que ilustra una configuración de un aparato de decodificación de imágenes en movimiento de acuerdo con la forma de realización.
La Figura 8 es un diagrama de bloques que ilustra una configuración de una unidad de decodificación de código de longitud variable incluida en el aparato de decodificación de imágenes en movimiento según la forma de realización. La Figura 9 es un diagrama que ilustra unas direcciones de intra-predicción que pueden utilizarse en el aparato de decodificación de imágenes en movimiento según la forma de realización.
La Figura 10 es un diagrama que ilustra modos de intra-predicción y el nombre correlacionado con modos de intrapredicción correspondientes.
La Figura 11 es un diagrama de bloques que ilustra una configuración de una unidad de decodificación de información residual de cuantificación incluida en el aparato de decodificación de imágenes según la forma de realización de la presente invención.
La Figura 12 es una tabla que ilustra un ejemplo de un índice de exploración scanIdx designado por un índice de modo de intra-predicción IntraPredMode y cada valor de log2TrafoSize-2.
La Figura 13 ilustra un índice de exploración, en la que la Figura 13(a) ilustra un tipo de exploración ScanType designado por cada valor del índice de exploración ScanIdx; la Figura 13(b) ilustra un ejemplo de un orden de exploración en la exploración rápida horizontal cuando un tamaño de UT es 4*4; la Figura 13(c) ilustra un ejemplo de un orden de exploración en la exploración rápida vertical cuando un tamaño de UT es 4*4; y la Figura 13(d) ilustra un ejemplo de un orden de exploración en la exploración en diagonal hacia arriba a la derecha cuando un tamaño de UT es 4*4. Además, la exploración rápida horizontal ilustrada en la Figura 13(b) se caracteriza porque los coeficientes son explorados en diagonal en la dirección horizontal para cada línea en las unidades de sub-bloques pequeños en el que el sub-bloque se divide en unas mitades superior e inferior, y la exploración rápida vertical ilustrada en la Figura 13(c) se caracteriza porque los coeficientes son explorados en diagonal en la dirección vertical para cada línea en las unidades de sub-bloques pequeños en el que el sub-bloque se divide en unas mitades izquierda y derecha.
La Figura 14 ilustra un orden de exploración de un bloque y un sub-bloque, en el que las Figuras 14(a) a 14(c) ilustran un ejemplo de orden de exploración en cada tipo de exploración designado por el índice de exploración scanIdx en un caso en el que un tamaño de UT es de 8*8 y un tamaño de sub-bloque es de 4*4. Además, una flecha en el ejemplo ilustrado en cada una de las Figuras 14(a) a 14(c) indica una dirección de exploración hacia adelante. Además, la exploración rápida horizontal ilustrada en la Figura 14(a) se caracteriza porque los coeficientes son explorados en diagonal en la dirección horizontal para cada línea en las unidades de sub-bloques pequeños en las que el sub-bloque se divide en unas mitades superior e inferior, y la exploración rápida vertical ilustrada en la Figura 14(b) se caracteriza porque los coeficientes son explorados en diagonal en la dirección vertical para cada línea en las unidades de sub-bloques pequeños en las que el sub-bloque se divide en unas mitades izquierda y derecha.
La Figura 15 muestra un orden de exploración de un bloque y un sub-bloque, en el que las Figuras 15(a) a 15(c) ilustran ejemplos de órdenes de exploración en los tipos de exploración designados por el índice de exploración scanIdx en un caso en el que un tamaño de UT es 8*8 y los tamaños de los sub-bloques son diferentes entre sí. Además, una flecha en el ejemplo ilustrado en cada una de las Figuras 15(a) a 15(c) indica la dirección de exploración hacia adelante. Además, la exploración rápida horizontal ilustrada en la Figura 15(a) se caracteriza porque los coeficientes son explorados en diagonal en la dirección horizontal para cada línea en las unidades de sub-bloques que son largas transversalmente, y la exploración rápida vertical ilustrada en la Figura 15(b) se caracteriza porque los coeficientes son explorados en diagonal en la dirección vertical para cada línea en las unidades de sub-bloques que son largas longitudinalmente.
La Figura 16 es un diagrama de bloques que ilustra una configuración de una unidad de decodificación de un indicador de presencia/ausencia de coeficiente en sub-bloque de acuerdo con la forma de realización.
La Figura 17 ilustra un proceso de decodificación realizado por la unidad de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque de acuerdo con la forma de realización, en la que la Figura 17(a) ilustra un sub-bloque objetivo (xCG,yCG) y un sub-bloque adyacente (xCG,yCG+1) que es adyacente al lado inferior del sub-bloque objetivo; la Figura 17(b) ilustra el sub-bloque objetivo (xCG,yCG) y un sub-bloque adyacente (xCG+1,yCG) que es adyacente al lado derecho del sub-bloque objetivo; y la Figura 17(c) ilustra el sub-bloque objetivo (xCG,yCG), el sub-bloque adyacente (xCG,yCG+1) que es adyacente al lado inferior del sub-bloque objetivo, y el sub-bloque adyacente (xCG+1,yCG) que es adyacente al lado derecho del sub-bloque objetivo.
La Figura 18 ilustra unos procesos de codificación y decodificación de un indicador de presencia/ausencia de coeficiente en sub-bloque de acuerdo con la forma de realización, en la que la Figura 18(a) ilustra unos coeficientes de transformación que se encuentran presentes en un dominio de frecuencia de una UT de 16*16, y la Figura 18(b) ilustra un indicador de presencia/ausencia de coeficiente en sub-bloque asignado a cada sub-bloque.
La Figura 19 es un diagrama que ilustra un ejemplo de un pseudo-código para derivar un índice de contexto a partir de las coordenadas de un componente de frecuencia objetivo en un sub-bloque de acuerdo con un índice de patrón idxCG.
La Figura 20 ilustra disposiciones de valores de índices de contexto en el procedimiento de derivación de índices de contexto que utiliza el pseudo-código ilustrado en la Figura 19.
La Figura 21 es un diagrama que ilustra un orden de exploración en un sub-bloque.
La Figura 22 muestra ejemplos de modificación en los que se cambia el orden de exploración de un sub-bloque objetivo según si un coeficiente de transformación distinto de cero se encuentra o no se encuentra presente en un sub-bloque adyacente.
La Figura 23 es un diagrama que ilustra otro ejemplo de un pseudo-código para derivar un índice de contexto a partir de las coordenadas de un componente de frecuencia objetivo del proceso en un sub-bloque de acuerdo con un índice de patrón idxCG.
La Figura 24 ilustra disposiciones de valores de los índices de contexto en el procedimiento de derivación de índices de contexto que utiliza el pseudo-código ilustrado en la Figura 23.
La Figura 25 es un diagrama que ilustra otro ejemplo de un pseudo-código para derivar un índice de contexto a partir de las coordenadas de un componente de frecuencia objetivo del proceso en un sub-bloque de acuerdo con un índice de patrón idxCG.
La Figura 26 ilustra disposiciones de valores de los índices de contexto en el procedimiento de derivación de índices de contexto que utiliza el pseudo-código ilustrado en la Figura 25.
La Figura 27 ilustra un orden de exploración en cuatro dominios parciales 2*2 de un sub-bloque.
La Figura 28 es un diagrama que ilustra otro ejemplo de un pseudo-código para derivar un índice de contexto a partir de las coordenadas de un componente de frecuencia objetivo del proceso en un sub-bloque de acuerdo con un índice de patrón idxCG.
La Figura 29 ilustra disposiciones de valores de los índices de contexto en el procedimiento de derivación de índices de contexto que utiliza el pseudo-código ilustrado en la Figura 28.
La Figura 30 es un diagrama que ilustra una configuración general de un pseudo-código para realizar un procedimiento de derivación de índices de contexto en relación con el ejemplo de modificación 5.
La Figura 31 ilustra disposiciones de valores de los índices de contexto en el procedimiento de derivación de índices de contexto cuando se establece un valor de umbral específico en el pseudo-código ilustrado en la Figura 30.
La Figura 32 ilustra disposiciones de valores de los índices de contexto en el procedimiento de derivación de índices de contexto cuando se establece otro valor de umbral en el pseudo-código ilustrado en la Figura 30.
La Figura 33 ilustra disposiciones de valores de los índices de contexto en el procedimiento de derivación de índices de contexto cuando se establece otro valor de umbral en el pseudo-código ilustrado en la Figura 30.
La Figura 34 es un diagrama que ilustra otro ejemplo de un pseudo-código para derivar un índice de contexto a partir de las coordenadas de un componente de frecuencia objetivo del proceso en un sub-bloque de acuerdo con un índice de patrón idxCG.
La Figura 35 ilustra disposiciones de valores de los índices de contexto en el procedimiento de derivación de índices de contexto que utiliza el pseudo-código ilustrado en la Figura 33.
La Figura 36 es un diagrama que ilustra las posiciones de un sub-bloque adyacente derecho A, un sub-bloque adyacente inferior B y un sub-bloque adyacente inferior derecho C con respecto a un sub-bloque objetivo del proceso X.
La Figura 37 es un diagrama que ilustra otro ejemplo de un pseudo-código para derivar un índice de contexto a partir de las coordenadas de un componente de frecuencia objetivo del proceso en un sub-bloque de acuerdo con un índice de patrón idxCG.
La Figura 38 ilustra disposiciones de valores de los índices de contexto en el procedimiento de derivación de índices de contexto que utiliza el pseudo-código ilustrado en la Figura 37.
La Figura 39 es un diagrama de flujo que ilustra un flujo de un proceso de decodificación de coeficientes de transformación realizado por una unidad de decodificación de coeficientes de transformación incluida en el aparato de decodificación de imágenes en movimiento.
La Figura 40 es un diagrama de flujo que ilustra los detalles de un proceso de decodificación de un indicador de presencia/ausencia de coeficiente en sub-bloque.
La Figura 41 es un diagrama de flujo que ilustra detalles de un proceso de decodificar cada indicador de presencia de coeficiente de transformación distinto de cero significant_coeff_flag en un sub-bloque.
La Figura 42 es un diagrama de flujo que ilustra un ejemplo de un flujo de un proceso de derivación de índices de contexto en una unidad de codificación de indicador de presencia/ausencia de coeficiente.
La Figura 43 es un diagrama de bloques que ilustra una configuración de un aparato de codificación de imágenes en movimiento según una forma de realización.
La Figura 44 es un diagrama de bloques que ilustra una configuración de una unidad de codificación de código de longitud variable incluida en el aparato de codificación de imágenes en movimiento de acuerdo con la forma de realización.
Figura 45 es un diagrama de bloques que ilustra una configuración de una unidad de codificación de información residual de cuantificación incluida en el aparato de codificación de imágenes en movimiento de acuerdo con la forma de realización de la presente invención.
La Figura 46 es un diagrama de bloques que ilustra una configuración de una unidad de codificación de indicador de presencia/ausencia de coeficiente en sub-bloque de acuerdo con la forma de realización.
La Figura 47 es un diagrama de bloques que ilustra un segundo ejemplo de configuración de la unidad de codificación de indicador de presencia/ausencia de coeficiente de acuerdo con la forma de realización.
La Figura 48 ilustra configuraciones de un equipo de transmisión equipado con el aparato de codificación de imágenes en movimiento y un equipo de recepción equipado con el aparato de decodificación de imágenes en movimiento, en la que la Figura 48(a) ilustra el equipo de transmisión equipado con el aparato de codificación de imágenes en movimiento, y la Figura 48(b) ilustra el equipo de recepción equipado con el aparato de decodificación de imágenes en movimiento.
La Figura 49 ilustra configuraciones de un equipo de grabación equipado con un aparato de codificación de imágenes en movimiento y un equipo de reproducción equipado con el aparato de decodificación de imágenes en movimiento, en la que la Figura 49(a) ilustra el equipo de grabación equipado con el aparato de codificación de imágenes en movimiento, y la Figura 49(b) ilustra el equipo de reproducción equipado con el aparato de decodificación de imágenes en movimiento.
La Figura 50 es un diagrama que ilustra unas posiciones de un sub-bloque adyacente derecho A y de un sub-bloque adyacente inferior B con respecto a un sub-bloque objetivo del proceso X.
La Figura 51 es un diagrama que ilustra un ejemplo de un pseudo-código de la técnica relacionada para derivar un índice de contexto a partir de las coordenadas de un componente de frecuencia objetivo del proceso en un subbloque de acuerdo con un índice de patrón idxCG.
La Figura 52 ilustra disposiciones de valores de los índices de contexto en el procedimiento de derivación de índices de contexto que utiliza el pseudo-código ilustrado en la Figura 51.
La Figura 53 ilustra disposiciones de valores de los índices de contexto en el procedimiento de derivación de índices de contexto cuando se establece otro valor de umbral en el pseudo-código ilustrado en la Figura 30.
La Figura 54 es un diagrama que ilustra otro ejemplo de un pseudo-código para derivar un índice de contexto a partir de las coordenadas de un componente de frecuencia objetivo del proceso en un sub-bloque de acuerdo con un índice de patrón idxCG.
La Figura 55 ilustra disposiciones de valores de los índices de contexto en el procedimiento de derivación de índices de contexto que utiliza el pseudo-código ilustrado en la Figura 54.
La Figura 56 ilustra un ejemplo de otro pseudo-código para realizar disposiciones de valores de los índices de contexto ilustradas en la Figura 29.
La Figura 57 ilustra un ejemplo de otro pseudo-código para realizar disposiciones de valores de los índices de contexto ilustradas en la Figura 31.
La Figura 58 ilustra un ejemplo de otro pseudo-código para realizar disposiciones de valores de los índices de contexto ilustradas en la Figura 32.
La Figura 59 ilustra un ejemplo de otro pseudo-código para realizar disposiciones de valores de los índices de contexto ilustradas en la Figura 33.
La Figura 60 ilustra un ejemplo de otro pseudo-código para realizar disposiciones de valores de los índices de contexto ilustradas en la Figura 53.
La Figura 61 ilustra disposiciones de valores de los índices de contexto en el procedimiento de derivación de índices de contexto cuando se establece otro valor de umbral en el pseudo-código ilustrado en la Figura 30 (Ejemplo de modificación 5-6).
La Figura 62 es un diagrama que ilustra otro ejemplo de un pseudo-código para derivar un índice de contexto a partir de las coordenadas de un componente de frecuencia objetivo del proceso en un sub-bloque de acuerdo con un índice de patrón idxCG en relación con el ejemplo de modificación 5-6.
La Figura 63 ilustra disposiciones de valores de los índices de contexto en el procedimiento de derivación de índices de contexto cuando se establece otro valor de umbral en el pseudo-código ilustrado en la Figura 30 (Ejemplo de modificación 5-7).
La Figura 64 es un diagrama que ilustra otro ejemplo de un pseudo-código para derivar un índice de contexto a partir de las coordenadas de un componente de frecuencia objetivo del proceso en un sub-bloque de acuerdo con un índice de patrón idxCG en relación con el ejemplo de modificación 5-7.
La Figura 65 es un diagrama de flujo que ilustra una operación de derivación de un índice de contexto relativo a un indicador de presencia/ausencia de coeficiente de transformación en la unidad de codificación de indicador de presencia/ausencia de coeficiente 124 en relación con el ejemplo de modificación 8.
La Figura 66 ilustra un ejemplo de un índice de contexto asignado a cada posición de coeficiente de una UT de 4*4 en una unidad de derivación de contexto de posición 124b.
La Figura 67 es un diagrama de flujo que ilustra una operación más detallada de la etapa SX103-3 de la Figura 65. La Figura 68 es una tabla que ilustra una asignación de índices de contexto relativos a un indicador de presencia/ausencia de coeficiente de transformación en relación con el ejemplo de modificación 8.
La Figura 69 es una tabla que ilustra una asignación de índices de contexto relativos a un indicador de presencia/ausencia de coeficiente de transformación en una técnica comparativa (NPL 3).
La Figura 70 es un diagrama que ilustra un pseudo-código para derivar un índice de contexto a partir de las coordenadas de un componente de frecuencia objetivo del proceso en un sub-bloque de acuerdo con un índice de patrón idxCG y una dirección de exploración (índice de exploración scanIdx) en relación con el ejemplo de modificación 8-2.
La Figura 71 ilustra disposiciones de valores de los índices de contexto en el procedimiento de derivación de índices de contexto que utiliza el pseudo-código ilustrado en la Figura 70.
La Figura 72 ilustra disposiciones de valores de los índices de contexto cuando cada uno de los coeficientes de peso y los valores de umbral de la exploración rápida horizontal y exploración rápida vertical de un patrón 0 se establece igual a otro valor en el pseudo-código ilustrado en la Figura 70.
La Figura 73 es un diagrama que ilustra otro ejemplo de un pseudo-código para derivar un índice de contexto a partir de las coordenadas de un componente de frecuencia objetivo del proceso en un componente de sub-bloque según un índice de patrón idxCG y una dirección de exploración (índice de exploración scanIdx) en relación con el ejemplo de modificación 8-2.
La Figura 74 es un diagrama de flujo que ilustra los detalles de una operación de un proceso de agregación de un offset de índice de contexto en la técnica comparativa (NPL 3), y es un diagrama de flujo que ilustra los detalles de una operación correspondiente a la etapa SX103 de la Figura 65.
Descripción de formas de realización
Se describirá un aparato de codificación y un aparato de decodificación de acuerdo con una forma de realización de la presente invención. Además, el aparato de decodificación según la forma de realización decodifica una imagen en movimiento a partir de datos codificados. Por lo tanto, en lo sucesivo, se denominará "aparato de decodificación de imágenes en movimiento". Además, el aparato de codificación según la presente forma de realización genera datos codificados codificando una imagen en movimiento. Por lo tanto, en lo sucesivo, se denominará "aparato de codificación de imágenes en movimiento".
Sin embargo, el alcance al que es aplicable la presente invención no se limita a esto. En otras palabras, según queda claro en la siguiente descripción, las características de la presente invención se establecen incluso en un caso en el que no se permita una pluralidad de fotogramas. Es decir, la presente invención es aplicable generalmente a un aparato de decodificación y un aparato de codificación independientemente de si un objetivo es o no es una imagen en movimiento o una imagen estática.
[Configuración de datos codificados #1]
Con referencia a la Figura 2, se describirá un ejemplo de configuración de datos codificados #1 que son generados por un aparato de codificación de imágenes en movimiento 2 y son decodificados por un aparato de decodificación de imágenes en movimiento. Los datos codificados #1 incluyen a modo de ejemplo una secuencia y una pluralidad de imágenes que forman la secuencia.
En una capa de secuencia se determinan unos conjuntos de datos que son referenciados por el aparato de decodificación de imágenes en movimiento 1 con el fin de decodificar una secuencia objetivo del proceso. 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.
La Figura 2 ilustra estructuras de jerarquías que son iguales a o inferiores que una capa de imágenes en los datos codificados #1. Las Figuras 2(a) a 2(d) son diagramas que ilustran respectivamente una capa de imágenes que determina la imagen PICT, una capa de segmentos que determina un segmento S, una capa de bloques de árbol que determina un bloque de árbol TBLK y una capa de UC que determina una unidad de codificación (UC; Codification Unit: CU) incluida en el bloque de árbol TBLK.
(Capa de imágenes)
En la capa de imágenes se determinan unos conjuntos de datos que son referenciados por el aparato de decodificación de imágenes en movimiento 1 con el fin de decodificar una imagen objetivo del proceso PICT (en lo sucesivo, también denominada imagen objetivo). La imagen PICT incluye un encabezado de imagen PH y segmentos S1 a Sns (en el que NS indica un número total de segmentos incluidos en la imagen PICT) según se ilustra en la Figura 2(a).
Además, a continuación, en un caso en el que no es necesario diferenciar entre sí los respectivos segmentos de S1 a Sns, se pueden omitir los subíndices. Además, esto también es lo mismo para otros datos que se incluyen en los datos codificados #1 que se describen a continuación y a los que se les asigna un subíndice.
El encabezado de imagen PH incluye un grupo de parámetros de codificación referenciado por el aparato de decodificación de imágenes en movimiento 1 con el fin de determinar un procedimiento de decodificación de una imagen objetivo.
(Capa de segmentos)
En la capa de segmentos, se determinan unos conjuntos de datos que son referenciados por el aparato de decodificación de imágenes en movimiento 1 con el fin de decodificar un segmento objetivo del proceso S (en lo sucesivo, también denominado "segmento objetivo"). El segmento S incluye un encabezado de segmento SH y bloques de árbol TBLK1 a TBLKnc (en el que NC indica un número total de bloques de árbol incluidos en el segmento S) según se ilustra en la Figura 2(b).
El encabezado de segmento SH incluye un grupo de parámetros de codificación referenciado por el aparato de decodificación de imágenes en movimiento 1 con el fin de determinar un procedimiento de decodificación de un segmento objetivo. Una información de designación de tipo de segmento (slice_type) para designar un tipo de segmento es un ejemplo de un parámetro de codificación incluido en el encabezado de segmento SH.
Unos tipos de segmento que pueden ser designados por la información de designación de tipo de segmento pueden incluir (1) un segmento I que utiliza sólo intra-predicción durante la codificación, (2) un segmento P que utiliza unipredicción o intra-predicción durante la codificación, (3) un segmento B que utiliza uni-predicción, bi-predicción o intra-predicción, y similares.
Además, el encabezado de segmento SH incluye un parámetro de filtro FP que se refiere a un filtro de bucle que está incluido en el aparato de decodificación de imágenes en movimiento 1. El parámetro de filtro FP incluye un grupo de coeficientes de filtro. El grupo de coeficientes de filtro incluye (1) información de designación de número de tomas para designar un número de tomas de filtro, (2) coeficientes de filtro de a0 hasta aNT-1 (en el que NT indica un número total de coeficientes de filtro incluidos en el grupo de coeficientes de filtro), y (3) un offset o desplazamiento. (Capa de bloques de árbol)
En la capa de bloques de árbol se determinan unos conjuntos de datos que son referenciados por el aparato de decodificación de imágenes en movimiento 1 con el fin de decodificar un bloque de árbol objetivo del proceso TBLK (en lo sucesivo, también denominado bloque de árbol objetivo).
El bloque de árbol TBLK incluye un encabezado de bloque de árbol TBLK e información de unidad de codificación UC1 a UCnl (en el que NL indica un número total de elementos de información de unidad de codificación incluidos en el bloque de árbol TBLK). En este documento, primero, se realizará una descripción de una relación entre el bloque de árbol TBLK y la información de unidad de codificación UC.
El bloque de árbol TBLK se divide en unidades para especificar el tamaño de bloque utilizado para cada proceso de intra-predicción o inter-predicción y transformación.
Las unidades del bloque de árbol TBLK se obtienen mediante una subdivisión recursiva en árboles cuaternarios. Una estructura de árbol obtenida a través de la subdivisión recursiva en árboles cuaternarios se denomina en lo sucesivo árbol de codificación.
En lo sucesivo, una unidad correspondiente a una hoja que es un nodo terminal del árbol de codificación se denomina nodo de codificación. Además, el nodo de codificación es una unidad básica en un proceso de codificación y, por lo tanto, el nodo de codificación se denomina en lo sucesivo unidad de codificación (UC).
En otras palabras, la información de unidad de codificación UC1 a UCnl es información correspondiente a cada nodo de codificación (unidad de codificación) que se obtiene realizando una subdivisión recursiva en árboles cuaternarios en el bloque de árbol TBLK.
Además, una raíz del árbol de codificación es correlacionada con el bloque de árbol TBLK. En otras palabras, el bloque de árbol TBLK es correlacionado con el nodo más alto de una estructura de árbol obtenida a través de una subdivisión en árboles cuaternarios, incluyendo recursivamente una pluralidad de nodos de codificación.
Además, un tamaño de cada nodo de codificación es una mitad de un tamaño de un nodo de codificación (es decir, una unidad de un nodo superior de una jerarquía del correspondiente nodo de codificación) verticalmente y horizontalmente.
Además, un tamaño tomado por cada nodo de codificación depende de la información de designación de tamaño y de la profundidad jerárquica máxima de un nodo de codificación, incluido en el conjunto de parámetros de secuencia SPS de los datos codificados #1. Por ejemplo, en un caso en el que un tamaño del bloque de árbol TBLK es 64*64 píxeles, y la profundidad jerárquica máxima es 3, un nodo de codificación en una jerarquía que es igual a o menor que el bloque de árbol TBLK puede tomar cualquiera de los cuatro tipos de tamaños, es decir, 64*64 píxeles, 32*32 píxeles, 16*16 píxeles, y 8*8 píxeles.
(Encabezado de bloque de árbol)
Un encabezado de bloque de árbol TBLKH incluye parámetros de codificación referenciados por el aparato de decodificación de imágenes en movimiento 1 con el fin de determinar un procedimiento de decodificación de un bloque de árbol objetivo. Específicamente, según se ilustra en la Figura 2(c), se incluye información de división de bloque de árbol SP_TBLK para designar un patrón de división de un bloque de árbol objetivo en respectivas UC, y una diferencia de parámetros de cuantificación Aqp (qp_delta) para designar un tamaño de una etapa de cuantificación.
La información de división de bloque de árbol SP_TBLK es información que indica un árbol de codificación para dividir un bloque de árbol y, específicamente, información para designar una forma, tamaño y posición en un bloque de árbol objetivo de cada Uc incluida en el bloque de árbol objetivo.
Además, la información de división de bloque de árbol SP_TBLK no puede incluir explícitamente una forma o un tamaño de una UC. Por ejemplo, la información de división de bloque de árbol SP_TBLk puede ser un conjunto de indicadores (split_coding_unit_flag) que indican el bloque de árbol objetivo completo o un dominio parcial de un bloque de árbol dividido en cuatro partes. En este caso, se puede especificar una forma o un tamaño de cada UC utilizando una forma o un tamaño de un bloque de árbol conjuntamente.
Además, la diferencia de parámetros de cuantificación Aqp es una diferencia qp-qp' entre un parámetro de cuantificación qp en un bloque de árbol objetivo y un parámetro de cuantificación qp' en un bloque de árbol que es codificado justo antes que el correspondiente bloque de árbol objetivo.
(Capa de UC)
En la capa de UC se determinan unos conjuntos de datos que son referenciados por el aparato de decodificación de imágenes en movimiento 1 con el fin de decodificar una UC objetivo del proceso (en lo sucesivo, también denominada UC objetivo).
En este documento, antes de la descripción detallada del contenido de datos incluidos en la información de la unidad de codificación UC, se describirá una estructura de árbol de datos incluidos en la UC. Un nodo de codificación es un nodo de raíces de un árbol de predicción (PT: prediction tree) y un árbol de transformación (TT: transform tree). Se describirán el árbol de predicción y el árbol de transformación.
En el árbol de predicción, un nodo de codificación se divide en uno o más bloques de predicción, y se determinan una posición y un tamaño de cada bloque de predicción. En otras palabras, el bloque de predicción es un dominio o una pluralidad de dominios que no se superponen entre sí, formando el nodo de codificación. Además, el árbol de predicción incluye uno o una pluralidad de bloques de predicción obtenidos a través de la división descrita anteriormente.
Se realiza un proceso de predicción para cada bloque de predicción. En lo sucesivo, el bloque de predicción que es la unidad de predicción también se denomina unidad de predicción (UP; PU: prediction unit).
Los tipos de divisiones en el árbol de predicción incluyen a grosso modo dos tipos de intra-predicción e inter­ predicción.
En un caso de intra-predicción, como procedimiento de división, hay 2N*2N (que es el mismo tamaño que el de un nodo de codificación) y N*N.
Además, en un caso de inter-predicción, como procedimiento de división, hay 2N*2N (que es el mismo tamaño que el de un nodo de codificación), 2N*N, N*2N, N*N, y similares.
Además, en el árbol de transformación, un nodo de codificación se divide en uno o más bloques de transformación, y se determina una posición y un tamaño de cada bloque de transformación. En otras palabras, el bloque de transformación es un dominio o una pluralidad de dominios que no se superponen entre sí, formando el nodo de codificación. Además, el árbol de transformación incluye uno o una pluralidad de bloques de transformación obtenidos a través de la división descrita anteriormente.
Se realiza un proceso de transformación para cada bloque de predicción. En lo sucesivo, el bloque de transformación que es la unidad de transformación también se denomina unidad de transformación (UT; transformation unit: TU). Un tamaño de UT está representado por un valor logarítmico log2TrafoWidth de una anchura y un valor log2TrafoHeight de una altura de un bloque de transformación. Un tamaño de UT también es representado por un valor log2TrafoSize obtenido a partir de la siguiente ecuación.
log2TrafoSize = (log2Tra£oWiclth+log2TrafoHeight) >> 1
En lo sucesivo, una UT que tiene una anchura W * altura H se denominará UT W*H (por ejemplo, UT de 4*4). (Estructura de datos de la información de unidad de codificación)
A continuación se realizará, con referencia a la Figura 2(d), una descripción detallada del contenido de datos incluidos en la información de unidad de codificación UC. Según se ilustra en la Figura 2(d), la información de unidad de codificación UC incluye, específicamente, un indicador de modo de salto SKIP, información del tipo de predicción de UC Pred_type, información de árbol de predicción PTI, e información de árbol de transformación Tt I.
[Indicador de salto]
El indicador de salto SKIP es un indicador que indica si se aplica o no se aplica un modo de salto a una UC objetivo, y en un caso en el que un valor del indicador de salto SKIP es igual a 1, es decir, se aplica el modo de salto a una UC objetivo, se omite la información de árbol de predicción PTI en la información de unidad de codificación UC. Además, se omite el indicador de salto SKIP en un segmento I.
[Información del tipo de predicción de UC]
La información del tipo de predicción de UC Pred_type incluye información del procedimiento de predicción de UC PredMode e información del tipo de división en UP PartMode. En algunos casos, la información del tipo de predicción de UC se denomina simplemente información del tipo de predicción.
La información del procedimiento de predicción de UC PredMode designa una de entre intra-predicción (intra-UC) e inter-predicción (inter-UC) como procedimiento de generación de imagen pronosticada para cada UP incluida en una UC objetivo. Además, en lo sucesivo, los tipos de salto, intra-predicción e inter-predicción se denominan modos de predicción de UC en una UC objetivo.
La información del tipo de división en UP PartMode designa un tipo de división en UP que es un patrón de división de una unidad de codificación objetivo (UC) en UP. En lo sucesivo, según se ha mencionado anteriormente, la división de una unidad de codificación objetivo (UC) en UP se denomina división en UP según un tipo de división en UP.
Por ejemplo, la información del tipo de división en UP PartMode puede ser un índice que indica el tipo de patrón de división en UP, y puede designar una forma, un tamaño y una posición en un árbol de predicción objetivo, de cada UP incluida en el árbol de predicción objetivo.
Además, un tipo de división en UP seleccionable es diferente dependiendo del procedimiento de predicción de UC y del tamaño de UC. Además, un tipo de división en UP seleccionable es diferente en cada caso de inter-predicción e intra-predicción. Además, más adelante se describirán detalles del tipo de división en UP.
[Información de PT]
La información de Pt (árbol de predicción) PTI es información relativa a un PT incluido en una UC objetivo. En otras palabras, la información de PT PTI es un conjunto de información relativa a cada una de las UP o a una pluralidad de las mismas incluidas en un PT. Según se ha descrito anteriormente, la generación de una imagen pronosticada se realiza en las unidades de UP y, por lo tanto, se referencia a la información de PT PTI cuando la imagen pronosticada es generada por el aparato de decodificación de imágenes en movimiento 1. La información de PT PTI incluye información de UP de la PUI1 a la PUInp (en el que NP indica un número total de UP incluidas en un PT objetivo) que incluyen información de predicción en cada UP según se ilustra en la Figura 2(d).
La información de predicción PUI incluye un parámetro del aparato de procesamiento de imágenes PP_Intra o un parámetro de inter-predicción PP_Inter de acuerdo con un procedimiento de predicción designado por la información del tipo de predicción Pred_mode. En lo sucesivo, una UP a la que se aplica intra-predicción se denominará intra-UP, y una UP a la que se aplica inter-predicción se denominará inter-UP.
El parámetro de inter-predicción PP_Inter incluye parámetros de codificación que son referenciados cuando el aparato de decodificación de imágenes en movimiento 1 genera una imagen inter-pronosticada mediante inter­ predicción.
El parámetro de inter-predicción PP_Inter puede ser, por ejemplo, un indicador de fusión (merge_flag), un índice de fusión (merge_idx), un índice de vector de movimiento estimado (mvp_idx), un índice de imagen de referencia (ref_idx), un indicador de inter-predicción (inter_pred_flag) y una diferencia de vectores de movimiento (mvd).
El parámetro de intra-predicción PP_Inter incluye parámetros de codificación que son referenciados cuando el aparato de decodificación de imágenes en movimiento 1 genera una imagen pronosticada a través de la inter­ predicción.
El parámetro de inter-predicción PP_Inter puede ser, por ejemplo, un indicador del modo de predicción estimado, un índice de modo de predicción estimado y un índice de modo de predicción restante.
Además, el parámetro de intra-predicción puede incluir un indicador de modo PCM que indica si se utiliza o no un modo PCM. En un caso en el que el indicador de modo PCM esté codificado e indique que se utiliza un modo PCM, se omite cada uno de entre un proceso de predicción (intra), un proceso de transformación y un proceso de codificación de entropía.
[Información de TT]
La información de Tt (árbol de transformación) TTI es información sobre un árbol de transformación incluido en una UC. En otras palabras, la información de árbol de transformación TTI es un conjunto de información relativa a cada una de las UT o a una pluralidad de UT incluidas en un TT, y es referenciada cuando el aparato de decodificación de imágenes en movimiento 1 decodifica datos residuales. Además, en lo sucesivo, una UT es referenciada como bloque en algunos casos.
Según se ilustra en la Figura 2(d), la información de árbol de transformación TTI incluye información de división de árbol de transformación SP_TU, e información de UT de la TUI1 a la TUInt (en el que NT indica un número total de bloques incluidos en una UC objetivo).
La información de división de árbol de transformación SP_TU es, específicamente, información para determinar una forma, un tamaño y una posición en una UC objetivo, de cada Ut incluida en la UC objetivo. Por ejemplo, la información de división de árbol de transformación SP_TU puede ser realizada mediante información (split_transform_flag) que indica si un nodo objetivo será o no será dividido, e información (trafoDepth) que indica una profundidad de la división.
Además, por ejemplo, en un caso en el que el tamaño de una UC es 64*64, cada UT que se obtiene mediante división en puede tener tamaños de 32*32 píxeles hasta 4*4 píxeles.
La información de UT de TUI1 a TUInt es información relativa a cada una de las UT o a una pluralidad de UT incluidas en un TT. Por ejemplo, la información de UT TUI incluye un residual de predicción cuantificado (también denominado residual cuantificado).
Cada residual de predicción cuantificado son datos codificados generados por el aparato de codificación de imágenes en movimiento 2 que realiza los siguientes procesos 1 a 3 en un bloque objetivo del proceso.
Proceso 1: Transformación de frecuencia (por ejemplo, transformación discreta de coseno (DCT)) que se realiza en un residual de predicción obtenido sustrayendo una imagen pronosticada de una imagen objetivo codificada.
Proceso 2: Se cuantifica un coeficiente de transformación obtenido en el proceso 1.
Proceso 3: Se realiza una codificación de longitud variable en el coeficiente de transformación cuantificado en el proceso 2.
Además, el parámetro de cuantificación qp indica un tamaño de una etapa de cuantificación QP que se utiliza para que el aparato de codificación de imágenes en movimiento 2 cuantifique el coeficiente de transformación (QP=2qp/6). (Tipo de división en UP)
El tipo de división en UP incluye un total de los siguientes ocho tipos de patrones que asumen que el tamaño de una UC objetivo es 2N*2N. En otras palabras, hay cuatro divisiones simétricas que incluyen 2N*2N píxeles, 2N*N píxeles, N*2N píxeles y N*N píxeles, y cuatro divisiones asimétricas que incluyen 2N*nU píxeles, 2N*nD píxeles, nL*2N píxeles y nR*2N píxeles. Además, N indica 2m (en el que m es un número entero de 1 o más). En lo sucesivo, un dominio que se obtiene dividiendo una UC simétrica también se denomina partición.
Las Figuras 3(a) a 3(h) ilustran específicamente las posiciones de unos límites de UP incluida en una UC, para respectivos tipos de inclusión.
La Figura 3(a) ilustra un tipo de división en UP de 2N*2N en el que no se divide una UC. Además, las Figuras 3(b), 3(c) y 3(d) respectivamente ilustran unas formas de particiones en casos en que los tipos de división en UP son 2N*N, 2N*nU y 2NXnD. Además, las Figuras 3(e), 3(f) y 3(g) respectivamente ilustran unas formas de particiones en casos en que los tipos de división en UP son N*2N, nL*2N y nR*2N. Además, la Figura 3(h) ilustra una forma de una partición en un caso en el que un tipo de división en UP es N*N.
Los tipos de divisiones en UP de las Figuras 3(a) y 3(h) también se denominan divisiones cuadradas en base a la forma de la partición. Además, los tipos de división en UP de las Figuras 3(b) a 3(g) también se denominan división no cuadrada.
Además, en las Figuras 3(a) a 3(h), un número dado a cada dominio indica un número de identificación del dominio, y se realiza un proceso en los dominios en un orden de los números de identificación. En otras palabras, el número de identificación indica un orden de exploración del dominio.
[Tipo de división en caso de inter-predicción]
En una inter-UP, se definen siete tipos excepto para N*N (Figura 3(h)) entre los ocho tipos de división. Además, las seis divisiones asimétricas se denominan partición de movimiento asimétrica (AMP).
Además, un valor específico de N es determinado por un tamaño de una UC a la que pertenece una UP correspondiente, y se determinan unos valores específicos de nU, nD, nL, y nR según un valor de N. Por ejemplo, una inter-UC de 128x128 píxeles se puede dividir en inter-UP de 128x128 píxeles, 128x64 píxeles, 64x128 píxeles, 64x64 píxeles, 128x32 píxeles, 128x96 píxeles, 32x128 píxeles, y 96x128 píxeles.
[Tipo de división en caso de intra-predicción]
Los dos patrones de división siguientes se definen en una intra-UP. Los patrones son un patrón de división 2NX2N en el que una UC objetivo no es dividida, es decir, la UC objetivo se trata como una única Up , y un patrón N*N en el que la UC objetivo se divide simétricamente en cuatro UP.
Por lo tanto, la intra-UP puede tomar los patrones de división de las Figuras 3(a) y 3(h) en los ejemplos ilustrados en la Figura 3.
Por ejemplo, una la intra-UP de 128x128 píxeles se puede dividir en 128x128 píxeles y 64x64 píxeles.
(Tipo de división de UT)
A continuación, se describirá un tipo de división de UT con referencia a las Figuras 3(i) a 3(o). Los patrones de división de UT son determinados por el tamaño de una UC, profundidad (trafoDepth) de la división y el tipo de división en UP de una UP objetivo.
Además, los patrones de división de UT incluyen una subdivisión en árboles cuaternarios cuadrados y una subdivisión en árboles cuaternarios no cuadrados.
Las Figuras 3(i) hasta (k) ilustran unos tipos de división en los que un nodo cuadrado es subdividido en árboles cuaternarios cuadrados o no cuadrados. Más específicamente, la Figura 3(i) ilustra un tipo de división en el que un nodo cuadrado es subdividido en árboles cuaternarios cuadrados. Además, la Figura 3(j) ilustra un tipo de división en el que un nodo cuadrado es subdividido en árboles cuaternarios rectangulares, cada uno de los cuales es largo transversalmente. Además, la Figura 3(k) ilustra un tipo de división en el que un nodo cuadrado es subdividido en árboles cuaternarios rectangulares, cada uno de los cuales es largo longitudinalmente.
Además, las Figuras 3(l) a 3(o) ilustran unos tipos de división en los que un nodo no cuadrado se subdivide en árboles cuaternarios cuadrados o no cuadrados. Más específicamente, la Figura 3(l) ilustra un tipo de división en el que un nodo rectangular que es largo transversalmente se subdivide en árboles cuaternarios rectangulares, cada uno de los cuales es largo transversalmente. Además, la Figura 3(m) ilustra un tipo de división en el que un nodo rectangular que es largo transversalmente se subdivide en árboles cuaternarios cuadrados. Además, la Figura 3(n) ilustra un tipo de división en el que un nodo rectangular que es largo longitudinalmente se subdivide en árboles cuaternarios rectangulares, cada uno de los cuales es largo longitudinalmente. Además, la Figura 3(o) ilustra un tipo de división en el que un nodo rectangular que es largo longitudinalmente se subdivide en árboles cuaternarios cuadrados.
(Configuración de información residual cuantificada QD)
La información residual cuantificada QD puede incluir información tal como una posición del último coeficiente de transformación distinto de cero, la presencia o ausencia de un coeficiente de transformación distinto de cero en un sub-bloque, la presencia o ausencia de un coeficiente de transformación distinto de cero en cada posición y un nivel y un signo de un coeficiente de transformación.
Por ejemplo, la información residual cuantificada QD puede incluir las sintaxis last_significant_coeff_x, last_significant_coeff_y, significant_coeff_group_flag, significant_coeff_flag, coeff_abs_level_greater1_flag, coeff_abs_greater2_flag, coeff_sign_flag, y coeff_abs_level_remaining.
Los coeficientes de transformación son explorados secuencialmente desde un lado de frecuencia baja hacia un lado de frecuencia alta. Este orden de exploración se puede denominar exploración hacia adelante. Por otro lado, al revés de la exploración hacia adelante, también se utiliza una exploración desde un lado de frecuencia alta a uno de frecuencia baja. Este orden de exploración se puede denominar exploración hacia atrás.
Las sintaxis last_significant_coeff_x y last_significant_coeff_y son sintaxis que indican una posición del último coeficiente de transformación distinto de cero en la dirección de exploración hacia adelante. Además, cada sintaxis puede subdividirse en un prefijo y un sufijo y codificarse. Una posición de último coeficiente se puede derivar utilizando los prefijos de proceso de último coeficiente last_significant_coeff_x_prefix y last_significant_coeff_y_prefix y los sufijos de posición de último coeficiente last_significant_coeff_x_suffix, y last_significant_coeff_y_suffix.
La sintaxis significant_coeff_flag es una sintaxis que indica la presencia o ausencia de un coeficiente de transformación distinto de cero en cada componente de frecuencia en la dirección de exploración hacia atrás con un coeficiente de transformación distinto de cero como punto de partida. La sintaxis significant_coeff_flag es un indicador que es igual a 0 si un coeficiente de transformación es igual a 0 y es igual a 1 si un coeficiente de transformación no es igual a 0, con respecto a cada uno de entre xC e yC. Además, la sintaxis significant_coeff_flag también se denomina indicador de presencia/ausencia de coeficiente de transformación o simplemente indicador de presencia/ausencia de coeficiente. Además, significant_coeff_flag puede no ser tratado como una sintaxis separada sino que puede ser incluida en la sintaxis (por ejemplo, coeff_abs_level) indicando un valor absoluto de un coeficiente de transformación. En este caso, un primer bit de la sintaxis coeff_abs_level corresponde a significant_coeff_flag, y el siguiente proceso de derivación de un índice de contexto de significant_coeff_flag corresponde a un proceso de derivación de un índice de contexto del primer bit de la sintaxis coeff_abs_level.
Una unidad de decodificación de código de longitud variable 11 incluida en el aparato de decodificación de imágenes en movimiento 1 divide un bloque de árbol en una pluralidad de sub-bloques, y decodifica el significant_coeff_group_flag en las unidades de proceso de los sub-bloques. La información residual cuantificada QD incluye un indicador (indicador de presencia/ausencia de coeficiente en sub-bloque significant_coeff_group_flag) que indica que al menos un coeficiente de transformación distinto de cero en el sub-bloque de las unidades de sub­ bloque.
En lo sucesivo, se describirá con referencia a las Figuras 4 a 6, un resumen de un proceso de decodificación.
En primer lugar, con referencia a la Figura 4, se describirá un ejemplo de división en sub-bloques. La Figura 4 ilustra una relación entre un bloque y un sub-bloque. La Figura 4(a) ilustra un ejemplo en el que una UT de 4*4 está formada por un único sub-bloque que incluye componentes 4*4. La Figura 4(b) ilustra un ejemplo en el que una UT de 8*8 está formada por cuatro sub-bloques, cada uno de los cuales incluye componentes 4*4. La Figura 4(c) ilustra un ejemplo en el que una UT 16x16 está formada por dieciséis sub-bloques, cada uno de los cuales incluye componentes 4*4. Además, una relación entre un tamaño de UT y un tamaño de sub-bloque y un procedimiento de división no se limita a estos ejemplos.
La Figura 5(a) es un diagrama que ilustra un orden de exploración para una pluralidad de sub-bloques (en la Figura 5(a), 4*4=16) obtenidos dividiendo un bloque. En lo sucesivo, una exploración en las unidades de sub-bloques también se denomina exploración de sub-bloques. En un caso en el que los sub-bloques sean explorados como en la Figura 5(a), se exploran respectivos dominios de frecuencia en los sub-bloques en un orden de exploración ilustrado en la Figura 5(b). El orden de exploración ilustrado en las Figuras 5(a) y 5(b) se denomina "exploración hacia adelante".
La Figura 5(c) es un diagrama que ilustra un orden de exploración para una pluralidad de sub-bloques (en la Figura 5(b), 4*4=16) obtenidos dividiendo un bloque. En un caso en el que los sub-bloques sean explorados como en la Figura 5(c), se exploran respectivos dominios de frecuencia en los sub-bloques en un orden de exploración ilustrado en la Figura 5(d). El orden de exploración ilustrado en las Figuras 5(c) y 5(d) se denomina "exploración hacia atrás". Un eje transversal de cada una de las Figuras 6(a) a 6(f) expresa una frecuencia horizontal xC (en el que 0<xC<7), y un eje longitudinal de las mismas expresa una frecuencia vertical yC (en el que 0<yC<7). En la siguiente descripción, entre los dominios parciales incluidos en un dominio de frecuencia, un dominio parcial designado por la frecuencia horizontal xC y la frecuencia vertical yC también se denomina componente de frecuencia (xC,yC). Además, un coeficiente de transformación para el componente de frecuencia (xC,yC) también se denomina Coeff (xC,yC). Un coeficiente de transformación Coeff (0,0) indica un componente DC, y otros coeficientes de transformación indican componentes distintos del componente DC. En la presente especificación, (xC,yC) puede denominarse (u,v).
La Figura 6(a) es un diagrama que ilustra un orden de exploración en un caso en el que un bloque con un tamaño de UT de 8*8 se divide en sub-bloques, cada uno de los cuales con un tamaño de 4*4, y se exploran respectivos componentes de frecuencia en la exploración hacia adelante.
La Figura 6(b) es un diagrama que ejemplifica coeficientes de transformación distintos de cero en un dominio de frecuencia que incluye componentes de frecuencia 8*8. En un caso del ejemplo ilustrado en la Figura 6(b), el last_significant_coeff_x es igual a 6, y el last_significant_coeff_y es igual a 0.
La Figura 6(c) es un diagrama que ilustra cada valor del indicador de presencia/ausencia de coeficiente en sub­ bloque significant_coeff_group_flag que es decodificado para cada sub-bloque en un caso en el que los coeficientes de transformación objetivo de la decodificación son los ilustrados en la Figura 6(b). Un valor del significant_coeff_group_flag relativo a un sub-bloque que incluye al menos un coeficiente de transformación distinto de cero se establece igual a 1, y un valor del significant_coeff_group_flag relativo a un sub-bloque que no incluye ningún coeficiente de transformación distinto de cero se establece igual a 0.
La Figura 6(d) es un diagrama que ilustra cada valor de la sintaxis significant_coeff_flag que indica la presencia o ausencia de un coeficiente de transformación distinto de cero en un caso en el que los coeficientes de transformación objetivo de la decodificación son los ilustrados en la Figura 6(b). Para un sub-bloque en el que el significant_coeff_group_flag es igual a 1, el significant_coeff_flag es decodificado en el orden de exploración hacia atrás, y para un sub-bloque en el que el significant_coeff_group_flag es igual a 0, el significant_coeff_flag para todos los componentes de frecuencia incluidos en el sub-bloque se establece igual a 0 sin decodificar el significant_coeff_flag (un sub-bloque inferior izquierdo de la Figura 6(d)).
La Figura 6(e) es un diagrama que ilustra cada valor obtenido decodificando las sintaxis coeff_abs_level_greater1_flag, coeff_abs_level_greater2_flag, y coeff_abs_level_remaining en un caso en el que los coeficientes de transformación objetivo de la decodificación son los ilustrados en la Figura 6(b).
La Figura 6(f) es un diagrama que ilustra la sintaxis coeff_sign_flag en un caso en el que los coeficientes de transformación objetivo de la decodificación son los ilustrados en la Figura 6(b).
La decodificación de las sintaxis coeff_abs_level_greater1_flag, coeff_abs_level_greater2_flag, y coeff_abs_level_remaining que indican un valor de cambios de cada coeficiente de transformación de acuerdo con un modo (modo de alto rendimiento). El modo de alto rendimiento es desactivado en el momento del inicio de un sub-bloque, y el modo de alto rendimiento es activado en el momento en que el número de coeficientes de transformación distintos de cero en un sub-bloque es igual a o mayor que una constante predeterminada. En el modo de alto rendimiento, se omite la decodificación de algunas sintaxis.
La sintaxis coeff_abs_level_greater1_flag es un indicador que indica si un valor absoluto de un coeficiente de transformación es o no es superior a 1, y es codificado para un componente de frecuencia en la que un valor de la sintaxis significant_coeff_flag es igual a 1. Cuando un valor de un coeficiente de transformación es superior a 1, un valor de coeff_abs_level_greater1_flag es igual a 1 y, en caso contrario, un valor de coeff_abs_level_greater1_flag es igual a 0. Además, en el modo de alto rendimiento se omite la decodificación de coeff_abs_level_greater1_flag. La sintaxis coeff_abs_level_greater2_flag es un indicador que indica si un valor absoluto de un coeficiente de transformación es o no es superior a 2, y es codificado cuando un valor de coeff_abs_level_greater1_flag es igual a 1. Cuando un valor absoluto de un coeficiente de transformación es superior a 2, un valor del indicador coeff_abs_level_greater2_flag es igual a 1, y, en caso contrario, un valor del indicador coeff_abs_level_greater2_flag es igual a 0. Además, se omite la decodificación del indicador coeff_abs_level_greater2_flag después de la primera vez en cada sub-bloque, y en un caso en el que el modo de alto rendimiento.
En un caso en el que un valor absoluto de un coeficiente de transformación es un nivel base predeterminado baseLevel, la sintaxis coeff_abs_level_remaining es una sintaxis para designar un valor absoluto del coeficiente de transformación. En un caso en el que se omite la decodificación del indicador coeff_abs_level_greater1_flag, se omite el coeff_abs_level_greater2_flag, y en un caso en el que el coeff_abs_level_greater1_flag es igual a 1, se codifica el coeff_abs_level_greater2_flag cuando un valor del mismo es igual a 1. Un valor de la sintaxis coeff_abs_level_remaining es obtenido sustrayendo el baseLevel de un valor absoluto de un coeficiente de transformación. Por ejemplo, coeff_abs_level_remaining=1 indica que un valor absoluto de un coeficiente de transformación es baseLevel+1. Además, el nivel base se determina de la siguiente manera.
baseLevel=1 (en un caso en el que se omite la decodificación del indicador coeff_abs_level_greater1_flag) baseLevel=2 (en un caso en el que se omite la decodificación del indicador coeff_abs_level_greater2_flag en casos distintos del descrito anteriormente)
baseLevel=3 (en un caso en el que la decodificación del indicador coeff_abs_level_greater2_flag es igual a 1 en casos distintos de los descritos anteriormente)
La sintaxis coeff_sign_flag es un indicador que indica el signo (positivo o negativo) de un coeficiente de transformación, y es codificado para un componente de frecuencia en el que un valor de la sintaxis coeff_sign_flag es igual a 1, excepto en un caso en el que realice una ocultación de signos. La sintaxis coeff_sign_flag se establece igual a 1 si un coeficiente de transformación es positivo, y se establece igual a 0 si un coeficiente de transformación es negativo.
Además, la ocultación de signos se refiere a un procedimiento en el que el signo de un coeficiente de transformación no se codifica explícitamente, sino que se calcula mediante cálculo.
La unidad de decodificación de código de longitud variable 11 incluida en el aparato de decodificación de imágenes en movimiento 1 puede generar un coeficiente de transformación Coeff (xC,yC) para cada componente de frecuencia decodificando las sintaxis last_significant_coeff_x, last_significant_coeff_y, significant_coeff_flag, coeff_abs_level_greater1_flag, coeff_abs_level_greater2_flag y coeff_sign_flag, coeff_abs_level_remaining.
Además, un conjunto de coeficientes de transformación distintos de cero en un dominio específico (por ejemplo, una UT) también se denomina mapa de significancia en algunos casos.
Más adelante se describirán detalles de los procesos de decodificación de diversas sintaxis, y ahora se describirá una configuración del aparato de decodificación de imágenes en movimiento 1.
(Aparato de decodificación de imágenes en movimiento 1)
En lo sucesivo, se realizará una descripción del aparato de decodificación de imágenes en movimiento 1 de acuerdo con la presente forma de realización con referencia a las Figuras 1 y las Figuras 7 a 26. El aparato de decodificación de imágenes en movimiento 1 es un aparato de decodificación que utiliza la técnica propuesta en la codificación de vídeo de alta eficiencia (HEVC), que es un códec posterior del estándar H. 264/MPEG-4. AVC.
La Figura 7 es un diagrama de bloques que ilustra una configuración del aparato de decodificación de imágenes en movimiento 1. Según se ilustra en la Figura 7, el aparato de decodificación de imágenes en movimiento 1 incluye la unidad de decodificación de código de longitud variable 11, una unidad de generación de imagen pronosticada 12, una unidad de cuantificación inversa/transformación inversa 13, un agregador 14, una memoria de fotogramas 15 y un filtro de bucle 16. Además, según se ilustra en la Figura 7, la unidad de generación de imagen pronosticada 12 incluye una unidad de recuperación de vectores de movimiento 12a, una unidad de generación de imagen inter­ pronosticada 12b, una unidad de generación de imagen intra-pronosticada 12c y una unidad de determinación del tipo de predicción 12d. El aparato de decodificación de imágenes en movimiento 1 es un aparato que genera una imagen en movimiento #2 decodificando los datos codificados #1.
(Unidad de decodificación de código de longitud variable 11)
La Figura 8 es un diagrama de bloques que ilustra una configuración de una parte principal de la unidad de decodificación de código de longitud variable 11. Según se ilustra en la Figura 8, la unidad de decodificación de código de longitud variable 11 incluye una unidad de decodificación de información residual cuantificada 111, una unidad de decodificación de parámetros de predicción 112, una unidad de decodificación de información del tipo de predicción 113 y una unidad de decodificación de parámetros de filtro 114.
La unidad de decodificación de código de longitud variable 11 decodifica un parámetro de predicción PP relativo a cada partición a partir de los datos codificados #1 en la unidad de decodificación de parámetros de predicción 112 y suministra el parámetro de predicción PP a la unidad de generación de imagen pronosticada 12. Específicamente, la unidad de decodificación de parámetros de predicción 112 decodifica parámetros de inter-predicción PP_Inter que incluyen un índice de imagen de referencia, un índice de vector de movimiento de estimación y un residual del vector de movimiento a partir de los datos codificados #1 en relación con una partición de inter-predicción, y suministra los parámetros de inter-predicción PP_Inter a la unidad de recuperación de vector de movimiento 12a. Por otra parte, en relación con una partición de intra-predicción, parámetros de intra-predicción PP_Intra que incluyen un indicador del modo de predicción estimado, un índice de modo de predicción estimado y un índice de modo de predicción restante son decodificados a partir de los datos codificados #1 y son suministrados a la unidad de generación de imagen intra-pronosticada 12c.
Además, la unidad de decodificación de código de longitud variable 11 decodifica la información del tipo de predicción Pred_type para cada partición a partir de los datos codificados #1 en la unidad de decodificación de información del tipo de predicción 113, y suministra la información del tipo de predicción a la unidad de determinación del tipo de predicción 12d. Además, la unidad de decodificación de código de longitud variable 11 decodifica la información residual cuantificada QD relativa a un bloque, y la diferencia de parámetros de cuantificación Apq a partir de los datos codificados #1 en la unidad de decodificación de información residual cuantificada 111, y suministra la información decodificada a la unidad de cuantificación inversa/transformación inversa 13. Además, la unidad de decodificación de código de longitud variable 11 decodifica el parámetro del filtro PP a partir de los datos codificados #1 en la unidad de decodificación de parámetros del filtro 114 y suministra el parámetro del filtro al filtro de bucle 16. Además, más adelante se describirá una configuración específica de la unidad de decodificación de información residual cuantificada 111, por lo que se omite su descripción en este punto.
(Unidad de generación de imagen pronosticada 12)
La unidad de generación de imagen pronosticada 12 identifica si cada partición es una partición de inter-predicción en la que se va a realizar la inter-predicción o una partición de intra-predicción en la que se va a realizar la intrapredicción en base a la información del tipo de predicción Pred_type para cada partición. Además, en el primer caso, se genera una imagen inter-pronosticada Pred_Inter, y se suministra la imagen inter-pronosticada Pred_Inter generada al agregador 14 como una imagen pronosticada Pred, y, en el segundo caso, se genera una imagen intrapronosticada Pred_Intra, y se suministra la imagen intra-pronosticada generada Pred_Intra al agregador 14. Además, en un caso en el que se aplica un modo de salto a una UT objetivo del proceso, la unidad de generación de imagen pronosticada 12 omite la decodificación de otros parámetros que pertenecen a la UP.
(Unidad de recuperación de vector de movimiento 12a)
La unidad de recuperación de vector de movimiento 12a recupera un vector de movimiento mv relativo a cada partición de inter-predicción a partir de un residual del vector de movimiento relativo a la partición y un vector de movimiento recuperado mv' relativo a otra partición. Específicamente, (1) se deriva un vector de movimiento de estimación a partir del vector de movimiento recuperado mv' un procedimiento de estimación designado por el índice de vector de movimiento de estimación, y (2) se obtiene el vector de movimiento mv agregando el vector de movimiento de estimación derivado al residual del vector de movimiento. Además, el vector de movimiento recuperado mv' relativo a otra partición puede ser leído de la memoria de fotogramas 15. La unidad de recuperación de vector de movimiento 12a suministra el vector de movimiento recuperado mv a la unidad de generación de imagen inter-pronosticada 12b junto con un correspondiente índice de imagen de referencia RI.
(Unidad de generación de imagen inter-pronosticada 12b)
La unidad de generación de imagen inter-pronosticada 12b genera una imagen de compensación de movimiento mc relativa a cada partición de inter-predicción a través de la predicción inter-fotogramas. Específicamente, la imagen de compensación de movimiento mc se genera a partir de una imagen decodificada filtrada de forma adaptativa P_ALF' designada por el índice de imagen de referencia RI suministrado por la unidad de recuperación de vector de movimiento 12a, utilizando el vector de movimiento mv suministrado por la unidad de recuperación de vector de movimiento 12a. En este documento, la imagen decodificada filtrada de forma adaptativa P_ALF' es una imagen obtenida por el filtro de bucle 16 que realiza un proceso de filtrado en una imagen decodificada en la que ya se ha completado la decodificación de todos los fotogramas, y la unidad de generación de imagen inter-pronosticada 12b puede leer un valor de píxel de cada píxel que forma la imagen decodificada filtrada de forma adaptativa P_ALF' de la memoria de fotogramas 15. La imagen de compensación de movimiento mc generada por la unidad de generación de imagen inter-pronosticada 12b es suministrada a la unidad de determinación del tipo de predicción 12d como la imagen inter-pronosticada Pred_Inter.
(Unidad de generación de imagen intra-pronosticada 12c)
La unidad de generación de imagen intra-pronosticada 12c genera una imagen pronosticada Pred_Intra relativa a cada partición de intra-predicción. Específicamente, en primer lugar, se especifica un modo de predicción en base a los parámetros de intra-predicción PP_Intra suministrados por la unidad de decodificación de código de longitud variable 11, y asigna el modo de predicción especificado a una partición objetivo, por ejemplo, en un orden de exploración por rastreo.
En este documento, la especificación de un modo de predicción basado en los parámetros de intra-predicción PP_Intra se puede realizar de la siguiente manera. (1) Se decodifica el indicador del modo de predicción estimado y, en un caso en el que el indicador del modo de predicción estimado indique que un modo de predicción para una partición objetivo del proceso es el mismo que los modos de predicción asignados a las particiones periféricas de la partición objetivo, el modo de predicción asignado a las particiones periféricas de la partición objetivo es asignado a la partición objetivo. (2) Por otra parte, en un caso en el que el indicador del modo de predicción estimado indica que un modo de predicción para una partición objetivo del proceso no es el mismo que los modos de predicción asignados a las particiones periféricas de la partición objetivo, se decodifica el índice de modo de predicción restante y se asigna a la partición objetivo un modo de predicción indicado por el índice de modo de predicción restante.
La unidad de generación de imagen intra-pronosticada 12c genera la imagen pronosticada Pred_Intra a partir de una imagen decodificada P (localmente) a través de la predicción inter-fotogramas de acuerdo con un procedimiento de predicción indicado por el modo de predicción asignado a la partición objetivo. La imagen intra-pronosticada Pred_Intra generada por la unidad de generación de imagen intra-pronosticada 12c es suministrada a la unidad de determinación del tipo de predicción 12d. Además, la unidad de generación de imagen intra-pronosticada 12c puede generar la imagen pronosticada Predjntra a partir de la imagen decodificada filtrada de forma adaptativa P_ALF a través de la predicción inter-fotogramas.
Se describirá, con referencia a la Figura 9, la definición del modo de predicción. La Figura 9 ilustra una definición del modo de predicción. Según se ilustra en la Figura 9, se definen treinta y seis tipos de modos de predicción, y se especifican los modos de predicción mediante números del "0" al "35" (índices de modo de intra- predicción). Además, según se ilustra en la Figura 10, se asigna el siguiente nombre a cada modo de predicción. En otras palabras, el "0" es "Intra_Planar (modo de predicción plana)", el "1" es "Intra DC (modo de predicción intra-DC)", del "2" al "34" son "Intra Angular (predicción de dirección)", y el "35" es "Intra-predicción de Luma". El "35" es específico para un modo de predicción de croma, y es un modo para realizar una predicción de croma en base a una predicción de luminancia. En otras palabras, el modo de predicción de croma "35" es un modo de predicción que utiliza un valor de píxel de luminancia y un valor de píxel de croma. El modo de predicción de croma "35" también se denomina modo LM. El número de modos de predicción (intraPredModeNum) es "35" independientemente de un tamaño de un bloque objetivo.
(Unidad de determinación del tipo de predicción 12d)
La unidad de determinación del tipo de predicción 12d determina si cada partición es una partición de inter­ predicción en la que debe realizarse la inter-predicción o una partición de intra-predicción en la que debe realizarse la intra-predicción en base a la información del tipo de predicción Pred_type para una UP a la que pertenece cada partición. Además, en el primer caso, la imagen inter-pronosticada Pred_Inter generada en la unidad de generación de imagen inter-pronosticada 12b es suministrada al agregador 14 como una imagen pronosticada Pred, y, en el segundo caso, la imagen intra-pronosticada Pred_Intra es generada en la unidad de generación de imagen intrapronosticada 12c es suministrada al agregador 14 como una imagen pronosticada Pred.
(Unidad de cuantificación inversa/transformación inversa 13)
La unidad de cuantificación inversa/transformación inversa 13 (1) cuantifica inversamente el coeficiente de transformación Coeff que ha sido decodificado a partir de la información residual cuantificada QD de los datos codificados #1, (2) realiza una transformación de frecuencia inversa tal como la transformación de coseno discreta inversa (DCT) en un coeficiente de transformación CoeffJQ obtenido a través de la cuantificación inversa, y (3) suministra un residual de predicción D obtenido a través de la transformación de frecuencia inversa al agregador 14. Además, en un caso en el que el coeficiente de transformación Coeff decodificado a partir de la información residual cuantificada QD es cuantificado inversamente, la unidad de cuantificación inversa/transformación inversa 13 deriva una etapa de cuantificación QP a partir de la diferencia de parámetros de cuantificación Aqp suministrada por la unidad de decodificación de código de longitud variable 11. El parámetro de cuantificación qp puede ser derivado agregando la diferencia de parámetros de cuantificación Apq a un parámetro de cuantificación qp' relativo a una UT que es sometida previamente a una cuantificación inversa y una transformación de frecuencia inversa, y la etapa de cuantificación QP puede ser derivada a partir del parámetro de cuantificación qp mediante, por ejemplo, QP=2pq/6. Además, la generación del residual de predicción D por parte de la unidad de cuantificación inversa/transformación inversa 13 se realiza en la unidad de UT o en las unidades de bloques en las que se divide la UT.
Además, por ejemplo, si un tamaño de un bloque objetivo es 8*8, se establece una posición de un píxel en el bloque objetivo igual a (i,j) (en el que 0<i<7 y 0<i<7), un valor del residual de predicción D en la posición (i,j) es indicado con D(i,j), y se cuantifica inversamente un coeficiente de transformación en un componente de frecuencia (u,v) (en el que 0<u<7 y 0<v<7) es indicado con Coeff_IQ(u,v), la transformación de coseno discreta inversa realizada por la unidad de cuantificación inversa/transformación inversa 13 es determinada, por ejemplo, por la siguiente ecuación (1). [Ecuación 1]
Figure imgf000023_0001
En este documento, (u,v) son variables que corresponden a las descritas anteriormente (xC,yC). C(u) y C(v) son determinadas.
C(u)=1/V2 (u=0)
C(u)=1 (u*0)
C(v)=1/V2 (v=0)
C(v)=1 (v*0)
(Agregador 14)
El agregador 14 genera una imagen decodificada P agregando la imagen pronosticada Pred suministrada por la unidad de generación de imagen pronosticada 12 al residual de predicción D suministrado por la unidad de cuantificación inversa/transformación inversa 13. La imagen decodificada P generada se almacena en la memoria de fotogramas 15.
(Filtro de bucle 16)
El filtro de bucle 16 funciona (1) como un filtro de desbloqueo (DF) que realiza un suavizado (proceso de desbloqueo) en una imagen periférica en un límite de bloque o un límite de partición en la imagen decodificada P, y (2) como un filtro adaptativo (ALF) que realiza un proceso de filtrado adaptativo en la imagen a la que se ha aplicado el filtro de desbloqueo, utilizando el parámetro de filtro FP.
(Detalles de la unidad de decodificación de información residual cuantificada 111)
La unidad de decodificación de información residual cuantificada 111 tiene una configuración para decodificar el coeficiente de transformación cuantificado Coeff (xC,yC) para cada componente de frecuencia (xC,yC) a partir de la información residual cuantificada QD incluida en los datos codificados #1. En este documento, xC e yC son índices que indican una posición de cada componente de frecuencia en un dominio de frecuencia, y son índices que corresponden respectivamente a la frecuencia horizontal u ya la frecuencia vertical v descritas anteriormente. En lo sucesivo, el coeficiente de transformación cuantificado Coeff también puede ser simplemente denominado como un coeficiente de transformación Coeff.
La Figura 11 es un diagrama de bloques que ilustra una configuración de la unidad de decodificación de información residual cuantificada 111. Según se ilustra en la Figura 11, la unidad de decodificación 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ódigo aritmética 130.
(Unidad de decodificación de código aritmética 130)
La unidad de decodificación de código aritmética 130 tiene una configuración para decodificar cada bit incluido en la información residual cuantificada QD por referencia al contexto, e incluye una unidad de registro/actualización de contexto 131 y una unidad de decodificación de bits 132 según se ilustra en la Figura 11.
[Unidad de registro/actualización de contexto 131]
La unidad de registro/actualización de contexto 131 tiene una configuración para registrar y actualizar una variable de contexto CV que es administrada por cada índice de contexto ctxIdx. En este documento, la variable de contexto CV incluye (1) un símbolo superior MPS (símbolo más probable) del cual una probabilidad de ocurrencia es alta, y (2) un índice de estado de probabilidad pStateIdx para designar una probabilidad de ocurrencia del símbolo superior MPS.
La unidad de registro/actualización de contexto 131 actualiza la variable de contexto CV referenciando al índice de contexto ctxIdx suministrado por cada elemento constituyente incluido en la unidad de decodificación de coeficientes de transformación 120 y un valor de un Bin decodificado por la unidad de decodificación de bits 132, y registra la variable de contexto actualizada CV hasta la siguiente actualización. Además, el símbolo superior MPS es igual a 0 o 1. Además, se actualizan el símbolo superior MPS y el índice de estado de probabilidad pStateIdx siempre que la unidad de decodificación de bits 132 decodifica un solo Bin.
Además, el índice de contexto ctxIdx puede designar directamente un contexto para cada componente de frecuencia, y puede ser un valor de incremento a partir de un desplazamiento (offset) de un índice de contexto que se establece para cada UT que es un objetivo del proceso (esto también es lo mismo para lo que se describe a continuación).
[Unidad de decodificación de bits 132]
La unidad de decodificación de bits 132 decodifica cada bit (también denominado Bin) incluido en la información residual cuantificada QD referenciando a la variable de contexto CV que se registra en la unidad de registro/actualización de contexto 131. Además, se suministra un valor del Bin obtenido mediante decodificación a cada elemento constituyente incluido en la unidad de decodificación de coeficientes de transformación 120. Además, también se suministra un valor del Bin obtenido mediante decodificación a la unidad de registro/actualización de contexto 131 para que sea referenciado para la actualización de la variable de contexto CV.
(Unidad de decodificación de coeficientes de transformación 120)
Como se ilustra en la Figura 11, la unidad de decodificación de coeficientes de transformación 120 incluye una unidad de decodificación de posición de último coeficiente 121, una unidad de almacenamiento de tabla de órdenes de exploración 122, una unidad de control de decodificación de coeficientes 123, una unidad de decodificación de indicador de presencia/ausencia de coeficiente, una unidad de decodificación de valor de coeficiente 125, una unidad de almacenamiento de coeficientes decodificados 126 y una unidad de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque 127.
[Unidad de decodificación de posición de último coeficiente 121]
La unidad de decodificación de posición de último coeficiente 121 analiza el bit decodificado (Bin) suministrado por la unidad de decodificación de bits 132 para decodificar last_significant_coeff_x y last_significant_coeff_y. Las sintaxis decodificadas last_significant_coeff_x y last_significant_coeff_y son suministradas a la unidad de control de decodificación de coeficientes 123. Además, la unidad de decodificación de posición de último coeficiente 121 calcula el índice de contexto ctxIdx para determinar el contexto utilizado para decodificar el Bin de las sintaxis last_significant_coeff_x y last_significant_coeff_y en la unidad de decodificación de código aritmética 130. El índice de contexto calculado ctxldx es suministrado a la unidad de registro/actualización de contexto 131.
[Unidad de almacenamiento de tabla de órdenes de exploración 122]
La unidad de almacenamiento de tabla de órdenes de exploración 122 almacena una tabla que proporciona una posición de un componente de frecuencia objetivo del proceso en un dominio de frecuencia utilizando un tamaño de una UT (bloque) objetivo del proceso, un índice de exploración que indica el tipo de dirección de exploración y un índice de identificación de componente de frecuencia que se determina de acuerdo con un orden de exploración. Un ejemplo de dicha tabla de órdenes de exploración puede incluir ScanOrder. ScanOrder es una tabla para obtener una posición (xC,yC) en un dominio de frecuencia de un componente de frecuencia objetivo del proceso en base a un tamaño de anchura log2TrafoWidth de una UT objetivo del proceso, un tamaño de altura log2TrafoHeight de la UT objetivo del proceso, un índice de exploración scanIdx, y un índice de identificación de componente de frecuencia n que se determina de acuerdo con un orden de exploración. Además, en lo sucesivo, una posición (xC,yC) en un dominio de frecuencia de un componente de frecuencia objetivo del proceso puede denominarse simplemente posición de coeficiente (xC,yC).
Además, la tabla almacenada en la unidad de almacenamiento de tabla de órdenes de exploración 122 es designada por un tamaño de una UT (bloque) objeto de proceso y el índice de exploración scanIdx asociado con un índice de modo de predicción de un modo de intra-predicción. En un caso en el que un procedimiento del modo de predicción utilizado para una UT objetivo del proceso es intra-predicción, la unidad de control de decodificación de coeficientes 123 referencia a una tabla designada por un tamaño de UT y el índice de exploración scanIdx asociado con un modo de predicción de la UT, con el fin de determinar un orden de exploración de los componentes de frecuencia.
La Figura 12 ilustra un ejemplo del índice de exploración scanIdx que es designado por un índice de modo de intrapredicción IntraPredMode y un valor log2TrafoSize para designar un tamaño de UT. En la Figura 12, log2TrafoSize-2=0 indica que un tamaño de UT es 4*4 (correspondiente a 4*4 píxeles), y log2TrafoSize-2=1 indica que un tamaño de UT es 8*8 (correspondiente a 8*8 píxeles). Además, log2TrafoSize-2=2 y log2TrafoSize-2=3 indican unos tamaños de UT de 16*16 y 32*32 respectivamente.
Según se ilustra en la Figura 12, por ejemplo, en un caso en el que el tamaño de UT es 4*4, y el índice de modo de intra-predicción es igual a 1, se utiliza el índice de exploración igual a 0, y en un caso en el que el tamaño de UT es 4*4, y el índice de modo de intra-predicción es igual a 6, se utiliza el índice de exploración igual a 2.
La Figura 13(a) ilustra un tipo de exploración ScanType designado por cada valor del índice de exploración scanIdx. Según se ilustra en la Figura 13(a), en un caso en el que el índice de exploración es igual a 0, se designa una exploración en diagonal hacia arriba a la derecha; en un caso en el que el índice de exploración es igual a 1, se designa una exploración rápida horizontal; y en un caso en el que el índice de exploración es igual a 2, se designa una exploración rápida vertical.
Además, en un caso en el que la información del procedimiento de predicción de UC PredMode es inter-predicción, se puede derivar un índice de exploración utilizando un tamaño de Ut . En un caso en el que, en un tamaño de UT, una anchura y una altura del tamaño de UT sean iguales entre sí, se utiliza un orden de exploración (índice de exploración = 0) distinto de la exploración rápida horizontal y exploración rápida vertical. En un caso en el que una anchura y una altura del tamaño de UT no son iguales entre sí, y una anchura del tamaño de UT es mayor que la altura de la misma, se utiliza el orden de exploración rápida horizontal (índice de exploración = 1). Por otro lado, en un caso en el que una altura de un tamaño de UT es mayor que su anchura, se utiliza el orden de exploración rápida vertical (índice de exploración = 2).
Además, las Figuras 13(b) a 13(d) ilustran ejemplos de órdenes de exploración de los respectivos tipos de exploración (la exploración rápida horizontal, la exploración rápida vertical y la exploración en diagonal hacia arriba a la derecha) designados por el índice de exploración scanIdx en un caso en el que el tamaño de UT es 4x4. Además, los ejemplos respectivos ilustrados en las Figuras 13(b) a 13(d) ilustran una dirección de exploración hacia adelante. La exploración rápida horizontal ilustrada en la Figura 13(b) se caracteriza porque los coeficientes son explorados en diagonal en dirección horizontal para cada línea en las unidades de sub-bloques pequeños en los que el sub-bloque se divide en unas mitades superior e inferior, y es adecuada para un caso en el que los coeficientes se concentran en componentes de frecuencia horizontal. Además, la exploración rápida vertical ilustrada en la Figura 13(c) se caracteriza porque los coeficientes son explorados en diagonal en la dirección vertical para cada línea en las unidades de sub-bloques pequeños en los que el sub-bloque se divide en unas mitades izquierda y derecha, y es adecuada para un caso en el que los coeficientes se concentran en componentes de frecuencia verticales.
Las Figuras 14(a) a 14(c) ilustran un ejemplo de orden de exploración en cada tipo de exploración designado por el índice de exploración scanIdx en un caso en el que un tamaño de UT es 8*8 y un tamaño de sub-bloque es 4*4. Además, cada ejemplo ilustrado en las Figuras l4(a) a 14(c) ilustra una dirección de exploración hacia adelante. La exploración rápida horizontal ilustrada en la Figura 14(a) se caracteriza porque los coeficientes son explorados en diagonal en dirección horizontal para cada línea en las unidades de sub-bloques pequeños en los que el sub-bloque se divide en unas mitades superior e inferior, y es adecuada para un caso en el que los coeficientes se concentran en componentes de frecuencia horizontal. Además, la exploración rápida vertical ilustrada en la Figura 14(b) se caracteriza porque los coeficientes son explorados en diagonal en la dirección vertical para cada línea en las unidades de sub-bloques pequeños en los que el sub-bloque se divide en unas mitades izquierda y derecha, y es adecuada para un caso en el que los coeficientes se concentran en componentes de frecuencia verticales. Además, la exploración en diagonal hacia arriba a la derecha ilustrada en la Figura 14(c) se caracteriza por el hecho de que los coeficientes son explorados en una dirección diagonal superior derecha, y es adecuada para un caso en el que no hay una directividad particular en una distribución de coeficientes.
La Figura 15 ilustra ejemplos de órdenes de exploración en los tipos de exploración designados por el índice de exploración scanIdx en un caso en el que un tamaño de UT es 8*8 y los tamaños de sub-bloques son diferentes entre sí.
La Figura 15(a) ilustra un ejemplo de exploración rápida horizontal en un caso en el que un tamaño de UT es 8*8, y un tamaño de sub-bloque es 8*2. El procedimiento en el que los coeficientes se exploran en diagonal en dirección horizontal para cada línea en las unidades de sub-bloques 8*2 (sub-bloques largos transversalmente) ilustrado en la Figura 15(a) es adecuado para un caso en el que los coeficientes se concentran en componentes de frecuencia horizontales.
La Figura 15(b) ilustra un ejemplo de la exploración rápida vertical en un caso en el que un tamaño de UT es 8*8, y un tamaño de sub-bloque es 2*8. El procedimiento en el que los coeficientes son explorados en diagonal en la dirección vertical para cada línea en las unidades de 2*8 sub-bloques (sub-bloques largos longitudinalmente) ilustrado en la Figura 15(b) es adecuado para un caso en el que los coeficientes se concentran en componentes de frecuencia verticales.
La Figura 15(c) ilustra un ejemplo de la exploración en diagonal hacia arriba a la derecha en un caso en el que un tamaño de UT es 8*8, y un tamaño de sub-bloque es 4*4.
[Tabla de órdenes de exploración de sub-bloque]
Además, la unidad de almacenamiento de tabla de órdenes de exploración 122 almacena un orden de exploración de sub-bloque para designar un orden de exploración de sub-bloque. El orden de exploración de sub-bloque es designado por un tamaño de UT (bloque) objetivo del proceso y un índice de exploración scanIdx asociado con un índice de modo de predicción (dirección de predicción) de un modo de intra-predicción. En un caso en el que un procedimiento del modo de predicción utilizado para una UT objetivo del proceso es intra-predicción, la unidad de control de decodificación de coeficientes 123 referencia a una tabla designada por un tamaño de UT y el índice de exploración scanIdx asociado con un modo de predicción de la UT, con el fin de determinar un orden de exploración 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 un orden de un proceso de decodificación en cada elemento constituyente incluido en la unidad de decodificación de información residual cuantificada 111.
En concreto, la unidad de control de decodificación de coeficientes 123 realiza una división en sub-bloques, el suministro de cada posición de sub-bloque según un orden de exploración de sub-bloques, y el suministro de una posición de cada componente de frecuencia en un sub-bloque según un orden de exploración.
La unidad de control de decodificación de coeficientes 123 deriva un tamaño de sub-bloque de acuerdo con un orden de exploración y/o un tamaño de TU, y divide la UT en el tamaño de sub-bloque derivado para dividir la UT en sub-bloques. Un procedimiento de división es como el descrito en las Figuras 14 y 15, por lo que se omitirá su descripción en este punto.
La unidad de control de decodificación de coeficientes 123 especifica una posición del último coeficiente de transformación distinto de cero de acuerdo con la exploración hacia adelante referenciando a las sintaxis last_significant_coeff_x y last_significant_coeff_y suministradas por la unidad de decodificación de posición de último coeficiente 121, y proporciona una posición (xCG,yCG) de cada sub-bloque a la unidad de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque 127 en un orden de exploración hacia atrás de un orden de exploración que utiliza como punto de partida una posición de un sub-bloque que incluye la posición especificada del último coeficiente de transformación distinto de cero y que es determinada por la tabla de órdenes de exploración de sub-bloque almacenada en la unidad de almacenamiento de tabla de órdenes de exploración 122. Además, la unidad de control de decodificación de coeficientes 123 suministra un tamaño de una UT correspondiente y un índice de exploración scanIdx asociado con un modo de predicción de la UT, a la unidad de decodificación de indicador de presencia/ausencia coeficiente 124.
Además, en relación con un sub-bloque objetivo del proceso, la unidad de control de decodificación de coeficientes 123 suministra una posición (xC,yC) de cada componente de frecuencia incluido en el sub-bloque objetivo del proceso a la unidad de decodificación de indicador de presencia/ausencia de coeficiente 124 y a la unidad de almacenamiento de coeficiente decodificado 126 en un orden de exploración hacia atrás determinado por la tabla de órdenes de exploración almacenada en la unidad de almacenamiento de tabla de órdenes de exploración 122. En este documento, en un caso de intra-predicción, se puede utilizar como orden de exploración de cada componente de frecuencia incluido en el sub-bloque objetivo del proceso, un orden de exploración (cualquiera de entre la exploración rápida horizontal, la exploración rápida vertical y la exploración en diagonal hacia arriba a la derecha) indicado por un índice de exploración scanIdx que es designado por el índice de modo de intra-predicción IntraPredMode y un valor log2TrafoSize para designar un tamaño de UT y, en un caso de inter-predicción, se puede usar la exploración en diagonal hacia arriba a la derecha.
Según se ha mencionado anteriormente, la unidad de control de decodificación de coeficientes 123 tiene una configuración de establecer un orden de exploración de sub-bloque y un orden de exploración en un sub-bloque según una dirección de predicción de intra-predicción en un caso en el que un procedimiento de predicción que se aplica a un dominio de unidad objetivo del proceso (un bloque o una UT) es la intra-predicción.
En general, puesto que un modo de intra-predicción y una tendencia de un coeficiente de transformación están correlacionados entre sí, se cambia un orden de exploración según el modo de intra-predicción y se puede realizar una exploración adecuada para las tendencias del indicador de presencia/ausencia de coeficiente en sub-bloque y del indicador de presencia/ausencia de coeficiente. En consecuencia, es posible reducir una cantidad de código del indicador de presencia/ausencia de coeficiente en sub-bloque y del indicador de presencia/ausencia de coeficiente que son objetivos de la codificación y decodificación, y de este modo reducir una cantidad de procesamiento y mejorar la eficiencia de la codificación.
[Unidad de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque 127]
La unidad de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque 127 analiza cada uno de los Bin suministrados por la unidad de decodificación de bits 132, para decodificar la sintaxis significant_coeff_group_flag[xCG][yCG] designada por cada posición de sub-bloque (xCG,yCG). Además, la unidad de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque 127 calcula un índice de contexto ctxldx para determinar un contexto que se utiliza para el c130 para decodificar un Bin de la sintaxis significant_coeff_group_flag[xCG][yCG]. El índice de contexto calculado ctxldx es suministrado a la unidad de registro/actualización de contexto 131. En este documento, la sintaxis significant_coeff_group_flag[xCG][yCG] se establece igual a 1 en un caso en el que al menos un coeficiente de transformación distinto de cero esté incluido en un sub-bloque designado por la posición del sub-bloque (xCG,yCG), y se establece igual a 0 en un caso en el que ningún coeficiente de transformación distinto de cero está incluido. Se almacena un valor de la sintaxis decodificada significant_coeff_group_flag[xCG][yCG] en la unidad de almacenamiento de coeficiente decodificado 126.
Además, más adelante se describirá una configuración más específica de la unidad de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque 127.
[Unidad de decodificación de indicador de presencia/ausencia de coeficiente 124]
La unidad de decodificación de indicador de presencia/ausencia de coeficiente 124 de acuerdo con la presente forma de realización decodifica la sintaxis significant_coeff_flag[xC][yC] designada por cada posición del coeficiente (xC,yC). Se almacena un valor de la sintaxis decodificada significant_coeff_flag[xC][yC] en la unidad de almacenamiento de coeficiente decodificado 126. Además, la unidad de decodificación de indicador de presencia/ausencia de coeficiente 124 calcula un índice de contexto ctxldx para determinar el contexto que es para la unidad de decodificación de código aritmética 130 para decodificar un Bin de la sintaxis significant_coeff_flag[xC][yC]. El índice de contexto calculado ctxIdx es suministrado a la unidad de registro/actualización de contexto 131. Más adelante se describe una configuración específica de la unidad de decodificación de indicador de presencia/ausencia de coeficiente 124.
[Unidad de decodificación de valor de coeficiente 125]
La unidad de decodificación de valor de coeficiente 125 analiza cada Bin suministrado por la unidad de decodificación de bits 132 para decodificar las sintaxis coeff_abs_level_greater1_flag, coeff_abs_level_greater2_flag, coeff_sign_flag, y coeff_abs_level_remaining, y deriva un valor de un coeficiente de transformación (más específicamente, un coeficiente de transformación distinto de cero) en un componente de frecuencia objetivo del proceso, en base a los resultados decodificar las sintaxis. Además, se suministra el índice de contexto ctxldx utilizado para decodificar las diversas sintaxis a la unidad de registro/actualización del contexto 131. El valor derivado de un coeficiente de transformación es almacenado en la unidad de almacenamiento de coeficiente decodificado 126.
[Unidad de almacenamiento de coeficiente decodificado 126]
La unidad de almacenamiento de coeficiente decodificado 126 tiene una configuración para almacenar cada valor de un coeficiente de transformación decodificado por la unidad de decodificación de valor de coeficiente 125. Además, la unidad de almacenamiento de coeficiente decodificado 126 almacena cada valor de la sintaxis significant_coeff_flag decodificado por la unidad de decodificación de indicador de presencia/ausencia de coeficiente 124. Cada valor del coeficiente de transformación almacenado en la unidad de almacenamiento de coeficiente decodificado 126 es suministrado a la unidad de cuantificación inversa/transformación inversa 13.
(Ejemplo de configuración de la unidad de decodificación de indicador de presencia/ausencia de coeficiente en sub­ bloque 127)
A continuación, con referencia a la Figura 16, se describirá un ejemplo de configuración específica de la unidad de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque 127.
La Figura 16 es un diagrama de bloques que ilustra un ejemplo de configuración de la unidad de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque 127. Según se ilustra en la Figura 16, la unidad de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque 127 incluye una unidad de derivación de contexto de indicador de presencia/ausencia de coeficiente en sub-bloque 127a, una unidad de almacenamiento de indicador de presencia/ausencia de coeficiente en sub-bloque 127b, y una unidad de establecimiento de indicador de presencia/ausencia de coeficiente en sub-bloque 127c.
En lo sucesivo, se describirá la unidad de decodificación de indicador de presencia/ausencia de coeficiente en sub­ bloque 127 mediante un ejemplo de un caso en el que una posición de sub-bloque (xCG,yCG) es suministrada por la unidad de control de decodificación de coeficientes 123 en un orden de exploración hacia atrás. Además, en este caso, la posición del sub-bloque (xCG,yCG) es suministrada en orden de exploración hacia adelante en una configuración de una parte del aparato de codificación que corresponde a la unidad de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque 127.
(Unidad de derivación de contexto de indicador de presencia/ausencia de coeficiente en sub-bloque 127a)
La unidad de derivación de contexto de indicador de presencia/ausencia de coeficiente en sub-bloque 127a deriva un índice de contexto asignado a un sub-bloque que es designado por cada posición sub-bloque (xCG,yCG). El índice de contexto asignado al sub-bloque se utiliza para decodificar un Bin que indica la sintaxis significant_coeff_group_flag para el sub-bloque. Además, en un caso en el que se deriva el índice de contexto, se referencia a un valor del indicador de presencia/ausencia de coeficiente en sub-bloque decodificado almacenado en la unidad de almacenamiento de indicadores de presencia/ausencia de coeficiente en sub-bloque 127b. La unidad de derivación de contexto de indicador de presencia/ausencia de coeficiente en sub-bloque 127a proporciona el índice de contexto derivado a la unidad de registro/actualización de contexto 131.
En la derivación del índice de contexto asignado a un sub-bloque, un indicador de presencia/ausencia de coeficiente en sub-bloque de un sub-bloque (xCG+1,yCG) (véase la Figura 17(b)) situado adyacente al lado derecho de la posición del sub-bloque (xCG,yCG) y un indicador de presencia/ausencia de coeficiente en sub-bloque de un subbloque (xCG,yCG+1) (véase la Figura 17(a)) situado en el lado inferior de la posición del sub-bloque (xCG,yCG) son referenciados.
En otras palabras, se deriva el índice de contexto asignado al sub-bloque, específicamente, utilizando la posición del sub-bloque (xCG,yCG), y los valores de los indicadores de presencia/ausencia de coeficiente en sub-bloque decodificados almacenados en la unidad de almacenamiento de indicadores de presencia/ausencia de coeficiente en sub-bloque 127b.
Más específicamente, el índice de contexto se establece de la siguiente manera referenciando a un valor del indicador de presencia/ausencia de coeficiente en sub-bloque significant_coeff_group_flag[xCG+1][yCG] que es decodificado para el sub-bloque (xCG+1,yCG) situado adyacente al lado derecho de la posición del sub-bloque (xCG,yCG) y a un valor del indicador de presencia/ausencia de coeficiente en sub-bloque decodificado significant_coeff_group_flag[xCG][yCG+1] que es decodificado para el sub-bloque (xCG,yCG+1) situado en el lado inferior de la posición del sub-bloque (xCG,yCG).
ctxldx = ctxIcbcQffset+Min
((significant_coeff_group„flag[xCG+l][yCG]+significant_coeff
_group_flag[xCG][yCG+l]>,1)
Además, el valor inicial ctxldxOffset es determinado por el cldx que indica un espacio de color. Además, en un caso en el que un sub-bloque decodificado situado en (xCG+1,yCG) o (xCG,yCG+1) no se encuentra presente, se trata como cero un valor de un indicador de presencia/ausencia de coeficiente en sub-bloque situado en (xCG+1,yCG) o (xCG,yCG+1).
(Unidad de almacenamiento de indicadores de presencia/ausencia de coeficiente en sub-bloque 127b)
La unidad de almacenamiento de indicadores de presencia/ausencia de coeficiente en sub-bloque 127b almacena cada valor de la sintaxis significant_coeff_group_flag que es decodificado o establecido por la unidad de establecimiento de indicador de presencia/ausencia de coeficiente en sub-bloque 127c. La unidad de establecimiento de indicador de presencia/ausencia de coeficiente en sub-bloque 127c puede leer de la unidad de almacenamiento de indicadores de presencia/ausencia de coeficiente en sub-bloque 127b la sintaxis significant_coeff_group_flag asignada a un sub-bloque adyacente.
(Unidad de establecimiento de indicador de presencia/ausencia de coeficiente en sub-bloque 127c)
La unidad de establecimiento de indicador de presencia/ausencia de coeficiente en sub-bloque 127c decodifica o establece la sintaxis significant_coeff_group_flag[xCG][yCG] analizando cada Bin suministrado por la unidad de decodificación de bits 132. Más específicamente, unidad de establecimiento de indicador de presencia/ausencia de coeficiente en sub-bloque 127c decodifica o establece la sintaxis significant_coeff_group_flag[xCG][yCG] referenciando a la posición del sub-bloque (xCG,yCG) ya la sintaxis significant_coeff_group_flag asignada a un sub­ bloque (también denominado sub-bloque adyacente) adyacente a un sub-bloque designado por la posición del sub­ bloque (xCG,yCG). Además, se suministra un valor de la sintaxis decodificada o establecida significant_coeff_group_flag[xCG][yCG] a la unidad de decodificación de indicador de presencia/ausencia de coeficiente 124.
Según se ilustra en la Figura 17(c), la unidad de establecimiento de indicador de presencia/ausencia de coeficiente en sub-bloque 127c referencia a un valor del indicador de presencia/ausencia de coeficiente en sub-bloque significant_coeff_group_flag[xCG+1][yCG] asignado al sub-bloque (xCG+1,yCG) adyacente a la posición del sub­ bloque (xCG,yCG) y un valor del indicador de presencia/ausencia de coeficiente en sub-bloque significant_coeff_group_flag[xCG][yCG+1] asignado al sub-bloque (xCG,yCG+1), para derivar un índice de contexto utilizado para decodificar el indicador de presencia/ausencia de coeficiente en sub-bloque significant_coeff_group_flag[xCG][yCG+1].
Además, en un bloque en el que el indicador de presencia/ausencia de coeficiente en sub-bloque se establece igual a 0, la unidad de codificación de indicador de presencia/ausencia del coeficiente 124 puede saltarse u omitir la decodificación del indicador de presencia/ausencia del coeficiente significant_coeff_flag y, por lo tanto, se simplifica un proceso de decodificación.
Se describirá un ejemplo específico de lo mismo con referencia a la Figura 18. En un caso en el que los coeficientes de transformación se distribuyan según se ilustra en la Figura 18(a), un indicador de presencia/ausencia de coeficiente en sub-bloque asignado a cada sub-bloque es como el que se ilustra en la Figura 18(b). En otras palabras, entre sub-bloques de 4*4, un coeficiente de transformación distinto de cero se encuentra presente en los sub-bloques de la primera fila, pero un coeficiente de transformación distinto de cero no se encuentra presente en los sub-bloques de la segunda fila y posteriores.
Por lo tanto, en el ejemplo ilustrado en la Figura 18(b), la unidad de decodificación de indicador de presencia/ausencia de coeficiente 124 puede omitir la decodificación del indicador de presencia/ausencia de coeficiente significant_coeff_flag en la decodificación de los sub-bloques de la segunda fila y posteriores.
«Ejemplo de configuración de una unidad de decodificación de indicador de presencia/ausencia de coeficiente 124>>>
En lo sucesivo, se describirá una configuración específica de la unidad de decodificación de indicador de presencia/ausencia de coeficiente 124 con referencia a la Figura 1. La Figura 1 es un diagrama de bloques que ilustra un ejemplo de configuración de la unidad de decodificación de indicador de presencia/ausencia de coeficiente 124. La unidad de decodificación de indicador de presencia/ausencia de coeficiente 124 incluye una unidad de determinación de tamaño de UT 124a, una unidad de derivación de contexto de posición 124b, una unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c, y una unidad de establecimiento de indicador de presencia/ausencia de coeficiente 124e.
(Unidad de determinación de tamaño de UT 124a)
Una posición (xC,yC) de un coeficiente de transformación que es un objetivo del proceso y unos valores logarítmicos (log2TrafoWidth y log2TrafoHeight) de un bloque de transformación son suministrados a la unidad de determinación de tamaño de UT 124a. Un tamaño de UT se obtiene calculando una anchura y una altura de un dominio de frecuencia a partir de los tamaños de valor logarítmico utilizando respectivamente (1<<log2TrafoWidth) y (1<<log2TrafoHeight). Además, pueden no usarse los tamaños de valor logarítmico, pero se puede suministrar directamente una anchura de una altura de un dominio de frecuencia.
La unidad de determinación de tamaño de UT 124a selecciona la unidad de derivación de contexto de posición 124b o la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c de acuerdo con un tamaño de UT objetivo. La unidad de derivación de contexto seleccionada deriva un índice de contexto ctxIdx.
Por ejemplo, en un caso en el que un tamaño de UT es igual a o menor que un tamaño predeterminado (por ejemplo, en un caso de una UT de 4*4), la unidad de determinación de tamaño de UT 124a selecciona la unidad de derivación de contexto de posición 124b.
Por lo tanto, la unidad de derivación de contexto de posición 124b deriva un índice de contexto ctxIdx y asigna el índice de contexto derivado a un componente de frecuencia objetivo de decodificación.
Por otro lado, en un caso en el que un tamaño de UT objetivo es mayor que el tamaño predeterminado (por ejemplo, en un caso de una UT de 8*8, una UT de 16*16 o una UT de 32*32), la unidad de determinación de tamaño de UT 124a selecciona la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c.
Por lo tanto, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto ctxIdx y asigna el índice de contexto derivado a un componente de frecuencia objetivo de decodificación.
Además, la unidad de determinación de tamaño de UT 124a no se limita a la configuración descrita anteriormente, y puede tener una configuración de derivar un índice de contexto ctxIdx que es común a unos tamaños de UT de una UT de 4*4 hasta una UT de 32*32. En otras palabras, la unidad de determinación de tamaño de UT 124a puede tener una configuración de selección de forma fija de una de entre la unidad de derivación de contexto de posición 124b y la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c, independientemente del tamaño de UT.
(Unidad de derivación de contexto de posición 124b).
La unidad de derivación de contexto de posición 124b deriva un índice de contexto ctxIdx para un componente de frecuencia objetivo en base a una posición (xC,yC) del componente de frecuencia objetivo en un dominio de frecuencia. Además, en un caso en el que se derive un índice de contexto ctxIdx, que es un valor fijo, independientemente de una posición de un componente de frecuencia, la unidad de derivación de contexto de posición 124b puede realizar el proceso de derivación.
(Unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c)
La unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c selecciona un patrón de derivación de contexto de acuerdo con la presencia o no presencia de un coeficiente de transformación distinto de cero en un sub-bloque adyacente, y deriva un índice de contexto para un componente de frecuencia objetivo de decodificación a partir de unas coordenadas del componente de frecuencia objetivo de decodificación en un sub-bloque de acuerdo con el patrón de derivación seleccionado. Más adelante se describirán detalles de ejemplos de esto.
(Unidad de establecimiento de indicador de presencia/ausencia de coeficiente 124e)
La unidad de establecimiento del coeficiente de presencia/ausencia de coeficiente 124e analiza cada uno de los Bin suministrados por la unidad de decodificación de bits 132 para establecer la sintaxis significant_coeff_flag[xC][yC]. La sintaxis establecida significant_coeff_flag[xC][yC] es suministrada a la unidad de almacenamiento de coeficiente decodificado 126.
En un caso en el que un dominio de frecuencia objetivo se divida en sub-bloques, la unidad de establecimiento de indicador de presencia/ausencia de coeficiente 124e referencia a la sintaxis significant_coeff_group_flag[xCG][yCG] asignada a un sub-bloque objetivo, y establece el significant_coeff_flag[xC][yC] igual a 0 para todos los componentes de frecuencia incluidos en el sub-bloque objetivo en un caso en el que un valor del significant_coeff_group_flag[xCG][xCG] es igual a 0.
«Ejemplos: minimización del cambio en el índice de contexto>>>
En lo sucesivo, se describirán ejemplos específicos de la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c.
Específicamente, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva el índice de contexto sigCtx de la siguiente manera.
En primer lugar, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c referencia al sub-bloque adyacente derecho ilustrado en la Figura 17(b) y al sub-bloque adyacente inferior ilustrado en la Figura 17(a), y obtiene un índice de patrón idxCG, que es un índice para especificar un patrón de derivación de contexto, a partir del indicador de presencia/ausencia de coeficiente en sub-bloque en cada uno de los sub-bloques adyacentes, utilizando la siguiente ecuación (A).
idxCG = significant_coeff_group_flag[xCG 1][yCG]
(significant_c oef f_group_flag[xCG][yCG+ 1] « 1) •••(A)
En la ecuación anterior (A), significant_coeff_group_flag es un indicador que indica que al menos un coeficiente de transformación distinto de cero se encuentra presente en un sub-bloque como el descrito anteriormente. En un caso en el que al menos un coeficiente de transformación distinto de cero se encuentra presente en un sub-bloque, un valor de al menos un coeficiente de transformación distinto de cero presente en un sub-bloque es igual a “1”, y en un caso en el que ningún coeficiente de transformación distinto de cero se encuentra presente en un sub-bloque, un valor de al menos un coeficiente de transformación distinto de cero presente en un sub-bloque es igual a “0”.
El significant_coeff_group_flag[xCG+1][yCG] indica un valor de un indicador de presencia/ausencia de coeficiente en sub-bloque decodificado que es decodificado para el sub-bloque (xCG+1,yCG) que se encuentra adyacente al lado derecho de la posición del sub-bloque (xCG,yCG), y el significant_coeff_group_flag[xCG][yCG+1] indica un valor de un indicador de presencia/ausencia de coeficiente en sub-bloque decodificado que es decodificado para el sub­ bloque (xCG,yCG+1) situado en el lado inferior de la posición del sub-bloque (xCG,yCG).
En base a la ecuación anterior (A), el índice de patrón idxCG toma valores de 0 a 3 en los siguientes patrones 0 a 3, respectivamente.
(Patrón 0)
En un caso en el que un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 0 tanto en el sub-bloque adyacente derecho (xCG+1,yCG) como en el sub-bloque adyacente inferior (xCG,yCG+1)
(Patrón 1)
En un caso en el que un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 1 en el sub-bloque adyacente derecho (xCG+1,yCG), y un valor del indicador de presencia/ausencia de coeficiente en sub­ bloque es igual a 0 en el sub-bloque adyacente inferior (xCG,yCG+1).
(Patrón 2)
En un caso en el que un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 0 en el sub-bloque adyacente derecho (xCG, yCG+1), y un valor del indicador de presencia/ausencia de coeficiente en sub­ bloque es igual a 1 en el sub-bloque adyacente inferior (xCG, yCG+1)
(Patrón 3)
En un caso en el que un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 1 tanto en el sub-bloque adyacente derecho (xCG+1, yCG) como en el sub-bloque adyacente inferior (xCG, yCG+1)
A continuación, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto para un componente de frecuencia objetivo de decodificación a partir de las coordenadas (xB,yB) del componente de frecuencia objetivo de decodificación en un sub-bloque de acuerdo con el índice de patrón idxCG obtenido utilizando la ecuación (A) anterior.
Además, pueden derivarse las coordenadas (xB,yB) en el sub-bloque utilizando una posición de coeficiente (xC,yC) y una posición de sub-bloque (xCG,yCG) en una UT. En otras palabras, las coordenadas (xB,yB) en el sub-bloque pueden ser derivadas usando xB=xC-(xCG<<2) e yB=yC-(yCG<<2). Además, las coordenadas (xB,yB) en el sub­ bloque también pueden derivarse mediante una agregación lógica de una unidad de bit utilizando un operador "&" de la posición del coeficiente (xC,yC) en una UT y "3". Es decir, las coordenadas (xB,yB) pueden obtenerse calculando xB=xC&3 e yB=yC&3.
Con referencia a las Figuras 19 y 20, se describirá un procedimiento en el que la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto.
La Figura 19 es un diagrama que ilustra un ejemplo de un pseudo-código para derivar un índice de contexto a partir de las coordenadas de un componente de frecuencia objetivo del proceso en un sub-bloque de acuerdo con un índice de patrón idxCG. Con referencia a la Figura 19, se realizará una descripción de un valor de un índice de contexto que se deriva en cada caso de los patrones 0 a 3. Además, la notación de una forma de x?y:z indica la siguiente operación lógica. En otras palabras, "si x es "verdadero" o "no es igual a 0"", se evalúa un valor de y, y en caso contrario, se evalúa un valor de z. Esto también es lo mismo para lo siguiente.
(Caso del patrón 0)
En un caso del patrón 0, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto usando sigCtx = (xB yB <= 2) ? 1 : 0.
Por lo tanto, en un caso del patrón 0, si una agregación de la coordenada xB en la dirección horizontal de las coordenadas (xB,yB) en el sub-bloque y la coordenada yB en la dirección vertical es igual a o menor que 2, un valor de un índice de contexto es igual a “1”, y, en caso contrario, un valor de un índice de contexto es igual a “0”.
En consecuencia, los valores de los índices de contexto se disponen según se ilustra en la Figura 20(a).
Además, en el patrón 0, se puede derivar un índice de contexto usando sigCtx = (xB yB < 3) ? 1 : 0.
Además, en el índice de contexto, sigCtx=0 corresponde a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja, y sigCtx=2 corresponde a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta. Además, sigCtx=1 corresponde a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia entre un caso de alta probabilidad y un caso de baja probabilidad. Además, en el ejemplo anterior, se ha descrito que sigCtx=0 corresponde a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja, y sigCtx=2 corresponde a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, pero la presente invención no se limita a ello. Alternativamente, los valores de los índices de contexto pueden establecerse de manera que sigCtx=2 corresponda a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja, y sigCtx=0 corresponda a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, y lo mismo se aplica a los siguientes ejemplos. En otras palabras, en los siguientes ejemplos, para análisis, un valor de "2" de un índice de contexto correspondiente a cada una de las coordenadas de un sub­ bloque en cada patrón de índice idxCG puede ser sustituido por "0", y un valor de "0" de un índice de contexto correspondiente a cada una de las coordenadas de un sub-bloque en cada patrón de índice idxCG puede ser sustituido por "2".
(Caso del patrón 1)
En un caso del patrón 1, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto en base a una tabla tbl1 en la que las coordenadas (xB,yB) en un sub­ bloque son correlacionadas con un índice de contexto.
Según se ilustra a modo de ejemplo en la Figura 19, la tabla tbl1 es una disposición que incluye dieciséis elementos como {1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0}.
La unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto utilizando sigCtx = tbl1[xB (yB << 2)] en base a la tabla tbl1.
Por lo tanto, los valores de los índices de contexto se disponen según se ilustra en la Figura 20(b). En otras palabras, los elementos del primero al cuarto de la disposición corresponden respectivamente al (0,0) hasta el (3,0) de la primera fila del sub-bloque ilustrado en la Figura 20(b). En lo siguiente, de manera similar, los elementos del quinto al octavo, los elementos del noveno al duodécimo, y los elementos del decimotercero al decimosexto de la disposición corresponden respectivamente a la segunda fila, la tercera fila y la cuarta fila.
(Caso del patrón 2)
En un caso del patrón 2, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto en base a una tabla tbl2 en la que las coordenadas (xB,yB) en un subbloque son correlacionadas con un índice de contexto.
Según se ilustra en la Figura 19, la tabla tbl2 es una disposición que incluye dieciséis elementos tales como {1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 0}.
La unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto usando sigCtx = tbl2[xB (yB << 2)] en base a la tabla tbl2.
Por lo tanto, los valores de los índices de contexto se disponen según se ilustra en la Figura 20(c). En otras palabras, la correspondencia entre los elementos de la disposición y las coordenadas del sub-bloque ilustrado en la Figura 20(c) es la misma que en un caso del patrón 1. Por ejemplo, los elementos del primero al cuarto de la disposición corresponden respectivamente al (0,0) hasta el (3,0) de la primera fila del sub-bloque ilustrado en la Figura 20(b).
(Caso del patrón 3)
En un caso del patrón 3, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto usando sigCtx = (xB yB <= 4) ? 2 : 1.
Por lo tanto, en un caso del patrón 3, si una agregación de la coordenada xB en la dirección horizontal de las coordenadas (xB,yB) en el sub-bloque y la coordenada yB en la dirección vertical es igual a o menor que 4, un valor de un índice de contexto es igual a “2”, y, en caso contrario, un valor de un índice de contexto es igual a “1”.
En consecuencia, los valores de los índices de contexto se disponen según se ilustra en la Figura 20(d).
Además, en el patrón 3, se puede derivar un índice de contexto usando sigCtx = (xB yB < 5) ? 2 : 1. En lo sucesivo, si la determinación se realiza en "x o menor que x" o "menor que x+1 " podrá modificarse según proceda. En este documento, se describirán ventajas de la configuración mediante la comparación con un ejemplo comparativo de acuerdo con la técnica relacionada.
En primer lugar, se supone que un orden de exploración en un sub-bloque es la exploración en diagonal hacia arriba a la derecha según se ilustra en la Figura 21. Además, el orden de exploración ilustrado en la Figura 21 es una dirección hacia adelante.
La decodificación de coeficientes de transformación se realiza en un orden de exploración hacia atrás desde "15" hasta "0" ilustrado en la Figura 21.
(Configuración relativa al ejemplo comparativo)
A continuación se utiliza como ejemplo comparativo una configuración ilustrada en las Figuras 51 y 52. En la configuración relativa al ejemplo comparativo, si los índices de contexto son dispuestos en orden de exploración hacia atrás en cada uno de los patrones 0 a 3, esto conduce a las siguientes secuencias.
Patrón 0: 0000000000111111
Patrón 1: 0001001100110111
Patrón 2: 0000010011011111
Patrón 3: 1112222222222222
En este documento, el patrón 1 y el patrón 2 tienen un gran número de cambios de "0" a "1" o de "1" a "0".
Específicamente, en el patrón 1, el número de cambios de "0" a "1" es cuatro, el número de cambios de "1" a "0" es tres, por lo que se producen un total de siete cambios.
Además, en el patrón 2, el número de cambios de "0" a "1" es tres, el número de cambios de "1" a "0" es dos, por lo que se producen un total de cinco cambios.
Entre los elementos de hardware, hay un hardware que define el número de 0 repetidos y el número de 1 repetidos, y deriva un índice de contexto correspondiente a una posición en un sub-bloque según la definición. En dicho hardware, si el número de cambios en 0 y 1 aumenta, la complejidad de una configuración requerida para realizar el hardware también aumenta.
(Configuración relativa al ejemplo)
Según se ha mencionado anteriormente, el aparato de decodificación de imágenes en movimiento 1 en relación con el presente ejemplo incluye un dispositivo de decodificación aritmética que decodifica unos datos codificados que se obtienen codificando aritméticamente diversas sintaxis que indican un coeficiente de transformación con respecto a cada uno de los coeficientes de transformación que se obtienen para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de decodificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques, teniendo cada uno de los mismos un tamaño de 4*4 de acuerdo con una definición predeterminada; unos medios de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en el sub-bloque con respecto a los sub-bloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en sub-bloques; unos medios de determinación de directividad para determinar una directividad de una distribución de coeficientes de transformación en base a un indicador de presencia/ausencia de coeficiente en sub-bloque en un sub-bloque adyacente a un sub-bloque objetivo del proceso; y unos medios de derivación de índices de contexto para derivar un índice de contexto asignado a un indicador de presencia/ausencia de coeficiente de transformación que es una sintaxis que indica si el coeficiente de transformación objetivo del proceso es igual o no es igual a 0, en el que, en un caso en el que un orden de exploración aplicado al sub-bloque es la exploración en diagonal hacia arriba a la derecha, una directividad determinada es una dirección vertical, y las coordenadas del sub-bloque que tiene un tamaño de 4*4 se establecen iguales a (xB,yB) (en el que xB es una coordenada en una dirección horizontal, yB es una coordenada en una dirección vertical, y el lado superior izquierdo del sub-bloque se establece igual a un origen (0,0)), los medios de derivación de índices de contexto derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación es mayor que en dominios distintos de un dominio formado por (0,0) hasta (0,3), (1,0) hasta (1,2), y (2,0).
Además, según se ha mencionado anteriormente, el aparato de decodificación de imágenes en movimiento 1 en relación con el presente ejemplo incluye un dispositivo de decodificación aritmética que decodifica datos codificados obtenidos codificando aritméticamente diversas sintaxis que indican un coeficiente de transformación con respecto a cada uno de los coeficientes de transformación obtenidos para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de decodificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques, teniendo cada uno de los mismos un tamaño de 4*4 de acuerdo con una definición predeterminada; unos medios de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en el sub-bloque con respecto a los sub-bloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en sub-bloques; unos medios de determinación de directividad para determinar una directividad de una distribución de coeficientes de transformación en base a un indicador de presencia/ausencia de coeficiente en sub-bloque en un sub-bloque adyacente a un sub-bloque objetivo del proceso; y unos medios de derivación de índices de contexto para derivar un índice de contexto asignado a un indicador de presencia/ausencia de coeficiente de transformación que es una sintaxis que indica si el coeficiente de transformación objetivo del proceso es igual o no es igual a 0, en el que, en un caso en el que un orden de exploración aplicado al sub-bloque es la exploración en diagonal hacia arriba a la derecha, una directividad determinada es una dirección horizontal, y las coordenadas del sub-bloque que tiene el tamaño de 4*4 se establecen iguales a (xB,yB) (en el que xB es una coordenada en una dirección horizontal, yB es una coordenada en una dirección vertical, y el lado superior izquierdo del sub-bloque se establece igual a un origen (0,0)), los medios de derivación de índices de contexto derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación es mayor que en dominios distintos de unos formados por (0,0) hasta (3,0), (0,1) hasta (2,1), y (0,2).
De acuerdo con la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c en relación con el presente ejemplo, las secuencias de índices de contexto en orden de exploración hacia atrás en los patrones 1 y 2 son las siguientes.
Patrón 1: 0000001100111111
Patrón 2: 0000000011111111
En el patrón 1, el número de cambios de "0" a "1" es dos, el número de cambios de "1" a "0" es uno, y por lo tanto el número de cambios es un total de tres.
En el patrón 2, el número de cambios es sólo uno de "0" a "1".
Según la configuración, es posible reducir considerablemente el número de cambios en comparación con la configuración relativa al ejemplo comparativo. El número de cambios es como máximo tres en el patrón 1, y uno corresponde al valor mínimo en el patrón 2.
Como se ha mencionado anteriormente, según la configuración, es posible minimizar las variaciones (cambios) en los índices de contexto de un sub-bloque. Por consiguiente, según se ha descrito anteriormente, en el hardware que define el número de 0 y 1 repetidos, se simplifica el montaje del hardware.
Además, en un caso en el que se realiza un proceso en una dirección de exploración hacia adelante, se obtienen secuencias opuestas a las secuencias del patrón 1 y del patrón 2. Por lo tanto, también en un caso en el que se realiza un proceso en la dirección de exploración hacia adelante, se puede conseguir el mismo efecto.
(Ejemplos de modificación)
Se describirán a continuación unos ejemplos de modificación de la presente invención.
«Ejemplo de modificación 1: minimización de los cambios en los índices de contexto 2>>>
A continuación se describirá un ejemplo de modificación de cambiar un orden de exploración en un sub-bloque objetivo de acuerdo con la presencia o no presencia de un coeficiente de transformación distinto de cero en un subbloque adyacente con referencia a la Figura 22.
En el presente ejemplo de modificación, la unidad de control de decodificación de coeficientes 123 realiza el suministro de una posición de cada componente de frecuencia según un orden de exploración en un sub-bloque en base a órdenes de exploración según se ilustra en las Figuras de la 22(a) a la 22(d).
Además, en las Figuras 22(a) a 22(e), todas las flechas que indican los órdenes de exploración son ilustradas en una dirección hacia adelante, pero se realiza un proceso de decodificación de los coeficientes de transformación en una dirección de exploración hacia atrás que es opuesta a las direcciones de las flechas.
Además, a continuación, como ejemplo, se utiliza la disposición de los índices de contexto ilustrada en las Figuras 51 y 52.
En lo sucesivo, se describirán secuencialmente los patrones 0 a 3.
En un caso del patrón 0, según se ilustra en la Figura 22(a), la unidad de control de decodificación de coeficientes 123 aplica la exploración en diagonal hacia arriba a la derecha al mismo.
En un caso del patrón 1, según se ilustra en la Figura 22(b), la unidad de control de decodificación de coeficientes 123 aplica la exploración rápida horizontal al mismo. Es decir, en un caso de (significant_coeff_group_flag[xCG+1][yCG], significant_coeff_group_flag[xCG][yCG+1])=(1,0), la unidad de control de decodificación de coeficientes 123 aplica la exploración rápida horizontal al mismo.
En un caso del patrón 2, según se ilustra en la Figura 22(c), la unidad de control de decodificación de coeficientes 123 aplica la exploración rápida vertical al mismo. Es decir, en un caso de (significant_coeff_group_flag[xCG+1][yCG], significant_coeff_group_flag[xCG][yCG+1])=(0,1), la unidad de control de decodificación de coeficientes 123 aplica la exploración rápida vertical al mismo.
En un caso del patrón 3, según se ilustra en la Figura 22(d), la unidad de control de decodificación de coeficientes 123 aplica la exploración en diagonal hacia arriba a la derecha.
[Operaciones y efectos]
Como se ha descrito anteriormente, el aparato de decodificación de imágenes en movimiento 1 en relación con el ejemplo de modificación 1 incluye un dispositivo de decodificación aritmética que decodifica unos datos codificados que se obtienen codificando aritméticamente diversas sintaxis que indican un coeficiente de transformación con respecto a cada uno de los coeficientes de transformación que se obtienen para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de decodificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques cada uno de los cuales tiene un tamaño predeterminado; unos medios de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en el sub-bloque con respecto a los sub-bloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en sub-bloques; unos medios de determinación de directividad para determinar una directividad de una distribución de coeficientes de transformación en base a un indicador de presencia/ausencia de coeficiente en sub-bloque en un sub-bloque adyacente a un sub-bloque objetivo del proceso; y unos medios de decodificación de coeficientes de transformación para decodificar los coeficientes de transformación utilizando un orden de exploración de acuerdo con una directividad determinada por los medios de determinación de directividad.
De acuerdo con la configuración, en un caso (Figura 22(b)) en el que existe una alta probabilidad de que los coeficientes de transformación distintos de cero se concentren en la dirección horizontal, se aplica la exploración rápida horizontal al mismo, y en un caso (Figura 22(c)) en el que existe una alta probabilidad de que los coeficientes de transformación distintos de cero se concentren en la dirección vertical, se aplica la exploración rápida vertical al mismo.
Por consiguiente, se puede realizar una exploración en un orden de mayor probabilidad de ocurrencia de coeficientes de transformación distintos de cero, y por lo tanto es posible mejorar la eficiencia de la codificación. Además, las secuencias de índices de contexto en orden de exploración hacia atrás son las siguientes.
Patrón 0:0000000000111111
Patrón 1:0000000011111111
Patrón 2:0000000011111111
Patrón 3:1112222222222222
Por consiguiente, el número de cambios en 0 y 1 de los índices de contexto es como máximo uno en el orden de exploración hacia atrás en un sub-bloque.
Además, en la descripción anterior, se utiliza la exploración en diagonal hacia arriba a la derecha en los patrones 0 y 3, pero, alternativamente, se puede utilizar una exploración en zigzag según se ilustra en la Figura 22(e). Además, el orden de exploración descrito anteriormente puede almacenarse en la unidad de almacenamiento de tabla de órdenes de exploración 122.
«Ejemplo de modificación 2: reducción en el patrón de derivación>>>
En lo sucesivo, con referencia a las Figuras 23 y 24, se realizará una descripción de un ejemplo de modificación en el que los patrones de derivación de contexto son cambiados de acuerdo con el número de coeficientes de transformación distintos de cero que se encuentran presentes en un sub-bloque adyacente.
En el presente ejemplo de modificación, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c obtiene un índice de patrón idxCG que es un índice para especificar un patrón de derivación de contexto a partir de indicadores de presencia/ausencia de coeficiente en sub-bloque en sub-bloques adyacentes (sub-bloques adyacentes derecho e inferior), utilizando la siguiente ecuación (B).
idxCG =significant_coeff_group_flag[xCG+1][yCG]+ significant_coeff_group_flag[xCG] [yCG 1] •••(B)
En base a la ecuación anterior (B), el índice de patrón idxCG toma valores de 0 a 2 en los siguientes patrones de 0 a 2, respectivamente.
(Patrón 0) En un caso en el que el valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 0 tanto en el sub-bloque adyacente derecho (xCG+1,yCG) como en el sub-bloque adyacente inferior (xCG,yCG+1). (Patrón 1) En un caso en el que un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 1 en uno de los sub-bloques adyacentes derechos (xCG+1,yCG) y el sub-bloque adyacente inferior (xCG,yCG+1), y un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 0 en el otro de ellos.
(Patrón 2) En un caso en el que un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 1 tanto en el sub-bloque adyacente derecho (xCG+1,yCG) como en el sub-bloque adyacente inferior (xCG,yCG+1). Además, en el presente ejemplo de modificación, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto en un procedimiento ilustrado en la Figura 23.
La Figura 23 es un diagrama que ilustra otro ejemplo de un pseudo-código para derivar un índice de contexto a partir de las coordenadas de un componente de frecuencia objetivo del proceso en un sub-bloque de acuerdo con un índice de patrón idxCG obtenido a partir de la Ecuación (B).
Se realizará una descripción, con referencia a la Figura 23, de un valor de un índice de contexto que es derivado en cada caso de un patrón del 0 al 3.
(Caso del patrón 0)
En un caso del patrón 0, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto usando sigCtx = (xB yB <= 2) ? 1 : 0.
En otras palabras, un caso del patrón 0 es el mismo que un caso del patrón 0 del ejemplo descrito anteriormente. Por lo tanto, los valores de los índices de contexto se disponen según se ilustra en la Figura 24(a).
(Caso del patrón 1)
En un caso del patrón 1, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto usando sigCtx = (xB yB < 3) ? 1:0.
Por lo tanto, en un caso del patrón 1, si una agregación de la coordenada xB en la dirección horizontal de las coordenadas (xB,yB) en el sub-bloque y la coordenada yB en la dirección vertical es 3 o menos, un valor de un índice de contexto es igual a “1”, y, en caso contrario, un valor de un índice de contexto es igual a “0”.
En consecuencia, los valores de los índices de contexto se disponen según se ilustra en la Figura 24(b).
(Caso del patrón 2)
En un caso del patrón 2, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto usando sigCtx = (xB yB < 4) ? 2 : 1.
En otras palabras, un caso del patrón 2 es el mismo que un caso del patrón 3 del ejemplo descrito anteriormente. Por lo tanto, los valores de los índices de contexto se disponen según se ilustra en la Figura 24(c).
«Ejemplo de modificación 2-1>>
En lo sucesivo, se realizará una descripción, con referencia a las Figuras 54 y 55, de un ejemplo de modificación del uso de un procedimiento de derivación de índices de contexto que tiene tres etapas en relación con el patrón 0 y el patrón 1 del ejemplo de modificación 2. En la disposición de valores de los índices de contexto relacionados con el ejemplo de modificación 2, se toman valores de dos etapas en cada patrón de manera que sigCtx=0 o 1 en los patrones 0 y 1 (Figuras 24(a) y 24(b)), y sigCtx=1 o 2 en el patrón 2 (Figura 24(c)). Aumentando estas etapas, es posible realizar una disposición de valores de índices de contexto que son más adecuados para circunstancias reales de ocurrencia de un coeficiente de transformación. La Figura 54 ilustra un pseudo-código para derivar un índice de contexto a partir de las coordenadas de un componente de frecuencia objetivo del proceso en un sub­ bloque de acuerdo con un índice de patrón idxCG obtenido a partir de la Ecuación (B) anterior, en relación con el ejemplo de modificación 2-1. La Figura 55 ilustra disposiciones de valores de los índices de contexto en el procedimiento de derivación de índices de contexto que utiliza el pseudo-código ilustrado en la Figura 54.
Además, se puede decir que el ejemplo de modificación 2-1 es una combinación del ejemplo de modificación 2 en relación con una reducción en un patrón de derivación con el ejemplo de modificación 5 descrito más adelante. (Caso del patrón 0)
En un caso del patrón 0, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto de la siguiente manera de acuerdo con un valor de xB+yB.
En un caso en el que xB+yB es igual a o menor que TH1, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=2. Además, en un caso en el que xB+yB es mayor que TH1 e igual a o menor que TH2, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub­ bloque adyacente 124c deriva sigCtx=1. En otros casos, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=0. En este caso, si el valor de umbral TH1=0, y el valor de umbral TH2=2, los valores de índices de contexto se disponen según se ilustra en la Figura 55(a).
(Caso del patrón 1)
En un caso del patrón 1, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto de la siguiente manera de acuerdo con un valor de xB+yB.
En un caso en el que xB+yB es igual a o menor que TH3, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=2. Además, en un caso en el que xB+yB es mayor que TH3 e igual a o menor que TH4, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub­ bloque adyacente 124c deriva sigCtx=1. En otros casos, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=0. En este caso, si el valor de umbral TH3=1 y el valor de umbral TH4=3, los valores de los índices de contexto se disponen según se ilustra en la Figura 55(b).
(Caso del patrón 2)
Por ejemplo, un valor de umbral TH5 se establece igual a 4. Si el valor de umbral TH5=4, se obtiene el mismo resultado que en el patrón 2 (Figura 24(c)) del ejemplo de modificación 2, y por lo tanto se omitirá su descripción. Además, los valores de umbral TH1, TH2, TH3 y TH4 se establecen preferiblemente para satisfacer TH1<TH3 y TH2<TH4, teniendo en cuenta las tendencias de las probabilidades de ocurrencia de un coeficiente de transformación distinto de cero en los respectivos patrones.
A partir de la prueba realizada por el presente inventor, se ha confirmado que el ejemplo de modificación 2-1 puede mejorar aún más la eficiencia de la codificación que el ejemplo de modificación 2, especialmente, en un bloque de intra-predicción. En relación con los elementos del ejemplo de modificación 2-1, en el patrón 0 y en el patrón 1, un valor de un índice de contexto situado a una primera distancia (el patrón 0: xB+yB<=TH1, y el patrón 1: xB+yB<=TH3) con respecto a la parte superior más a la derecha se establece igual a 2, lo que indica que una probabilidad de ocurrencia es alta, un valor de un índice de contexto situado a una segunda distancia (el patrón 0: TH1<xB+yB<=TH2, y el patrón 1: TH3<xB+yB<=TH4) con respecto a la primera distancia se establece igual a 1, lo que indica que una probabilidad de ocurrencia es intermedia, y un valor de un índice de contexto situado en otras posiciones se establece igual a 0, lo que indica que una probabilidad de ocurrencia es baja.
Además, en relación con el valor de umbral TH5, el valor de umbral TH5 se puede establecer para que satisfaga TH4<TH5 según se ha descrito anteriormente.
[Operaciones y efectos]
Según se ha descrito anteriormente, el aparato de decodificación de imágenes en movimiento 1 en relación con el ejemplo de modificación 2 incluye un dispositivo de decodificación aritmética que decodifica unos datos codificados que se obtienen codificando aritméticamente diversas sintaxis que indican un coeficiente de transformación con respecto a cada uno de los coeficientes de transformación obtenidos para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de decodificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques cada uno de los cuales tiene un tamaño predeterminado; unos medios de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en el sub-bloque con respecto a los sub-bloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en sub-bloques; unos medios de contaje del número de sub-bloques con presencia de coeficiente para contar el número de sub-bloques que incluyen al menos un coeficiente de transformación distinto de cero para cada subbloque adyacente a un sub-bloque objetivo del proceso en base al indicador de presencia/ausencia de coeficiente en sub-bloque; y unos medios de derivación de índices de contexto para derivar un índice de contexto asignado a un indicador de presencia/ausencia de coeficiente de transformación que es una sintaxis que indica si el coeficiente de transformación es igual o no es igual a 0, en el que los medios de derivación de índices de contexto derivan el índice de contexto utilizando una agregación de una coordenada en una dirección horizontal y una coordenada en una dirección vertical de un coeficiente de transformación objetivo del proceso en el sub-bloque objetivo del proceso de acuerdo con el número contado por los medios de contaje del número de sub-bloques con presencia de coeficiente. En la configuración, el indicador de presencia/ausencia de coeficiente en sub-bloque no se diferencia entre un sub­ bloque adyacente derecho y un sub-bloque adyacente inferior.
Por consiguiente, cuando se compara con el ejemplo descrito anteriormente, es posible reducir el número de patrones de derivación de contexto. Además, las comparaciones en los patrones respectivos se realizan mediante una comparación entre "xB+yB" y un valor de umbral predeterminado. Además, las disposiciones ilustradas en las Figuras 24(a) a 24(c) están relacionadas con la exploración en diagonal hacia arriba a la derecha, el número de cambios en los índices de contexto en un orden de exploración en un sub-bloque es sólo uno, y por lo tanto se simplifica su montaje en hardware.
El aparato de decodificación de imágenes en movimiento en relación con el ejemplo de modificación 2-1 descrito anteriormente incluye un dispositivo de decodificación aritmética que decodifica unos datos codificados que se obtienen codificando aritméticamente diversas sintaxis que indican un coeficiente de transformación con respecto a cada uno de los coeficientes de transformación que se obtiene para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de decodificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques cada uno de los cuales tiene un tamaño predeterminado; unos medios de decodificación de indicador de presencia/ausencia de coeficiente en sub­ bloque para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en el sub-bloque con respecto a los sub-bloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en sub bloques; unos medios de contaje del número de sub-bloques con presencia de coeficiente para contar el número de sub-bloques que incluyen al menos un coeficiente de transformación distinto de cero para cada sub-bloque adyacente a un sub-bloque objetivo del proceso en base al indicador de presencia/ausencia de coeficiente en sub­ bloque; y unos medios de derivación de índices de contexto para derivar un índice de contexto asignado a un indicador de presencia/ausencia de coeficiente de transformación que es una sintaxis que indica si el coeficiente de transformación es igual o no es igual a 0, en el que los medios de derivación de índices de contexto derivan los índices de contextos correspondientes a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja, un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, y un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia entre la probabilidad alta y la probabilidad baja, en base a una posición de un coeficiente de transformación objetivo del proceso en el sub-bloque objetivo del proceso, usando una agregación de una coordenada en dirección horizontal y una coordenada en dirección vertical de un coeficiente de transformación objetivo del proceso en el sub-bloque objetivo del proceso, de acuerdo con el número contado por los medios de contaje del número de sub-bloques con presencia de coeficiente.
En la configuración, el indicador de presencia/ausencia de coeficiente en sub-bloque no se diferencia entre un sub­ bloque adyacente derecho y un sub-bloque adyacente inferior.
Por consiguiente, cuando se compara con el ejemplo descrito anteriormente, es posible reducir el número de patrones de derivación de contexto. Además, las comparaciones en los patrones respectivos se realizan todas mediante una comparación entre "xB+yB" y un valor de umbral predeterminado. Además, las disposiciones ilustradas en las Figuras 55(a) y 55(b) están relacionadas con la exploración en diagonal hacia arriba a la derecha, el número de cambios en los índices de contexto en un orden de exploración en un sub-bloque es sólo dos, y por lo tanto se simplifica su montaje en hardware.
Además, en un caso en el que se determina que no hay coeficiente de transformación distinto de cero presente en dos o más sub-bloques adyacentes al sub-bloque objetivo del proceso, los medios de derivación de índices de contexto derivan los índices de contexto que corresponden respectivamente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja, un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, y un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia entre la probabilidad alta y la probabilidad baja, en base a una posición de un coeficiente de transformación objetivo del proceso en el sub-bloque objetivo del proceso, según el resultado de la determinación, y puede mejorar la eficiencia de la codificación. En particular, un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta es asignado preferiblemente a una posición superior izquierda en el sub-bloque objetivo del proceso.
Además, en un caso en el que se determina que uno o más coeficientes de transformación distintos de cero están presentes en uno o más sub-bloques adyacentes al sub-bloque objetivo del proceso, y que no hay coeficiente de transformación distinto de cero presente en uno o más sub-bloques, los medios de derivación de índices de contexto derivan los índices de contexto que corresponden respectivamente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja, un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, y un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia entre la probabilidad alta y la probabilidad baja, en base a una posición de un coeficiente de transformación objetivo del proceso en el sub-bloque objetivo del proceso, según el resultado de la determinación, y puede mejorar la eficiencia de la codificación. En particular, se determina que un coeficiente de transformación distinto de cero se encuentra presente en un sub­ bloque adyacente derecho o inferior, y se asigna preferiblemente un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta a la primera columna y a la segunda columna en una dirección diagonal desde la parte superior izquierda en el sub-bloque objetivo del proceso. Además, se asigna preferiblemente un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia a la tercera columna y a la cuarta columna en una dirección diagonal desde la parte superior izquierda del sub-bloque objetivo del proceso.
Como se ha mencionado anteriormente, según el ejemplo de modificación 2-1, es posible realizar un patrón de derivación de contexto que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación que en el ejemplo de modificación 2, y por lo tanto es posible mejorar la eficiencia de la codificación.
«Ejemplo de modificación 3: Patrón 2*2>>>
Las coordenadas de un sub-bloque de tamaño 4*4 tienen un valor de 0 a 3 (2 bits) en cada una de una coordenada X y una coordenada Y. A continuación, con referencia a las Figuras 25 y 26, se describirá un ejemplo de modificación en el que se deriva un índice de contexto sin utilizar bits inferiores de las coordenadas del sub-bloque. En otras palabras, en el siguiente ejemplo de modificación, se deriva un índice de contexto en la unidad de un tamaño de 2*2.
En el presente ejemplo de modificación, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c obtiene un índice de patrón idxCG usando la Ecuación (A) anterior, y también deriva un índice de contexto en un procedimiento ilustrado en la Figura 25 de acuerdo con los patrones 0 a 3 obtenidos a partir de la misma.
La Figura 25 es un diagrama que ilustra otro ejemplo más de un pseudo-código para derivar un índice de contexto a partir de las coordenadas de un componente de frecuencia objetivo del proceso en un sub-bloque de acuerdo con un índice de patrón idxCG obtenido a partir de la Ecuación (A). La Figura 26 ilustra disposiciones de valores de índices de contexto en el procedimiento de derivación de índices de contexto que utiliza el pseudo-código ilustrado en la Figura 25.
Con referencia a las Figuras 25 y 26, se realizará una descripción de un valor de un índice de contexto que se deriva en cada caso de los patrones 0 a 3.
(Caso del patrón 0)
En un caso del patrón 0, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto usando sigCtx = ((xB >> 1) (yB >> 1) <= 0) ? 1 : 0.
En consecuencia, los valores de los índices de contexto se disponen según se ilustra en la Figura 26(a). En otras palabras, según se ilustra en la Figura 26(a), en un caso en el que el sub-bloque se divide en cuatro dominios parciales que incluyen un dominio superior izquierdo, un dominio superior derecho, un dominio inferior izquierdo y un dominio inferior derecho, teniendo cada uno de los mismos un tamaño de 2*2, los valores de los índices de contexto son iguales a 1 en el dominio parcial superior izquierdo, y los valores de los índices de contexto son iguales a 0 en los otros dominios parciales.
(Caso del patrón 1)
En un caso del patrón 1, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto usando sigCtx = ((yB >> 1) <= 0) ? 1 : 0.
En consecuencia, los valores de los índices de contexto se disponen según se ilustra en la Figura 26(a). En otras palabras, según se ilustra en la Figura 26(b), los valores de los índices de contexto son iguales a 1 en los dominios parciales superior izquierdo y superior derecho en el sub-bloque, y los valores de los índices de contexto son iguales a 0 en los dominios parciales inferior izquierdo e inferior derecho.
(Caso del patrón 2)
En un caso del patrón 2, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto usando sigCtx = ((xB >> 1) <= 0) ? 1 : 0.
En consecuencia, los valores de los índices de contexto se disponen según se ilustra en la Figura 26(c). En otras palabras, según se ilustra en la Figura 26(c), los valores de los índices de contexto son iguales a 1 en los dominios parciales superior izquierdo e inferior izquierdo en el sub-bloque, y los valores de los índices de contexto son iguales a 0 en los dominios parciales superior derecho e inferior derecho.
(Caso del patrón 3)
En un caso del patrón 3, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto usando sigCtx = ((xB >> 1) (yB >> 1) <= 1) ? 2 : 1.
En consecuencia, los valores de los índices de contexto se disponen según se ilustra en la Figura 26(d). En otras palabras, según se ilustra en la Figura 26(d), los valores de los índices de contexto son iguales a 2 en los dominios parciales superior izquierdo, superior derecho e inferior izquierdo en el sub-bloque, y los valores de los índices de contexto son iguales a 0 en un dominio parcial inferior derecho.
El procedimiento de derivación de índices de contexto para el aparato de decodificación de imágenes en movimiento 1 en relación con el ejemplo de modificación 3 es un procedimiento en el que no se referencia a un bit inferior 1 de las coordenadas (xB,yB) en un sub-bloque según se ilustra en la Figura 25. Además, en una disposición de valores de los índices de contexto relacionados con el ejemplo de modificación 3, se obtienen igualmente los valores de los índices de contexto en un bloque más pequeño (en este caso, un bloque de 2*2) que forman un sub-bloque según se ilustra en la Figura 26.
[Operaciones y efectos]
Según se ha mencionado anteriormente, el aparato de decodificación de imágenes en movimiento 1 en relación con el ejemplo de modificación 3 incluye un dispositivo de decodificación aritmética que decodifica datos codificados obtenidos codificando aritméticamente diversas sintaxis que indican un coeficiente de transformación con respecto a cada uno de los coeficientes de transformación obtenidos para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de decodificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un objetivo del proceso en sub-bloques, teniendo cada uno de los mismos un tamaño de 4*4 de acuerdo con una definición predeterminada; unos medios de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si el sub-bloque incluye o no incluye al menos un coeficiente de transformación distinto de cero con respecto a los sub-bloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en subbloques; unos medios de determinación de patrón para determinar un patrón de un valor de un indicador de presencia/ausencia de coeficiente en sub-bloque que es decodificado para cada sub-bloque adyacente a un sub­ bloque objetivo del proceso; y unos medios de derivación de índices de contexto para derivar un índice de contexto asignado a un indicador de presencia/ausencia de coeficiente de transformación, que es una sintaxis que indica si el coeficiente de transformación objetivo del proceso es igual o no es igual a 0, en el que los medios de derivación de índices de contexto derivan el índice de contexto utilizando bits de orden superior (en expresión de 2 bits) de cada una de las coordenadas en una dirección horizontal y una dirección vertical de un coeficiente de transformación objetivo del proceso en el sub-bloque objetivo del proceso de acuerdo con un resultado de determinación suministrado por los medios de determinación de patrones.
Según la configuración, es posible realizar un proceso de derivación de índices de contexto a partir de información de input de los bits más altos (4 bits). Específicamente, los 4 bits son un total de 4 bits que incluyen un bit (1 bit) más alto de una coordenada X en un sub-bloque, un bit (1 bit) más alto de una coordenada y en el sub-bloque, un indicador de presencia/ausencia de coeficiente en sub-bloque (1 bit) en un sub-bloque adyacente en la dirección X, y un indicador de presencia/ausencia de coeficiente en sub-bloque (1 bit) en un sub-bloque adyacente en la dirección Y.
Además, puesto que es preferible derivar un output de 0 a 2 (2 bits) a partir de un input de 4 bits, se puede realizar un proceso de derivación de índice de contexto mediante un simple cálculo de bits. Se realizará una descripción detallada de ello de la siguiente manera.
Primero, se definen x1, y1, x2, y2, y2 (cada una de las cuales es de 1 bit) de la siguiente manera.
xl = xB = (xC- (xCG« 2)) » l
yl = yB = (yC- (yCG«2) ) » 1
x2 = signifcanet_coeff_group_flag[xCG+l][yCG]
y2 =significant_coeff_group_flag[xCG][yCG+1]
En este caso, se puede realizar un proceso de derivación de índices de contexto a través del siguiente cálculo lógico.
sigCtx = ((x2 & y2) & ( (y2 & ! yl) | (x2 & ! xl))«l) |
((x2 & y2)& (xl & yl)) | (! x2 & ! y2) & (! xl & ! yl) | (!
x2 & y2 & ! xl) 1 (y2 & ! x2 & ! yl )
En consecuencia, es posible excluir la rama condicional del proceso de derivación de índice de contexto.
«Ejemplo de modificación 4: patrón 2 de 2*2>>
A continuación se describirá, con referencia a la Figura 27, un ejemplo de modificación de utilizar un orden de exploración en la unidad 2*2 como orden de exploración en un sub-bloque objetivo.
En el presente ejemplo de modificación, la unidad de control de decodificación de coeficientes 123 suministra una posición de cada componente de frecuencia según un orden de exploración en un sub-bloque en base a órdenes de exploración según se ilustra en las Figuras 27(a) y 27(b).
Además, en las Figuras 22(a) a 22(e), todas las flechas que indican los órdenes de exploración se ilustran en una dirección hacia adelante, pero se realiza un proceso de decodificación de coeficientes de transformación en una dirección de exploración hacia atrás que es opuesta a las direcciones de las flechas. Además, una disposición de índices de contexto no se limita a las ilustradas en las Figuras 51 y 52, y se pueden establecer arbitrariamente. Según se ilustra en la Figura 27(a), la unidad de control de decodificación de coeficientes 123 puede establecer un orden de exploración en las unidades de dominio parciales en un sub-bloque igual a un orden de exploración de los dominios parciales superior izquierdo, inferior izquierdo, superior derecho e inferior derecho. Además, la unidad de control de decodificación de coeficientes 123 puede establecer un orden de exploración de componentes de frecuencia en el dominio parcial que tienen un tamaño de 2*2 igual a un orden de exploración de componentes de frecuencia superior izquierdo, inferior izquierdo, superior derecho e inferior derecho.
Además, la unidad de control de decodificación de coeficientes 123 puede utilizar el orden de exploración ilustrado en la Figura 27(a) en un caso en el que una probabilidad de que los coeficientes de transformación distintos de cero se concentren en la dirección vertical es alta.
Además, según se ilustra en la Figura 27(b), la unidad de control de decodificación de coeficientes 123 puede establecer un orden de exploración en las unidades de dominio parciales en un sub-bloque igual a un orden de exploración de dominios parciales superior izquierdo, superior derecho, inferior izquierdo e inferior derecho. Además, la unidad de control de decodificación de coeficientes 123 puede establecer un orden de exploración de los componentes de frecuencia en el dominio parcial con un tamaño de 2*2 igual a un orden de exploración de los componentes de frecuencia superior izquierdo, superior derecho, inferior izquierdo e inferior derecho.
Además, la unidad de control de decodificación de coeficientes 123 puede utilizar el orden de exploración ilustrado en la Figura 27(b) en un caso en el que una probabilidad de que los coeficientes de transformación distintos de cero se concentren en la dirección horizontal es alta.
Además, los órdenes de exploración descritos anteriormente pueden almacenarse en la unidad de almacenamiento de tabla de órdenes de exploración 122.
[Operaciones y efectos]
Según se ha mencionado anteriormente, el aparato de decodificación de imágenes en movimiento 1 en relación con el ejemplo de modificación 4 incluye un dispositivo de decodificación aritmética que decodifica datos codificados obtenidos codificando aritméticamente diversas sintaxis que indican un coeficiente de transformación con respecto a cada uno de los coeficientes de transformación obtenidos para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de decodificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques, teniendo cada uno de los mismos un tamaño de 4*4 de acuerdo con una definición predeterminada; y unos medios de decodificación de coeficientes de transformación para decodificar un coeficiente de transformación utilizando un orden de exploración en un dominio parcial con respecto a dominios parciales respectivos, teniendo cada uno de los mismos un tamaño de 2*2, obtenidos dividiendo el sub-bloque que tiene el tamaño de 4*4 en cuatro dominios.
Según la configuración, dado que se puede evitar que las coordenadas de un orden de exploración (por ejemplo, las coordenadas de los componentes de frecuencia adyacentes entre sí en el orden de exploración) sean modificadas considerablemente, los coeficientes de transformación que tienen espacialmente los mismos tipos de características que cada uno de los otros pueden ser decodificados secuencialmente. Como resultado, se mejora la eficiencia de la codificación.
Además, se minimiza un cambio de los índices de contexto en un orden de exploración en un sub-bloque.
Por ejemplo, en un caso en el que las disposiciones de valores de los índices de contexto ilustradas en las Figuras 26(a) a 26(d), el número de cambios en 0 y 1 de los índices de contexto en un orden de exploración hacia atrás es como máximo uno.
Además, la presente invención no se limita a ello, y es aplicable a disposiciones distintas de las disposiciones de valores de los índices de contexto ilustradas en las Figuras 26(a) a 26(d). Por ejemplo, en un caso en el que el orden de exploración ilustrado en la Figura 27(a) se utiliza en la disposición de valores de los índices de contexto de la Figura 52(c), y el orden de exploración ilustrado en la Figura 27(b) se utiliza en la disposición de valores de los índices de contexto de la Figura 52(b), se puede restringir el número de cambios a uno.
«Ejemplo de modificación 5: otros patrones>>>
En lo sucesivo se realizará, con referencia a las Figuras 28 a 32, una descripción del uso de un procedimiento de derivación de índices de contexto que tiene tres etapas en un patrón de derivación de contexto predeterminado. La disposición de valores de los índices de contexto descritos hasta ahora es una disposición que utiliza valores de dos etapas. Por ejemplo, en la disposición de valores de los índices de contexto de acuerdo con la técnica relacionada, descrita con referencia a las Figuras 51 y 52, se toman valores de dos etapas en cada patrón de manera que sigCtx=0 o 1 en los patrones 0 a 2, y sigCtx=1 o 2 en el patrón 3. Aumentando estas etapas, es posible realizar una disposición de valores de índices de contexto que son más adecuadas para las circunstancias reales de ocurrencia de un coeficiente de transformación.
En el presente ejemplo de modificación, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c obtiene un índice de patrón idxCG (patrones 0 a 3) utilizando la Ecuación (A) anterior. Además, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c utiliza un procedimiento de derivación de índices de contexto que tiene tres etapas en los patrones 0 a 2. Además, se utiliza en los patrones 1 y 2 el contexto que indica que la eficiencia de la codificación es mayor en las posiciones de una coordenada Y yB=0 de un sub-bloque y una coordenada X xB=0 del sub-bloque. A continuación, se describirán ejemplos de modificación específicos.
<Ejemplo de modificación 5-1>
Se describirá, con referencia a las Figuras 28 y 29, El ejemplo de modificación 5-1. La Figura 28 es un diagrama que ilustra otro ejemplo de un pseudo-código para derivar un índice de contexto a partir de las coordenadas de un componente de frecuencia objetivo del proceso en un sub-bloque de acuerdo con un índice de patrón idxCG obtenido a partir de la Ecuación (A). La Figura 29 ilustra disposiciones de valores de los índices de contexto en el procedimiento de derivación de índices de contexto que utiliza el pseudo-código ilustrado en la Figura 28.
Se realizará, con referencia a las Figuras 28 y 29, una descripción de un valor de un índice de contexto que se deriva en cada caso de los patrones 0 a 3. Además, las partes sombreadas ilustradas en la Figura 29 son partes que cambian con respecto a las disposiciones de valores de índices de contexto ilustradas en la Figura 52.
(Caso del patrón 0)
En un caso del patrón 0, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto de la siguiente manera de acuerdo con un valor de xB+yB.
En un caso en el que xB+yB es igual a o menor que 0, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=2. Además, en un caso en el que xB+yB es mayor que 0 y es igual a o menor que 2, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=1. En otros casos, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=0. En consecuencia, se disponen valores de los índices de contexto según se ilustra en la Figura 29(a)
(Caso del patrón 1)
En un caso del patrón 1, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto de la siguiente manera de acuerdo con un valor de yB.
En un caso en el que yB es igual a o menor que 0, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=2. Además, en un caso en el que yB es mayor que 0 y es igual a o menor que 1, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=1. En otros casos, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=0. En consecuencia, los valores de los índices de contexto se disponen según se ilustra en la Figura 29(b).
En otras palabras, según se ilustra en la Figura 29(b), los valores de los índices de contexto son iguales a 2 en la primera fila del sub-bloque, y los valores de los índices de contexto son iguales a 1 en la segunda fila del sub­ bloque. Además, los valores de los índices de contexto son iguales a 0 en la tercera línea y en la cuarta línea del sub-bloque.
(Caso del patrón 2)
En un caso del patrón 2, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto de la siguiente manera de acuerdo con un valor de xB.
En un caso en el que xB es igual a o menor que 0, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=2. Además, en un caso en el que xB es mayor que 0 y es igual a o menor que 1, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=1. En otros casos, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=0. En consecuencia, los valores de los índices de contexto se disponen según se ilustra en la Figura 29(c).
En otras palabras, según se ilustra en la Figura 29(c), los valores de los índices de contexto son iguales a 2 en la primera columna del sub-bloque, y los valores de los índices de contexto son iguales a 1 en la segunda columna del sub-bloque. Además, los valores de los índices de contexto son iguales a 0 en la tercera columna y en la cuarta columna del sub-bloque.
(Caso del patrón 3)
En un caso del patrón 3, según se ilustra en la Figura 29(d), la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva igualmente sigCtx=2 en el sub-bloque, independientemente de los valores de xB e yB.
Además, las disposiciones de los índices de contexto relacionados con un caso del ejemplo de modificación 5-1 pueden realizarse utilizando un pseudo-código ilustrado en la Figura 56. La Figura 56 es un ejemplo de otro pseudocódigo para realizar las disposiciones de valores de los índices de contexto ilustradas en la Figura 29. Más específicamente, el pseudo-código ilustrado en la Figura 56 es uno en el que se cambia un valor límite para la determinación de una relación de magnitud, o se cambia la determinación de relación de magnitud por una determinación de igual valor, en el pseudo-código ilustrado en la Figura 29. De acuerdo con el pseudo-código ilustrado en la Figura 56, es posible realizar las disposiciones de valores de los índices de contexto ilustradas en la Figura 29 de la misma manera que el pseudo-código ilustrado en la Figura 29.
<Configuración general del ejemplo de modificación 5>
Con referencia a la Figura 30, se realizará una descripción de una configuración general de un pseudo-código para derivar un índice de contexto del ejemplo de modificación 5. En la configuración general, se deriva un índice de contexto utilizando valores de umbral predeterminados TH1, TH2, TH3, TH4 y TH5.
(Caso del patrón 0)
En un caso del patrón 0, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto de la siguiente manera de acuerdo con un valor de xB+yB.
En un caso en el que xB+yB es igual a o menor que TH1, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=2. Además, en un caso en el que xB+yB es mayor que TH1 y es igual a o menor que TH2, la unidad de derivación de contexto de presencia/ausencia de coeficiente en subbloque adyacente 124c deriva sigCtx=1. En otros casos, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=0.
(Caso del patrón 1)
En un caso del patrón 1, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto de la siguiente manera de acuerdo con un valor de yB.
En un caso en el que yB es igual a o menor que TH3, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=2. Además, en un caso en el que yB es mayor que TH3 y es igual a o menor que TH4, la unidad de derivación de contexto de presencia/ausencia de coeficiente en subbloque adyacente 124c deriva sigCtx=1. En otros casos, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=0. En consecuencia, los valores de los índices de contexto se disponen según se ilustra en la Figura 31(b).
En otras palabras, los valores de los índices de contexto son iguales a 2 en las filas (TH3-1)-ésimas y siguientes del sub-bloque, y los valores de los índices de contexto son iguales a 1 desde la fila TH3-ésima hasta la fila (TH4-1)-ésima. Además, los valores de los índices de contexto son iguales a 0 en la fila TH4-ésima del sub-bloque.
(Caso del patrón 2)
En un caso del patrón 2, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto de la siguiente manera de acuerdo con un valor de xB.
En un caso en el que xB es igual a o menor que TH3, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=2. Además, en un caso en el que xB es mayor que TH3 y es igual a o menor que TH4, la unidad de derivación de contexto de presencia/ausencia de coeficiente en subbloque adyacente 124c deriva sigCtx=1. En otros casos, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=0.
En otras palabras, los valores de los índices de contexto son iguales a 2 en la columna (TH3-1)-ésima y columnas siguientes del sub-bloque, y los valores de los índices de contexto son iguales a 1 desde la columna (TH3)-ésima hasta la columna (TH4-1)-ésima. Además, los valores de los índices de contexto son iguales a 0 en la columna TH4-ésima del sub-bloque.
(Caso del patrón 3)
En un caso del patrón 3, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto usando sigCtx = (xB yB <= TH5) ? 2 : 1.
Por lo tanto, en un caso del patrón 3, si una agregación de la coordenada xB en la dirección horizontal de las coordenadas (xB,yB) en el sub-bloque y la coordenada yB en la dirección vertical es igual a o menor que TH5, un valor de un índice de contexto es igual a “2”, y, en caso contrario, un valor de un índice de contexto es igual a “1”. El ejemplo de modificación 5-1 descrito anteriormente es un ejemplo de TH1=0, TH2=2, TH3=0, TH4=1 y TH5=6. A partir de la prueba realizada por el presente inventor, se ha confirmado que el ejemplo de modificación 5-1 puede mejorar aún más la eficiencia de la codificación que el ejemplo comparativo de las Figuras 51 y 52, especialmente en un bloque de intra-predicción. En relación con los elementos del ejemplo de modificación 5-1, en el patrón 0, un valor de un índice de contexto en la posición superior izquierda se establece igual a 2, lo que indica que una probabilidad de ocurrencia es alta; en el patrón 1 y el patrón 2, los valores de los índices de contexto en la primera fila y en la primera columna se establecen iguales a 2, lo que indica que una probabilidad de ocurrencia es alta; y, en el patrón 3, se establece un valor de un índice de contexto igual a un valor fijo (en este caso, 2, lo que indica que una probabilidad de ocurrencia es alta). Ha sido confirmado a partir de la prueba realizada por el presente inventor que se mejora considerablemente la eficiencia de la codificación cambiando los patrones 1 y 2, se mejora la eficiencia de la codificación en un grado intermedio cambiando el patrón 0, y no se reduce la eficiencia de la codificación en la simplificación tal como cambiando el patrón 3.
Además, en el patrón 0, es apropiado que TH1 sea igual a o mayor que 0, y TH2 sea menor que 6 en términos de eficiencia de la codificación. En los patrones 1 y 2, es apropiado que TH3 sea igual a o mayor que 0, y TH4 sea menor que 6 en términos de eficiencia de la codificación. En el patrón 3, es apropiado que TH5 sea igual a o mayor que 6.
En lo sucesivo se realizará, con referencia a las Figuras 31 a 33 y a la Figura 53, una descripción adicional de un ejemplo de modificación 5-2, ejemplo de modificación 5-3, ejemplo de modificación 5-4 y ejemplo de modificación 5­ 5.
<Ejemplo de modificación 5-2>
Con referencia a la Figura 31, se describirá el ejemplo de modificación 5-2. El ejemplo de modificación 5-2 es un ejemplo de TH1=-1, TH2=2, TH3=0, TH4=1 y TH5=6. En relación con los elementos del ejemplo de modificación 5-2, en los patrones 1 y 2, los valores de los índices de contexto de la primera fila y la primera columna se establecen iguales a 2 y, en el patrón 3, se establece un valor de un índice de contexto igual a un valor fijo (en este caso, 2). La Figura 31 ilustra disposiciones de valores de índices de contexto en un procedimiento de derivación de índices de contexto del ejemplo de modificación 5-2. Con referencia a la Figura 31, se realizará una descripción de un valor de un índice de contexto que se deriva en cada caso de los patrones 0 a 3. Además, las partes sombreadas ilustradas en la Figura 31 son partes que son cambiadas con respecto a las disposiciones de valores de índices de contexto ilustradas en la Figura 52.
(Caso del patrón 0)
Según se ilustra en la Figura 31(a), hay el mismo procedimiento de derivación y una disposición de los mismos valores que en el ejemplo comparativo de las Figuras 51 y 52.
(Caso de los patrones 1 a 3)
Según se ilustra en las Figuras 31(b) a 31(c), hay el mismo procedimiento de derivación y una disposición de los mismos valores que en el ejemplo de modificación 5-1 de las Figuras 28 y 29.
Además, las disposiciones de índices de contexto relacionados con un caso del ejemplo de modificación 5-2 pueden realizarse utilizando un pseudo-código ilustrado en la Figura 57. La Figura 57 es un ejemplo de otro pseudo-código para realizar las disposiciones de valores de los índices de contexto ilustradas en la Figura 31.
Más específicamente, el pseudo-código ilustrado en la Figura 57 es uno en el que se cambia un valor límite para la determinación de relación de magnitud, o se cambia la determinación de relación de magnitud por una determinación de igual valor, según corresponda, en el pseudo-código de la Figura 30 que incluye TH1=-1, TH2=2, TH3=0, TH4=1, y TH5=6, con el fin de realizar las disposiciones de los valores de los índices de contexto ilustradas en la Figura 31.
De acuerdo con el pseudo-código ilustrado en la Figura 57, es posible realizar las disposiciones de valores de los índices de contexto ilustradas en la Figura 31 de la misma manera que en un caso en el que los valores de umbral se establecen como TH1=-1, TH2=2, TH3=0, TH4=1, y TH5=6 en el pseudo-código ilustrado en la Figura 30.
Según se ha descrito anteriormente, el procedimiento de derivación de índices de contexto del ejemplo de modificación 5-2 puede conseguir efectos de mejora de la eficiencia de la codificación estableciendo valores de los índices de contexto de la primera fila y la primera columna iguales a 2 en los patrones 1 y 2, y de simplificación estableciendo un valor del índice de contexto igual a un valor fijo en el patrón 3, de la misma manera que en el ejemplo de modificación 5-1. Además, a diferencia del ejemplo de modificación 5-1, los valores de los índices de contexto del patrón 0 son sólo 0 y 1 de dos etapas, y por lo tanto la complejidad del ejemplo de modificación 5-2 es menor que la del ejemplo de modificación 5-1. A partir de la prueba realizada por el presente inventor, se ha confirmado que, de la misma manera que en el ejemplo de modificación 5-1, el ejemplo de modificación 5-2 también puede mejorar la eficiencia de la codificación que en el ejemplo comparativo de las Figuras 51 y 52, especialmente, en un bloque de intra-predicción.
<Ejemplo de modificación 5-3>
Con referencia a la Figura 32, se describirá el ejemplo de modificación 5-3. El ejemplo de modificación 5-3 es un ejemplo de TH1=-1, TH2=2, TH3=0, TH4=2 y TH5=4. En relación con los elementos del ejemplo de modificación 5-2, en los patrones 1 y 2, los valores de los índices de contexto de la primera fila y la primera columna se establecen iguales a 2, y en los patrones 1 y 2, los valores de los índices de contexto de la tercera fila y la tercera columna se establecen iguales a 1.
La Figura 32 ilustra disposiciones de valores de índices de contexto en un procedimiento de derivación de índices de contexto del ejemplo de modificación 5-3. Con referencia a la Figura 32, se realizará una descripción de un valor de un índice de contexto que se deriva en cada caso de los patrones 0 a 3. Además, las partes sombreadas ilustradas en la Figura 32 son partes modificadas con respecto a las disposiciones de valores de índices de contexto ilustradas en la Figura 52.
(Caso del patrón 0)
Según se ilustra en la Figura 32(a), hay el mismo procedimiento de derivación y una disposición de los mismos valores que en el ejemplo comparativo de las Figuras 51 y 52.
(Caso del patrón 1)
En un caso del patrón 1, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto de la siguiente manera de acuerdo con un valor de yB.
En un caso en el que yB es igual a o menor que 0, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=2. Además, en un caso en el que yB es mayor que 0 y es igual a o menor que 2, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=1. En otros casos, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=0. En consecuencia, los valores de los índices de contexto se disponen según se ilustra en la Figura 32(b).
En otras palabras, según se ilustra en la Figura 32(b), los valores de los índices de contexto son iguales a 2 en la primera fila del sub-bloque, y los valores de los índices de contexto son iguales a 1 en las filas segunda y tercera del sub-bloque. Además, los valores de los índices de contexto son iguales a 0 en la cuarta fila del sub-bloque.
(Caso del patrón 2)
En un caso del patrón 3, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto de la siguiente manera de acuerdo con un valor de xB.
En un caso en el que xB es igual a o menor que 0, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=2. Además, en un caso en el que xB es mayor que 0 y es igual a o menor que 2, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=1. En otros casos, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=0. En consecuencia, los valores de los índices de contexto se disponen según se ilustra en la Figura 32(c).
En otras palabras, según se ilustra en la Figura 32(c), los valores de los índices de contexto son iguales a 2 en la primera columna del sub-bloque, y los valores de los índices de contexto son iguales a 1 en la segunda y tercera columnas del sub-bloque. Además, los valores de los índices de contexto son iguales a 0 en la cuarta columna del sub-bloque.
(Caso del patrón 3)
Según se ilustra en la Figura 32(d), hay el mismo procedimiento de derivación y una disposición de los mismos valores que en el ejemplo comparativo de las Figuras 51 y 52.
Además, las disposiciones de los índices de contexto relacionados con un caso del ejemplo de modificación 5-3 pueden realizarse utilizando un pseudo-código ilustrado en la Figura 58. La Figura 58 es un ejemplo de otro pseudocódigo para realizar las disposiciones de los valores de los índices de contexto ilustradas en la Figura 32.
Más específicamente, el pseudo-código ilustrado en la Figura 58 es uno en el que se cambia un valor límite para la determinación de relación de magnitud, o se cambia la determinación de relación de magnitud por una determinación de igual valor, según corresponda, en el pseudo-código de la Figura 32 que incluye TH1=-1, TH2=2, TH3=0, TH4=1, y TH5=4, con el fin de realizar las disposiciones de los valores de los índices de contexto ilustradas en la Figura 32.
De acuerdo con el pseudo-código ilustrado en la Figura 58, es posible realizar las disposiciones de valores de los índices de contexto ilustradas en la Figura 32 de la misma manera que en un caso en el que los valores de umbral se establecen como TH1=-1, TH2=2, TH3=0, TH4=1, y TH5=4 en el pseudo-código ilustrado en la Figura 30.
Según se ha descrito anteriormente, el procedimiento de derivación de índices de contexto del ejemplo de modificación 5-3 puede mejorar la eficiencia de la codificación estableciendo los valores de los índices de contexto de la primera fila y la primera columna iguales a 2 en los patrones 1 y 2 de la misma manera que en el ejemplo de modificación 5-1.
<Ejemplo de modificación 5-4>
Con referencia a la Figura 33, se describirá el ejemplo de modificación 5-4. El ejemplo de modificación 5-4 es un ejemplo de TH1=1, TH2=3, TH3=0, TH4=2 y TH5=6. En relación con los elementos del ejemplo de modificación 5-4, en los patrones 1 y 2, los valores de los índices de contexto de la primera fila y la primera columna se establecen iguales a 2, y en los patrones 1 y 2, los valores de los índices de contexto de la tercera fila y la tercera columna se establecen iguales a 1.
La Figura 33 ilustra disposiciones de valores de los índices de contexto en un procedimiento de derivación de índices de contexto del ejemplo de modificación 5-4. Con referencia a la Figura 33, se realizará una descripción de un valor de un índice de contexto que se deriva en cada caso de los patrones 0 a 3. Además, las partes sombreadas ilustradas en la Figura 33 son partes modificadas con respecto a las disposiciones de valores de los índices de contexto ilustrados en la Figura 52.
(Caso del patrón 0)
En un caso del patrón 0, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto de la siguiente manera de acuerdo con un valor de xB+yB.
En un caso en el que xB+yB es igual a o menor que 1, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=2. Además, en un caso en el que xB+yB es mayor que 1 e igual a o menor que 3, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=1. En otros casos, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=0. En consecuencia, los valores de los índices de contexto se disponen según se ilustra en la Figura 33(a).
(Caso de los patrones 1 y 2)
Según se ilustra en las Figuras 33(b) y 33(c), hay el mismo procedimiento de derivación y una disposición de los mismos valores que en el ejemplo de modificación 5-3 de la Figura 32.
(Caso del patrón 3)
Según se ilustra en la Figura 33(d), hay el mismo procedimiento de derivación y una disposición de los mismos valores que en el ejemplo de modificación 5-1 de las Figuras 28 y 29.
Además, las disposiciones de los índices de contexto relacionados con un caso del ejemplo de modificación 5-4 pueden realizarse utilizando un pseudo-código ilustrado en la Figura 59. La Figura 59 es un ejemplo de otro pseudocódigo para realizar las disposiciones de los valores de los índices de contexto ilustradas en la Figura 33.
Más específicamente, el pseudo-código ilustrado en la Figura 59 es uno en el que se cambia un valor límite para la determinación de relación de magnitud, o se cambia la determinación de relación de magnitud por una determinación de igual valor, según corresponda, en el pseudo-código de la Figura 30 que incluye TH1=1, TH2=3, TH3=0, TH4=2, y TH5=6, con el fin de realizar las disposiciones de los valores de los índices de contexto ilustradas en la Figura 33.
De acuerdo con el pseudo-código ilustrado en la Figura 57, es posible realizar las disposiciones de valores de los índices de contexto ilustradas en la Figura 33 de la misma manera que en un caso en el que los valores de umbral se establecen como TH1=-1, TH2=2, TH3=0, TH4=1, y TH5=6 en el pseudo-código ilustrado en la Figura 30.
Según se ha descrito anteriormente, el procedimiento de derivación de índices de contexto del ejemplo de modificación 5-4 puede mejorar la eficiencia de la codificación estableciendo los valores de los índices de contexto de la primera fila y la primera columna iguales a 2 en los patrones 1 y 2 de la misma manera que en el ejemplo de modificación 5-3. Además, de la misma manera que en el ejemplo de modificación 5-1, es posible mejorar la eficiencia de la codificación usando 0, 1, 2 y 3 de tres etapas como valores de los índices de contexto en el patrón 0. Además, de la misma manera que en el ejemplo de modificación 5-1, es posible conseguir un efecto de simplificación estableciendo un valor de un índice de contexto igual a un valor fijo en el patrón 3.
<Ejemplo de modificación 5-5>
Con referencia a la Figura 53, se describirá el ejemplo de modificación 5-5. El ejemplo de modificación 5-5 es un ejemplo de TH1=-1, TH2=2, TH3=-1, TH4=1 y TH5=6. En relación con los elementos del ejemplo de modificación 5­ 5, en un patrón 3, se establece un valor de un índice de contexto igual a un valor fijo (en este caso, 2). La Figura 53 ilustra disposiciones de valores de los índices de contexto en un procedimiento de derivación de índices de contexto del ejemplo de modificación 5-5. Con referencia a la Figura 53, se realizará una descripción de un valor de un índice de contexto que se deriva en cada caso de los patrones 0 a 3. Además, las partes sombreadas ilustradas en la Figura 53 son partes modificadas con respecto a las disposiciones de valores de los índices de contexto ilustrados en la Figura 52.
(Caso de los patrones 0 a 2)
Según se ilustra en las Figuras 53(a) a 53(c), hay el mismo procedimiento de derivación y una disposición de los mismos valores que en el ejemplo comparativo de las Figuras 51 y 52.
(Caso del patrón 3)
Según se ilustra en la Figura 53(d), hay el mismo procedimiento de derivación y una disposición de los mismos valores que en el ejemplo de modificación 5-1 de las Figuras 28 y 29.
Además, las disposiciones de los índices de contexto en relación con un caso del ejemplo de modificación 5-5 pueden realizarse utilizando un pseudo-código ilustrado en la Figura 60. La Figura 60 es un ejemplo de otro pseudocódigo para realizar las disposiciones de valores de los índices de contexto ilustradas en la Figura 53.
Más específicamente, el pseudo-código ilustrado en la Figura 60 es uno en el que se cambia un valor límite para la determinación de relación de magnitud, o se cambia la determinación de relación de magnitud por una determinación de igual valor, según corresponda, en el pseudo-código de la Figura 30 que incluye TH1=-1, TH2=2, TH3=-1, TH4=1, y TH5=6, con el fin de realizar las disposiciones de los valores de los índices de contexto ilustradas en la Figura 53.
De acuerdo con el pseudo-código ilustrado en la Figura 60, es posible realizar las disposiciones de valores de los índices de contexto ilustradas en la Figura 53 de la misma manera que en un caso en el que los valores de umbral se establecen como TH1=-1, TH2=2, TH3=-1, TH4=1, y TH5=6, en el pseudo-código ilustrado en la Figura 30. <Ejemplo de modificación 5-6>
Con referencia a la Figura 61, se describirá el ejemplo de modificación 5-6. El ejemplo de modificación 5-6 es un ejemplo de TH1=1, TH2=2, TH3=0, TH4=1 y TH5=6. En relación con los elementos del ejemplo de modificación 5-6, en un patrón 0, un valor de un índice de contexto que indica que la probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta se establece igual a una parte que satisfaga xB+yB<2.
La Figura 61 ilustra disposiciones de valores de los índices de contexto en un procedimiento de derivación de índices de contexto del ejemplo de modificación 5-6. Con referencia a la Figura 61, se realizará una descripción de un valor de un índice de contexto que se deriva en cada caso de los patrones 0 a 3.
(Caso del patrón 0)
En un caso del patrón 0, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto de la siguiente manera de acuerdo con un valor de xB+yB.
En un caso en el que xB+yB es igual a o menor que 1, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=2. Además, en un caso en el que xB+yB es mayor que 1 y es igual a o menor que 2, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=1. En otros casos, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCtx=0. En consecuencia, los valores de los índices de contexto se disponen según se ilustra en la Figura 61(a).
(Caso de los patrones 1 a 3)
Las Figuras 61(b) a 61(d) ilustran el mismo procedimiento de derivación y disposiciones de los mismos valores que en el ejemplo de modificación 5-1 de las Figuras 29(b), 29(c) y 29(d).
Además, las disposiciones de los índices de contexto relacionados con un caso del ejemplo de modificación 5-6 pueden realizarse utilizando un pseudo-código ilustrado en la Figura 62. El pseudo-código ilustrado en la Figura 62 puede obtenerse cambiando un valor límite para la determinación de relación de magnitud, o cambiando la determinación de relación de magnitud por una determinación de igual valor, en el pseudo-código ilustrado en la Figura 30, según se describe en el ejemplo de modificación descrito anteriormente.
Según se ha descrito anteriormente, el procedimiento de derivación de índices de contexto del ejemplo de modificación 5-6 puede conseguir efectos de mejora de la eficiencia de la codificación estableciendo valores de los índices de contexto de la primera fila y la primera columna iguales a 2 en los patrones 1 y 2, y de simplificación estableciendo un valor del índice de contexto igual a un valor fijo en el patrón 3, de la misma manera que el ejemplo de modificación 5-1. En particular, en un caso en el que los índices de contexto son derivados a partir de una UT de 8*8 hasta una UT de 32*32 por la unidad de derivación de contexto de presencia/ausencia de coeficiente en subbloque adyacente 124c, es posible conseguir un efecto de mejora de la eficiencia de la codificación estableciendo un valor de un índice de contexto que indica que la probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta para una parte que satisfaga xB+yB<2 en el patrón 0.
<Ejemplo de modificación 5-7>
Con referencia a la Figura 63, se describirá el ejemplo de modificación 5-7. El ejemplo de modificación 5-7 es un ejemplo de TH1=1, TH2=3, TH3=0, TH4=1 y TH5=6. En relación con los elementos del ejemplo de modificación 5-7, en un patrón 0, un valor de un índice de contexto que indica que la probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta se establece igual a una parte que satisfaga xB+yB<2, y un valor de un índice de contexto que indica que la probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia se establece igual a una parte que satisfaga 1<xB+yB<4.
La Figura 63 ilustra disposiciones de valores de los índices de contexto en un procedimiento de derivación de índices de contexto del ejemplo de modificación 5-7. Con referencia a la Figura 63, se realizará una descripción de un valor de un índice de contexto que se deriva en cada caso de los patrones 0 a 3.
(Caso del patrón 0)
La Figura 63(a) ilustra el mismo procedimiento de derivación y disposiciones de los mismos valores que en el ejemplo de modificación 5-4 de la Figura 33(a).
(Caso de los patrones 1 a 3)
Las Figuras 63(b) a 63(d) ilustran el mismo procedimiento de derivación y disposiciones de los mismos valores que en el ejemplo de modificación 5-1 de las Figuras 29(b), 29(c) y 29(d).
Además, las disposiciones de los índices de contexto relacionados con un caso del ejemplo de modificación 5-7 pueden realizarse utilizando un pseudo-código ilustrado en la Figura 64. El pseudo-código ilustrado en la Figura 64 puede obtenerse cambiando un valor límite para la determinación de relación de magnitud, o cambiando la determinación de relación de magnitud por una determinación de igual valor, en el pseudo-código ilustrado en la Figura 30, según se describe en el ejemplo de modificación descrito anteriormente.
Según se ha descrito anteriormente, el procedimiento de derivación de índices de contexto del ejemplo de modificación 5-7 puede conseguir efectos de mejora de la eficiencia de la codificación estableciendo valores de los índices de contexto de la primera fila y la primera columna iguales a un valor de un índice de contexto que indica que la probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta en los patrones 1 y 2, y de simplificación estableciendo un valor del índice de contexto igual a un valor fijo en el patrón 3, de la misma manera que en el ejemplo de modificación 5-1. En particular, en un caso en el que los índices de contexto son derivados a partir de una UT de 8 * 8 hasta una UT de 32 * 32 por la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c, es posible conseguir un efecto de mejora de la eficiencia de la codificación estableciendo un valor de un índice de contexto que indica que la probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta para una parte que satisfaga xB+yB<2, y estableciendo un valor de un índice de contexto que indica que la probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia para una parte que satisfaga 1<xB+yB<4 en el patrón 0.
[Suplementos relacionados con el ejemplo de modificación 5]
Además, en el aparato de decodificación de imágenes en movimiento 1 en relación con los ejemplos de modificación 5-1, 5-4, 5-6 y 5-7 descritos anteriormente, los medios de derivación de índices de contexto determinan un indicador de presencia/ausencia de coeficiente en sub-bloque para un sub-bloque adyacente derecho que es un sub-bloque adyacente al lado derecho de un sub-bloque objetivo del proceso y un sub-bloque adyacente inferior que es adyacente al lado inferior del mismo. Cuando se determina que un coeficiente de transformación distinto de cero no se encuentra presente en el sub-bloque adyacente derecho ni en el sub-bloque adyacente inferior, los medios de derivación de índices de contexto derivan, en base al resultado de la determinación, el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta en un caso en el que la agregación de xB e yB que indica la posición de un coeficiente en un sub-bloque es igual a o menor que un primer valor de umbral; derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia en un caso en el que la agregación de xB e yB es mayor que el primer valor de umbral y es igual a o menor que un segundo valor de umbral; y derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja en un caso en el que la agregación de xB e yB es mayor que el segundo valor de umbral.
De acuerdo con la configuración, es posible realizar un patrón de derivación de contexto que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación, y de este modo es posible mejorar la eficiencia de la codificación.
En particular, estableciendo el primer valor de umbral igual a 0 y el segundo valor de umbral igual a 2, es posible realizar un patrón de derivación de contexto preferible que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación distinto de cero. Además, preferiblemente, el primer valor de umbral se puede establecer igual a 1, y el segundo valor de umbral se puede establecer igual a 2. Además, preferiblemente, el primer valor de umbral se puede establecer igual a 1, y el segundo valor de umbral se puede establecer igual a 3.
Además, en el aparato de decodificación de imágenes en movimiento 1 en relación con los ejemplos de modificación 5-1 a 5-4, 5-6 y 5-7 descritos anteriormente, los medios de derivación de índices de contexto determinan un indicador de presencia/ausencia de coeficiente en sub-bloque para un sub-bloque adyacente derecho que es un sub-bloque adyacente al lado derecho de un sub-bloque objetivo del proceso y un sub-bloque adyacente inferior que es adyacente al lado inferior del mismo. Cuando se determina que un coeficiente de transformación distinto de cero no se encuentra presente en uno de los sub-bloques adyacente derecho y adyacente inferior, los medios de derivación de índices de contexto seleccionan una posición de coeficiente de una de entre xB e yB que indica una posición de coeficiente en un sub-bloque en una dirección adyacente de un sub-bloque en el que se determina que no se encuentra presente un coeficiente de transformación distinto de cero; derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta en un caso en el que la posición del coeficiente es igual a o menor que un primer valor de umbral; derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia en un caso en el que la posición del coeficiente es mayor que el primer valor de umbral e igual a o menor que un segundo valor de umbral; y derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja en un caso en el que la posición del coeficiente es mayor que el segundo valor de umbral.
Según la configuración, es posible establecer un valor de umbral preferible igual a una probabilidad de ocurrencia real de un coeficiente de transformación y de este modo realizar un patrón de derivación de contexto más adecuado. Por lo tanto, es posible mejorar la eficiencia de la codificación.
Además, en el aparato de decodificación de imágenes en movimiento 1 en relación con los ejemplos de modificación 5-1, 5-3, 5-4 y 5-5 descritos anteriormente, los medios de derivación de índices de contexto determinan un indicador de presencia/ausencia de coeficiente en sub-bloque para un sub-bloque adyacente derecho que es un sub-bloque adyacente al lado derecho de un sub-bloque objetivo del proceso y un sub-bloque adyacente inferior que es adyacente al lado inferior del mismo. Cuando se determina que un coeficiente de transformación distinto de cero se encuentra presente tanto en el sub-bloque adyacente derecho como en el sub-bloque adyacente inferior con respecto a un sub-bloque objetivo del proceso, los medios de derivación de índices de contexto derivan un índice de contexto fijo con respecto a un coeficiente de transformación distinto de cero en el sub-bloque objetivo del proceso.
Según la configuración, es posible minimizar una reducción en la eficiencia de la codificación y también simplificar la derivación de un índice de contexto.
Además, en la configuración, el índice de contexto fijo es preferiblemente un índice de contexto correspondiente a un caso en el que la frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es alta.
Según la configuración, es posible derivar de forma fija un índice de contexto que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación y que corresponde a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta. Por lo tanto, dado que se puede derivar un índice de contexto fijo que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación, es posible minimizar aún más una reducción en la eficiencia de la codificación y también simplificar la derivación de un índice de contexto.
[Operaciones y efectos]
Según se ha descrito anteriormente, el aparato de decodificación de imágenes en movimiento 1 en relación con los ejemplos de modificación 5-1 a 5-4, 5-6 y 5-7 incluye un dispositivo de decodificación aritmética que decodifica unos datos codificados que se obtienen codificando aritméticamente diversas sintaxis que indican un coeficiente de transformación con respecto a cada uno de los coeficientes de transformación que se obtiene para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de decodificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques cada uno de los cuales tiene un tamaño predeterminado; unos medios de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en el sub-bloque con respecto a los sub-bloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en sub-bloques; unos medios de determinación de coeficiente de transformación distinto de cero para determinar si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en un sub-bloque adyacente a un sub-bloque objetivo del proceso en base al indicador de presencia/ausencia de coeficiente en sub-bloque decodificado; y unos medios de derivación de índices de contexto para derivar un índice de contexto asignado a un indicador de presencia/ausencia de coeficiente de transformación que es una sintaxis que indica si el coeficiente de transformación es igual o no es igual a 0, en el que, cuando el coeficiente de transformación distinto de cero no se encuentra presente en ninguno de los sub­ bloques adyacentes al sub-bloque objetivo del proceso, los medios de derivación de índices de contexto derivan, en base al resultado de la determinación, los índices de contexto que corresponden respectivamente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja, a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, y a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia entre la probabilidad alta y la probabilidad baja, de acuerdo con una posición de un coeficiente de transformación objetivo del proceso en el sub-bloque objetivo del proceso.
En el aparato de decodificación de imágenes en movimiento 1 en relación con los ejemplos de modificación 5-1, 5-4, 5-6 y 5-7 descritos anteriormente, cuando se determina que un coeficiente de transformación distinto de cero no se encuentra presente en ninguno de los dos o más sub-bloques adyacentes al sub-bloque objetivo del proceso, los medios de derivación de índices de contexto derivan, en base al resultado de la determinación, los índices de contexto que corresponden respectivamente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja, a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, y a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia entre la probabilidad alta y la probabilidad baja, según una posición de un coeficiente de transformación objetivo del proceso en el sub-bloque objetivo del proceso. Por lo tanto, es posible mejorar la eficiencia de la codificación. En particular, un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta es preferiblemente asignado a una posición superior izquierda en el sub-bloque objetivo del proceso.
En el aparato de decodificación de imágenes en movimiento 1 en relación con los ejemplos de modificación 5-1 a 5­ 4, 5-6 y 5-7 descritos anteriormente, cuando se determina que un coeficiente de transformación distinto de cero se encuentra presente en uno o más sub-bloques adyacentes al sub-bloque objetivo del proceso y no se encuentra presente en uno o más sub-bloques, los medios de derivación de índices de contexto derivan, en base al resultado de la determinación, los índices de contexto que corresponden respectivamente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja, a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, y a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia entre la probabilidad alta y la probabilidad baja, de acuerdo con una posición de un coeficiente de transformación distinto de cero objetivo del proceso en el sub-bloque objetivo del proceso. Por lo tanto, es posible mejorar la eficiencia de la codificación. En particular, en un sub-bloque para el que se determina un coeficiente de transformación distinto de cero como presente en un sub-bloque adyacente al lado derecho y un coeficiente de transformación distinto de cero como presente en un sub-bloque adyacente al lado inferior, se asigna preferiblemente un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta a una primera fila del sub-bloque objetivo del proceso. Simétricamente a esto, en particular, en un sub-bloque para el que se determina un coeficiente de transformación distinto de cero como presente en un sub-bloque adyacente al lado inferior y un coeficiente de transformación distinto de cero como presente en un sub-bloque adyacente al lado derecho, se asigna preferiblemente un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta a una primera columna del sub-bloque objetivo del proceso.
En el aparato de decodificación de imágenes en movimiento 1 en relación con los ejemplos de modificación 5-1, 5-3, 5-4, 5-5, 5-6 y 5-7 descritos anteriormente, cuando se determina que un coeficiente de transformación distinto de cero se encuentra presente en dos o más sub-bloques adyacentes al sub-bloque objetivo del proceso, los medios de derivación de índices de contexto derivan de forma fija, en base al resultado de la determinación, el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, y puede simplificar la derivación del índice de contexto.
De acuerdo con la configuración relativa a los ejemplos de modificación 5-1 a 5-4, 5-6 y 5-7 descritos anteriormente, es posible realizar un patrón de derivación de contexto que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación, y de este modo es posible mejorar la eficiencia de la codificación.
[Combinación entre el ejemplo de modificación 5 y el ejemplo de modificación 1]
Además, el ejemplo de modificación 5 puede combinarse con el ejemplo de modificación 1. El ejemplo de modificación 5 es una configuración en la que se establece una separación de una etapa para un valor de un índice de contexto según la siguiente condición, como se ha descrito anteriormente. En otras palabras, en el patrón 0, se establece una separación de una etapa para un valor de un índice de contexto de acuerdo con xB+yB. En el patrón 1, se establece una separación de una etapa para un valor de un índice de contexto de acuerdo con yB. En el patrón 2, se establece una separación de una etapa para un valor de un índice de contexto de acuerdo con xB. Además, en el patrón 3, se establece una separación de una etapa para un valor de un índice de contexto de acuerdo con xB+yB, o se establece igualmente un valor de un índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta.
En un proceso de decodificación de un coeficiente de transformación utilizando el orden de exploración del ejemplo de modificación 1, se deriva un índice de contexto de acuerdo con la condición relacionada con el ejemplo de modificación 5, y de este modo se puede minimizar el número de cambios en 0 y 1 de los índices de contexto en un orden de exploración hacia atrás en un sub-bloque.
Más específicamente, el siguiente orden de exploración puede ser usado en los patrones 0 a 3 de los ejemplos de modificación 5-1 a 5-5.
En un caso del patrón 0, según se ilustra en la Figura 22(a), la unidad de control de decodificación de coeficientes 123 puede aplicar la exploración en diagonal hacia arriba a la derecha al mismo.
En un caso del patrón 1, según se ilustra en la Figura 22(b), la unidad de control de decodificación de coeficientes 123 aplica la exploración rápida horizontal al mismo. En otras palabras, en un caso de (significant_coeff_group_flag[xCG+1][yCG],significant_coeff_ group_flag[xCG][yCG+1])=(1,0), la unidad de control de decodificación de coeficientes 123 puede aplicar la exploración rápida horizontal al mismo.
En un caso del patrón 2, según se ilustra en la Figura 22(c), la unidad de control de decodificación de coeficientes 123 aplica la exploración rápida vertical. En otras palabras, en un caso de (significant_coeff_group_flag[xCG+1][yCG],significant_coeff_ group_flag[xCG][yCG+1])=(0,1), la unidad de control de decodificación de coeficientes 123 puede aplicar la exploración rápida vertical al mismo.
En un caso del patrón 3, según se ilustra en la Figura 22(d), la unidad de control de decodificación de coeficientes 123 puede aplicar la exploración en diagonal hacia arriba a la derecha.
«Ejemplo de modificación 6: referencia a coordenada absoluta>>>
En lo sucesivo se realizará una descripción, con referencia a las Figuras 34 y 35, de un ejemplo de modificación de un índice de contexto utilizando no sólo coordenadas (xB,yB) en un sub-bloque sino también una posición de coeficiente (xC,yC) en una UT.
En el presente ejemplo de modificación, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c obtiene un índice de patrón idxCG utilizando la Ecuación (A) anterior, y también deriva un índice de contexto en un procedimiento ilustrado en la Figura 34 de acuerdo con los patrones 0 a 3 obtenidos a partir de la misma.
La Figura 34 es un diagrama que ilustra otro ejemplo más de un pseudo-código para derivar un índice de contexto a partir de las coordenadas de un componente de frecuencia objetivo del proceso en un sub-bloque de acuerdo con un índice de patrón idxCG obtenido a partir de la Ecuación (A). La Figura 35 ilustra disposiciones de valores de índices de contexto en el procedimiento de derivación de índices de contexto que utiliza el pseudo-código ilustrado en la Figura 34.
Con referencia a las Figuras 34 y 35, se realizará una descripción de un valor de un índice de contexto que se deriva en cada caso de los patrones 0 a 3.
(Caso del patrón 0)
En un caso del patrón 0, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto usando sigCtx = (xB yB <= 2) <= 0) ? 1 : 0.
En otras palabras, un caso del patrón 0 es el mismo que un caso del patrón 0 del ejemplo anterior. Por lo tanto, los valores de los índices de contexto se disponen según se ilustra en la Figura 35(a).
(Caso del patrón 1)
En un caso del patrón 1, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto de acuerdo con la coordenada Y yC de la posición del coeficiente (xC,yC).
En un caso en el que yC es igual a 0, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCx=2. Por lo tanto, los valores de los índices de contexto se disponen según se ilustra en la Figura 35(e). En otras palabras, en un caso en el que yC es igual a 0, según se ilustra en la Figura 35(e), los valores de los índices de contexto son iguales a 2 en la primera fila (extremo superior) del sub-bloque. En contraste, en un caso en el que yC no es igual a 0, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto usando sigCtx = (yB <= 1) ? 1 : 0.
En consecuencia, según se ilustra en la Figura 35(b), los valores de los índices de contexto son iguales a 1 en las filas primera y segunda del sub-bloque, y los valores de los índices de contexto son iguales a 0 en las filas tercera y cuarta del sub-bloque.
(Caso del patrón 2)
En un caso del patrón 2, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto de acuerdo con la coordenada Y xC de la posición del coeficiente (xC,yC).
En un caso en el que xC es igual a 0, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva sigCx=2. Por lo tanto, los valores de los índices de contexto se disponen según se ilustra en la Figura 35(f). En otras palabras, en un caso en el que yC es igual a 0, según se ilustra en la Figura 35(f), los valores de los índices de contexto son iguales a 2 en la primera columna (extremo izquierdo) del subbloque.
En contraste, en un caso en el que xC no es igual a 0, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto usando sigCtx = (xB <= 1) ? 1 : 0.
En consecuencia, según se ilustra en la Figura 35(c), los valores de los índices de contexto son iguales a 1 en las columnas primera y segunda del sub-bloque, y los valores de los índices de contexto son iguales a 0 en las columnas tercera y cuarta del sub-bloque.
(Caso del patrón 3)
En un caso del patrón 3, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto usando sigCtx = (xB yB <= 4) <= 0) ? 1 : 0.
Por lo tanto, en un caso del patrón 3, si una agregación de la coordenada xB en la dirección horizontal de las coordenadas (xB,yB) en el sub-bloque y la coordenada yB en la dirección vertical es igual a o menor que 4, un valor de un índice de contexto es igual a “1”, y, en caso contrario, un valor de un índice de contexto es igual a “0”.
En consecuencia, los valores de los índices de contexto se disponen según se ilustra en la Figura 35(d).
[Operaciones y efectos]
Según se ha mencionado anteriormente, el aparato de decodificación de imágenes en movimiento 1 en relación con el ejemplo de modificación 6 incluye un dispositivo de decodificación aritmética que decodifica datos codificados obtenidos codificando aritméticamente diversas sintaxis que indican un coeficiente de transformación con respecto a cada uno de los coeficientes de transformación obtenidos para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de decodificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques cada uno de los cuales tiene un tamaño predeterminado; unos medios de decodificación de indicador de presencia/ausencia de coeficiente en subbloque para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en el sub-bloque con respecto a los sub-bloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en sub­ bloques; unos medios de determinación de directividad para determinar una directividad de una distribución de coeficientes de transformación en base a un indicador de presencia/ausencia de coeficiente en sub-bloque en un sub-bloque adyacente a un sub-bloque objetivo del proceso; y unos medios de derivación de índices de contexto para derivar un índice de contexto asignado a un indicador de presencia/ausencia de coeficiente de transformación que es una sintaxis que indica si el coeficiente de transformación es igual a 0, en el que los medios de derivación de índices de contexto derivan el índice de contexto utilizando unas coordenadas en el dominio de unidad objetivo del proceso en el sub-bloque objetivo del proceso, de acuerdo con una directividad determinada por los medios de determinación de directividad.
Según la configuración, en un caso de xC=0 o yC=0, en los patrones 1 y 2 se utiliza un índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta.
En un caso en el que está presente un borde horizontal o un borde vertical, los coeficientes de transformación distintos de cero tienden a concentrarse y aparecen en un dominio de xC=0 o yC=0.
De acuerdo con la configuración, dado que un índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta es utilizado en un caso en el que una probabilidad de presencia del borde horizontal o del borde vertical es alta, es posible mejorar la eficiencia de la codificación.
Además, en el patrón 1 (patrón 2), además de la determinación de yC=0 (xC=0), o en lugar de la determinación, se puede determinar si xC es igual a 0 e yC es igual a 0, y se puede derivar un índice de contexto de acuerdo con el resultado de la determinación.
«Ejemplo de modificación 7: patrón de probabilidad igualmente alta>>>
En lo sucesivo, se realizará una descripción, con referencia a las Figuras 36 a 38, de un ejemplo de modificación de la utilización equitativa de un índice de contexto en un sub-bloque objetivo del proceso en un caso en el que una probabilidad de que haya un gran número de coeficientes de transformación distintos de cero en un sub-bloque adyacente es alta.
En un caso en el que una probabilidad de que haya un gran número de coeficientes de transformación distintos de cero en un sub-bloque adyacente es alta, puede haber una ocurrencia de circunstancias en las que un gran número de coeficientes de transformación distintos de cero están presentes igualmente en un sub-bloque objetivo del proceso.
Con referencia a la Figura 36, se describirá un caso de circunstancias en las que un gran número de coeficientes de transformación distintos de cero están presentes igualmente en un sub-bloque objetivo del proceso, independientemente de las coordenadas del sub-bloque.
En un caso en el que hay coeficientes de transformación distintos de cero presentes en todos los sub-bloques de entre un sub-bloque adyacente derecho A, un sub-bloque adyacente inferior B y un sub-bloque adyacente inferior derecho C con respecto a un sub-bloque objetivo del proceso X ilustrado en la Figura 36, existe una tendencia a que la probabilidad de ocurrencia de un coeficiente de transformación distinto de cero en el sub-bloque X sea igualmente alta, independientemente de las coordenadas en el sub-bloque X.
En dicho caso, es preferible no utilizar el índice de contexto 1 que indica una probabilidad de ocurrencia con un nivel intermedio, sino el índice de contexto 2 que indica una probabilidad de ocurrencia con un nivel alto.
En el presente ejemplo de modificación, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c obtiene un índice de patrón idxCG que es un índice para especificar un patrón de derivación de contexto a partir de indicadores de presencia/ausencia de coeficiente en sub-bloque en sub-bloques adyacentes (sub-bloques adyacente derecho y adyacente inferior), utilizando la siguiente Ecuación (C).
idxCG= significant_coeff_group_flag[xCG+1][yCG]
(significant_coeff_group_flag[xCG][yCG+1] << 1)
(significant_coeff_group_flag[xCG+1] [yCG+1] << 2) (C)
El índice de patrón idxCG toma valores de 0 a 7 a partir de la ecuación anterior (C). La unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva los cinco patrones siguientes de acuerdo con los valores del índice de patrón idxCG.
(Patrón 0) En un caso en el que el valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 0 en todos los sub-bloques de entre el sub-bloque adyacente derecho (xCG+1,yCG), el sub-bloque adyacente inferior (xCG,yCG+1) y el sub-bloque adyacente inferior derecho (xCG+1,yCG+1).
(Patrón 1) En un caso en el que el valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 0 tanto en el sub-bloque adyacente derecho (xCG+1,yCG) como en el sub-bloque adyacente inferior (xCG,yCG+1). (Patrón 2) En un caso en el que un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 1 en uno de los sub-bloques de entre el sub-bloque adyacente derecho (xCG+1,yCG) y el sub-bloque adyacente inferior (xCG,yCG+1), y un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 0 en el otro de ellos.
(Patrón 3) En un caso en el que un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 1 tanto en el sub-bloque adyacente derecho (xCG+1,yCG) como en el sub-bloque adyacente inferior (xCG,yCG+1). (Patrón 4) En un caso en el que un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 1 en todos los sub-bloques de entre el sub-bloque adyacente derecho (xCG+1,yCG), el sub-bloque adyacente inferior (xCG,yCG+1) y el sub-bloque adyacente inferior derecho (xCG+1,yCG+1).
En el presente ejemplo de modificación, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c obtiene un índice de patrón idxCG usando la Ecuación (C) anterior, y también deriva un índice de contexto en un procedimiento ilustrado en la Figura 37 de acuerdo con los patrones 0 a 4 obtenidos a partir de la misma.
Con referencia a las Figuras 37 y 38, se realizará una descripción de un procedimiento específico de derivación de índices de contexto.
La Figura 37 es un diagrama que ilustra otro ejemplo más de un pseudo-código para derivar un índice de contexto a partir de las coordenadas de un componente de frecuencia objetivo del proceso en un sub-bloque de acuerdo con un índice de patrón idxCG obtenido a partir de la Ecuación (C). La Figura 38 ilustra disposiciones de valores de índices de contexto en el procedimiento de derivación de índices de contexto que utiliza el pseudo-código ilustrado en la Figura 37. Además, las partes sombreadas ilustradas en la Figura 38 son partes modificadas con respecto a las disposiciones de valores de índices de contexto ilustradas en la Figura 52.
Con referencia a la Figura 37, se realizará una descripción de un valor de un índice de contexto que se deriva en cada caso de los patrones 0 a 4.
(Caso del patrón 4)
En primer lugar, en un caso del patrón 4, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c determina si un patrón es o no es el patrón 4. En un caso en el que el patrón es el patrón 4, según se ilustra en la Figura 38(e), la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva igualmente sigCtx=2 en el sub-bloque, independientemente de los valores de xB e yB.
En un caso en el que el patrón no es el patrón 4, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c determina si el patrón es o no es uno de los patrones 0 a 3 de la siguiente manera. Además, en la Figura 37, se utiliza "idxCG&3" para calcular los 2 bits inferiores de idxCG, y de este modo se extraen los valores de los indicadores de presencia/ausencia de coeficiente en sub-bloque del sub-bloque adyacente derecho (xCG+1,yCG) y del sub-bloque adyacente inferior (xCG,yCG+1).
(Caso del patrón 0)
En un caso del patrón 0, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto usando sigCtx = (xB yB <= 2) <= 0) ? 1 : 0.
En otras palabras, un caso del patrón 0 es el mismo que un caso del patrón 0 del ejemplo anterior. Por lo tanto, los valores de los índices de contexto se disponen según se ilustra en la Figura 38(a).
(Caso del patrón 1)
En un caso del patrón 1, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto usando sigCtx = (yB <= 1) <= 0) ? 1 : 0.
En consecuencia, según se ilustra en la Figura 38(b), los valores de los índices de contexto son iguales a 1 en las filas primera y segunda del sub-bloque, y los valores de los índices de contexto son iguales a 0 en las filas tercera y cuarta del sub-bloque.
(Caso del patrón 2)
En un caso del patrón 2, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto usando sigCtx = (xB <= 1) <= 0) ? 1 : 0.
En consecuencia, según se ilustra en la Figura 38(c), los valores de los índices de contexto son iguales a 1 en las columnas primera y segunda del sub-bloque, y los valores de los índices de contexto son iguales a 0 en las columnas tercera y cuarta del sub-bloque.
(Caso del patrón 3)
En un caso del patrón 3, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto usando sigCtx = (xB yB <= 4) <= 0) ? 2 : 1.
Por lo tanto, en un caso del patrón 3, si una agregación de la coordenada xB en la dirección horizontal de las coordenadas (xB,yB) en el sub-bloque y la coordenada yB en la dirección vertical es igual a o menor que 4, un valor de un índice de contexto es igual a “1”, y, en caso contrario, un valor de un índice de contexto es igual a “0”.
En consecuencia, los valores de los índices de contexto se disponen según se ilustra en la Figura 38(d).
Según se ha mencionado anteriormente, en unos casos de los patrones 0 a 3, los índices de contexto se disponen respectivamente como en los ejemplos de las disposiciones ilustradas en las Figuras 52(a) a 52(d).
[Operaciones y efectos]
Según se ha mencionado anteriormente, el aparato de decodificación de imágenes en movimiento en relación con el ejemplo de modificación 7 incluye un dispositivo de decodificación aritmética que decodifica unos datos codificados que se obtienen codificando aritméticamente diversas sintaxis que indican un coeficiente de transformación con respecto a cada uno de los coeficientes de transformación que se obtienen para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de decodificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques cada uno de los cuales tiene un tamaño predeterminado; unos medios de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en el sub-bloque con respecto a los sub-bloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en sub-bloques; unos medios de determinación de presencia de coeficiente en sub-bloque adyacente para determinar si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en cada uno de los sub-bloques adyacentes a un sub-bloque objetivo del proceso en base al indicador de presencia/ausencia de coeficiente en sub-bloque; y unos medios de derivación de índices de contexto para derivar un índice de contexto asignado a un indicador de presencia/ausencia de coeficiente de transformación que es una sintaxis que indica si el coeficiente de transformación es igual o no es igual a 0, en el que, en un caso en el que al menos un coeficiente de transformación distinto de cero está incluido en sub-bloques de un número predeterminado o superior como resultado de la determinación, los medios de derivación de índices de contexto derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, de la misma manera que en el sub-bloque objetivo del proceso.
De acuerdo con la configuración, como los sub-bloques adyacentes que son objetivos para determinar un indicador de presencia/ausencia de coeficiente en un sub-bloque, se utiliza el sub-bloque adyacente inferior derecho C además del sub-bloque adyacente derecho A y del sub-bloque adyacente inferior B.
Se determina si se produce o no se produce un estado en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es igualmente alta en el sub-bloque objetivo del proceso X en base a los estados de los indicadores de presencia/ausencia de coeficiente en sub-bloque de los sub-bloques adyacentes al objetivo.
Además, en un caso en el que el se produce el estado en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es igualmente alta en el sub-bloque objetivo del proceso X, se utiliza igualmente en el sub-bloque objetivo del proceso X un índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta. Por lo tanto, es posible mejorar la eficiencia de la codificación.
En la descripción anterior, en un caso en el que los valores de los indicadores de presencia/ausencia de coeficiente en sub-bloque son iguales a 1 en todos los sub-bloques adyacentes, se utiliza igualmente un índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, pero la presente invención no se limita a ello.
En un caso en el que los valores de los indicadores de presencia/ausencia de coeficiente en sub-bloque son iguales a 1 en sub-bloques adyacentes de un número predeterminado o superior, se podrá utilizar igualmente un índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta. En un caso en el que los valores de los indicadores de presencia/ausencia de coeficiente en sub-bloque son iguales a 1 en sub-bloques adyacentes de un número predeterminado o superior, puede decirse que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero se encuentra igualmente en un estado alto en el sub-bloque objetivo del proceso X. Por lo tanto, la configuración correspondiente puede conseguir el mismo efecto que la configuración del ejemplo de modificación 5 descrito anteriormente.
<Ejemplo de modificación 8>
NPL 3 ha propuesto un procedimiento en el que, en una UT de 8 * 8, las formas de los sub-bloques que son diferentes entre sí en una dirección de exploración son unificadas en un sub-bloque de 4*4; también en una Ut de 8 * 8 hasta UT de 32 * 32, se selecciona un patrón de derivación de acuerdo con la presencia o no presencia de un coeficiente de transformación distinto de cero en un sub-bloque adyacente; y se deriva un índice de contexto relativo al indicador de presencia/ausencia de coeficiente de transformación de una posición en un sub-bloque de acuerdo con el patrón de derivación seleccionado. Además, NPL 3 ha propuesto un procedimiento en el que, en relación con una UT de 8*8 para luminancia, se diferencia un contexto relativo a un indicador de presencia/ausencia de coeficiente de transformación en unos casos en los que una dirección de exploración es una exploración en diagonal hacia arriba a la derecha y una exploración horizontal o una exploración vertical.
Sin embargo, en un caso de luminancia de una UT de 8*8, la exploración rápida horizontal y la exploración rápida vertical aparecen sólo en la intra-predicción, y su frecuencia de uso es menor que la de la exploración en diagonal hacia arriba a la derecha. Además, una tendencia (un promedio de frecuencias de ocurrencia de coeficientes de transformación distintos de cero durante la exploración rápida horizontal y la exploración rápida vertical) de una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero en una posición de coeficiente en un sub-bloque correspondiente a cada patrón de índice idxCG de la exploración rápida horizontal y la exploración rápida vertical es muy similar a una tendencia de una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero durante la exploración en diagonal hacia arriba a la derecha. Por consiguiente, los contextos relativos a los indicadores de presencia/ausencia de coeficiente de transformación durante la exploración en diagonal hacia arriba a la derecha, la exploración rápida horizontal y la exploración rápida vertical en luminancia de una UT de 8*8 pueden ser compartidos entre las mismas.
En lo sucesivo, con referencia a las Figuras 65, 66, 67 y 68, se realizará una descripción de un ejemplo de modificación 8 en el que se simplifica la derivación de un índice de contexto relativo a un indicador de presencia/ausencia de coeficiente de transformación en una UT de 8*8, y de este modo se reduce el número de contextos relativos a los indicadores de presencia/ausencia de coeficiente de transformación.
La Figura 65 es un diagrama de flujo que ilustra una operación de derivación de un índice de contexto relativo a un indicador de presencia/ausencia de coeficiente de transformación en la unidad de codificación de indicador de presencia/ausencia de coeficiente 124 en relación con el ejemplo de modificación 8.
(Etapa SX101)
La unidad de determinación de tamaño de UT 124a determina si un tamaño de UT objetivo del proceso es menor o no es menor que un tamaño predeterminado (por ejemplo, una UT de 8*8). En un caso en el que el tamaño de UT objetivo del proceso es menor que el tamaño predeterminado (SÍ en la etapa SX101), la unidad de determinación de tamaño de Ut 124a selecciona la unidad de derivación de contexto de posición 124b como medios de derivación de contexto, y el flujo pasa a la etapa SX104. En otros casos, el flujo pasa a la etapa SX102 (No en la etapa SX101). Por ejemplo, se utiliza la siguiente expresión para la determinación. Se utiliza log2TrafoSize < THSize, y, por ejemplo, se utiliza 3 como THSize. En un caso en el que se utiliza 3 como valor de umbral THsize, se determina que una UT de 4*4 es menor que el tamaño predeterminado. Se determina que una UT de 8*8, UT de 16*4, UT de 4*16, UT de 16*16, UT de 32*4, UT de 4*32 y UT de 32*32 son iguales o mayores que el tamaño predeterminado.
(Etapa SX102)
En un caso en el que el tamaño de UT objetivo del proceso es igual a o mayor que el tamaño predeterminado (por ejemplo, un tamaño 8*8) (No en la etapa SX101), la unidad de determinación de tamaño de UT 124a determina si la posición de un coeficiente de transformación objetivo del proceso es o no es DC. En un caso en el que la posición de un coeficiente de transformación objetivo del proceso es DC (Sí en la etapa SX102), la unidad de determinación de tamaño de UT 124a selecciona la unidad de derivación de contexto de posición 124b como medios de derivación de contexto, y el flujo pasa a la etapa SX104. En otros casos, la unidad de determinación de tamaño de UT 124a selecciona la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c como medios de derivación de contexto, y el flujo pasa a la etapa SX103 (No en la etapa SX102). Además, si la posición de un coeficiente de transformación objetivo del proceso es o no es DC puede determinarse en base a si una agregación de xC e yC es igual o no es igual a 0 utilizando una posición (xC,yC) de un coeficiente de transformación. En otras palabras, la determinación puede realizarse en base a la determinación de si "xC+yC==0" es verdadero o falso.
(Etapa SX104)
En un caso en el que el tamaño de UT objetivo del proceso es menor que el tamaño predeterminado (por ejemplo, una UT de 8*8) (Sí en la etapa SX101), o la posición del coeficiente de transformación objetivo del proceso es DC (Sí en la etapa SX102), la unidad de derivación de contexto de posición 124b seleccionada como medios de derivación de contexto deriva un índice de contexto ctxIdx de un indicador de presencia/ausencia de coeficiente de transformación que corresponde a una posición (xC,yC) del coeficiente de transformación ilustrado en la Figura 66. La Figura 66 es un diagrama que ilustra un índice de contexto asignado a cada posición de coeficiente en luminancia o croma en una UT de 4*4. Según se ilustra en la Figura 66, la UT de 4*4 se divide en nueve dominios que incluyen del "0" al "8", y se asigna un índice de contexto a cada uno de los nueve dominios. Por lo tanto, el número de contextos de la UT de 4*4 es igual a "9". Además, en un caso en el que la posición del coeficiente de transformación objetivo del proceso es DC, un valor asignado a un componente DC de la UT de 4*4 en la Figura 66 es asignado como un índice de contexto que es común a las UT incluyendo la UT de 4*4 hasta una UT de 32*32.
(Etapa SX103)
En un caso en el que el tamaño de UT objetivo del proceso es menor que el tamaño predeterminado (por ejemplo, una UT de 8*8) (No en la etapa SX101), o la posición del coeficiente de transformación objetivo del proceso es DC (Sí en la etapa SX102), la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c seleccionada como medios de derivación de contexto selecciona un patrón de derivación de acuerdo con la presencia o no presencia de un coeficiente de transformación distinto de cero en un sub-bloque adyacente, y deriva un índice de contexto sigCtx (ctxIdx) relativo a un indicador de presencia/ausencia de coeficiente de transformación de una posición en el sub-bloque de acuerdo con el patrón de derivación seleccionado.
Un proceso más específico en el cual la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto ctxIdx relativo a un indicador de presencia/ausencia de coeficiente de transformación en la etapa SX103 es se indica a continuación.
(Etapa SX103-1)
La unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c obtiene un índice de patrón idxCG correspondiente al patrón de derivación según si un coeficiente de transformación distinto de cero se encuentra o no se encuentra presente en el sub-bloque adyacente. El índice de patrón idxCG puede obtenerse a partir de la ecuación (A) anterior.
(Etapa SX103-2)
Un índice de contexto sigCtx (ctxIdx) relativo a un indicador de presencia/ausencia de coeficiente de transformación es derivado a partir del patrón de derivación correspondiente al índice de patrón obtenido idxCG y la posición en el sub-bloque. El patrón de derivación correspondiente al índice de patrón idxCG puede utilizar, por ejemplo, el del ejemplo de modificación 5-1 descrito anteriormente, y por lo tanto se omitirá una descripción detallada del mismo. En otras palabras, en un caso en el que el índice de patrón idxCG es el patrón 0, los valores de los índices de contexto tienen la disposición según se ilustra en la Figura 29(a). En un caso en el que el índice de patrón idxCG es el patrón 1, los valores de los índices de contexto tienen la disposición según se ilustra en la Figura 29(b). En un caso en el que el índice de patrón idxCG es el patrón 2, los valores de los índices de contexto tienen la disposición según se ilustra en la Figura 29(c). En un caso en el que el índice de patrón idxCG es el patrón 3, los valores de los índices de contexto tienen la disposición según se ilustra en la Figura 29(d).
(Etapa SX103-3)
La unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c agrega un valor de offset o desplazamiento predeterminado al índice de contexto sigCtx (ctxIdx) obtenido en la etapa SX103-2, para derivar el índice de contexto sigCtx (ctxIdx) relativo a un coeficiente de transformación objetivo del proceso.
En lo sucesivo, se describirá la derivación del valor de offset predeterminado en la etapa SX103-3 mediante un ejemplo de luminancia. La Figura 67 es un diagrama de flujo que ilustra una operación más detallada de la etapa SX103-3.
(Etapa SX201)
Se determina si una posición de sub-bloque objetivo del proceso (xCG,yCG) se encuentra en una frecuencia alta. Por ejemplo, la determinación se puede realizar en base a xCG+yCG>TH1. En un caso en el que una agregación de xCG y yCG es mayor que un valor de umbral predeterminado TH1, se determina que la posición se encuentra en una frecuencia alta y, en caso contrario, se determina que la posición se encuentra en una frecuencia baja. El valor de umbral TH1 puede ser igual a 0, por ejemplo. En este caso, un sub-bloque que incluye un componente DC es tratado como una frecuencia baja.
(Etapa SX202)
En un caso en el que la posición del sub-bloque objetivo del proceso (xCG,yCG) se encuentra en una frecuencia alta (Sí en la etapa SX201), se agrega al índice de contexto sigCtx (ctxIdx) un valor de offset predeterminado offsetHighFreq para identificar contextos para una frecuencia baja y una frecuencia alta. En otras palabras, sigCtx (ctxIdx) se obtiene por medio de sigCtx = sigCtx offsetHighFreq. Además, como significado del operador "+=" mostrado en la etapa SX202 de la Figura 67, en un caso en el que A y B se utilizan como "A+=B", esto indica "A=A+B". Lo mismo aplica en lo sucesivo.
Además, en el presente ejemplo, se indica una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero en tres niveles que incluyen "alto", "intermedio" y "bajo", y por lo tanto se utiliza el "3" como valor de offset o desplazamiento predeterminado offsetHighFreq.
(Etapa SX203)
Se determina si un tamaño de UT objetivo del proceso es o no es un tamaño predeterminado (por ejemplo, una UT de 8*8). En otras palabras, se determina si un tamaño de UT objetivo del proceso es o no es un tamaño predeterminado mediante la determinación de si log2TrafoSize == THSize es verdadero o falso.
Además, por ejemplo, se utiliza el "3" como valor de umbral THSize, el cual indica un tamaño de una UT de 8*8. (Etapa SX204)
En un caso en el que el tamaño de UT objetivo del proceso es el tamaño predeterminado (por ejemplo, una UT de 8*8) (Sí en la etapa SX203), se agrega al índice de contexto ctxIdx un valor de desplazamiento predeterminado offsetNA para identificar contextos para una UT que satisfaga el valor de umbral THSize y otras UT. En otras palabras, se calcula sigCtx = sigCtx offsetNA.
En este punto, para identificar contextos para una UT de 4*4 y una UT de 8*8, el valor de offset o desplazamiento offsetNA se establece, por ejemplo, igual a "9", que es el número de contextos de la UT de 4*4 ilustrada en la Figura 66.
(Etapa Sx205)
En un caso en el que el tamaño de UT objetivo del proceso no es el tamaño predeterminado (por ejemplo, una UT de 8*8) (No en la etapa SX203), se agrega al mismo un valor de desplazamiento predeterminado offsetNB para identificar contextos para una UT (UT de 8*8) que satisfaga el valor de umbral THSize y otras UT (una UT de 16*16 hasta una UT de 32*32). En otras palabras, se calcula sigCtx = sigCtx offsetNB. En este caso, para identificar contextos para una UT de 8*8 y una UT de 16*16 hasta una UT de 32*32, el valor de offset NB se establece, por ejemplo, igual a "15", que es una agregación de "9" como el número de contextos de la UT de 4*4 ilustrada en la Figura 66 y "6" como el número de contextos de la UT de 8*8. La razón por la que el número de contextos de la UT de 8*8 es "6" es que, en el presente ejemplo, una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es indicada en tres niveles que incluyen "alto", "intermedio" y "bajo", y cada uno de una frecuencia baja y frecuencia alta tiene "tres" como número de contextos.
Según se ha mencionado anteriormente, en el ejemplo de modificación 8, si los valores de desplazamiento offsetHighFreq, offsetNA y offsetNB para identificar los índices de contexto se establecen iguales a offsetHighFreq = 3, offsetNA = 9, y offsetNB = 15, los índices de contexto relativos a los indicadores de presencia/ausencia de coeficiente de transformación para la luminancia son asignados con valores de 0 a 20, según se ilustra en la Figura 68.
ctxIdx=0 es un índice de contexto para DC
ctxIdx=1 a 8 son índices de contexto para una UT de 4*4
ctxIdx=9 a 11 son índices de contexto para una UT de 8*8 (frecuencia baja)
ctxIdx=12 a 14 son índices de contexto para una UT de 8*8 (frecuencia alta)
ctxIdx=15 a 17 son índices de contexto para una UT de 16*16 hasta una UT de 32*32 (frecuencia baja) ctxIdx=18 a 20 son índices de contexto para una UT de 16*16 hasta una UT de 32*32 (frecuencia alta) Por lo tanto, el número total de contextos es 21.
En este punto, se describirán las ventajas de la configuración mediante comparación con un ejemplo comparativo (NPL 3) de la técnica relacionada.
<Descripción de técnica comparativa>
En lo sucesivo, se realizará una descripción de la derivación de un índice de contexto relativo a un indicador de presencia/ausencia de coeficiente de transformación en una unidad de codificación de indicador de presencia/ausencia de coeficiente de transformación en relación con la técnica comparativa (NPL 3).
En el ejemplo de modificación 8 y NPL 3, un flujo de un procedimiento de selección de medios de derivación de contexto, ilustrado en la Figura 65, es común a los mismos, y por lo tanto se omitirá su descripción. Además, en la etapa SX103 de la Figura 65, los procesos en las etapas SX103-1 y SX103-2 son comunes al ejemplo de modificación 8 y a la técnica comparativa, por lo que se omitirá la descripción detallada de las mismas. En otras palabras, también en la técnica comparativa, se deriva un índice de patrón idxCG correspondiente a un patrón de derivación en base a la ecuación anterior (X) según la determinación de si un coeficiente de transformación distinto de cero se encuentra o no se encuentra presente en un sub-bloque adyacente. A continuación, se deriva un índice de contexto relativo a un indicador de presencia/ausencia de coeficiente de transformación a partir del patrón de derivación correspondiente al índice de patrón derivado idxCG y una posición en un sub-bloque. El patrón de derivación correspondiente al índice de patrón idxCG es el mismo que en el ejemplo de modificación 5-1 descrito anteriormente, por lo que se omitirá la descripción detallada del mismo.
En un caso en el que el índice de patrón idxCG es el patrón 0, los valores de los índices de contexto tienen la disposición según se ilustra en la Figura 29(a). En un caso en el que el índice de patrón idxCG es el patrón 1, los valores de los índices de contexto tienen la disposición según se ilustra en la Figura 29(b). En un caso en el que el índice de patrón idxCG es el patrón 2, los valores de los índices de contexto tienen la disposición según se ilustra en la Figura 29(c). En un caso en el que el índice de patrón idxCG es el patrón 3, los valores de los índices de contexto tienen la disposición según se ilustra en la Figura 29(d).
En lo sucesivo, con referencia a la Figura 74, se realizará una descripción detallada de una operación de agregar un desplazamiento de cada condición a un índice de contexto que se obtiene a partir de un patrón de derivación correspondiente a un índice de patrón idxCG y una posición en un sub-bloque en la etapa SX103-3 de la Figura 65 en la técnica comparativa.
Se realizará una descripción de cómo se realiza la derivación de un valor de offset o desplazamiento predeterminado correspondiente a la etapa SX103-3 de la Figura 65 en el ejemplo comparativo, exponiendo como ejemplo un caso de luminancia. Según se ilustra en la Figura 74, en la técnica comparativa, se realiza de la siguiente manera un proceso SX103-3P correspondiente a la etapa SX103-3 de la Figura 65.
(Etapa SY201)
Se determina si una posición de sub-bloque objetivo del proceso (xCG,yCG) se encuentra o no se encuentra en una frecuencia alta.
(Etapa SY202)
En un caso en el que la posición del sub-bloque objetivo del proceso (xCG,yCG) se encuentra en una frecuencia alta (Sí en la etapa SY201), se agrega al índice de contexto sigCtx un valor de desplazamiento predeterminado para identificar contextos para una frecuencia baja y una frecuencia alta. En NPL 3, se calcula sigCtx por medio de sigCtx = sigCtx 3.
(Etapa SY203)
Se determina si un tamaño de UT objetivo del proceso es o no es una UT de 8*8.
(Etapa SY204)
En un caso en el que el tamaño de UT objetivo del proceso es la UT de 8*8 (Sí en la etapa SY203), se determina que una dirección de exploración es la exploración en diagonal hacia arriba a la derecha.
(Etapa SY205)
En un caso en el que una dirección de exploración es la exploración en diagonal hacia arriba a la derecha en la UT objetivo del proceso (Sí en la etapa SY204), se agrega al índice de contexto ctxIdx un valor de desplazamiento predeterminado para identificar contextos para la exploración en diagonal hacia arriba a la derecha y la exploración rápida horizontal o la exploración rápida vertical. En la técnica comparativa, se calcula sigCtx por medio de sigCtx = sigCtx 9.
(Etapa SY206)
En un caso en el que una dirección de exploración no es la exploración en diagonal hacia arriba a la derecha en la UT objetivo del proceso, es decir, una dirección de exploración es la exploración rápida horizontal o la exploración rápida vertical (No en la etapa SY204), se agrega al índice de contexto ctxIdx un valor de desplazamiento predeterminado para identificar contextos para la exploración en diagonal hacia arriba a la derecha y la exploración rápida horizontal o la exploración rápida vertical. En la técnica comparativa, se calcula sigCtx por medio de sigCtx = sigCtx 15.
(Etapa SY207)
En un caso en el que el tamaño de UT objetivo del proceso no es una UT de 8*8, es decir, el tamaño es igual a 16*16, 32x32, 4*l6 , 16*4, 8*32 o 32*8 (No en la etapa SY203), se agrega al mismo un valor de desplazamiento predeterminado para identificar contextos para la UT de 8*8 y otra UT. En la técnica comparativa, se calcula sigCtx por medio de sigCtx = sigCtx 21.
Según se ha mencionado anteriormente, en la técnica comparativa, los índices de contexto relativos a los indicadores de presencia/ausencia de coeficiente de transformación para luminancia son asignados con valores del 0 al 26, según se ilustra en la Figura 69.
ctxIdx=0 es un índice de contexto para DC
ctxIdx=1 a 8 son índices de contexto para una UT de 4*4
ctxIdx=9 a 11 son índices de contexto para una exploración en diagonal hacia arriba a la derecha de una UT de 8*8 (frecuencia baja)
ctxIdx=12 a 14 son índices de contexto para una exploración en diagonal hacia arriba a la derecha de una UT de 8*8 (frecuencia alta)
ctxIdx=15 a 17 son índices de contexto para una exploración rápida horizontal o exploración rápida vertical de una UT de 8*8 (frecuencia baja)
ctxIdx=18 a 20 son índices de contexto para una exploración rápida horizontal o exploración rápida vertical de una UT de 8*8 (frecuencia alta)
ctxIdx=21 a 23 son índices de contexto para una UT de 16*16 hasta una UT de 32*32 (frecuencia baja) ctxIdx=24 a 26 son índices de contexto para una UT de 16*16 hasta una UT de 32*32 (frecuencia alta)
Por lo tanto, un número total de contextos es 27.
En la técnica comparativa, en relación con la UT de 8*8 para luminancia, los contextos relativos a los indicadores de presencia/ausencia de coeficiente de transformación se diferencian entre sí en los casos en que una dirección de exploración es la exploración en diagonal hacia arriba a la derecha y la exploración rápida horizontal o la exploración rápida vertical. Por otra parte, en el ejemplo de modificación 8, mediante el uso de características en las que una tendencia (un promedio de frecuencias de ocurrencia de coeficientes de transformación distintos de cero durante la exploración rápida horizontal y la exploración rápida vertical) de una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero en una posición de coeficiente en un sub-bloque correspondiente a cada patrón de índice idxCG de la exploración rápida horizontal y la exploración rápida vertical es muy similar a una tendencia de una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero durante la exploración en diagonal hacia arriba a la derecha, los contextos relativos a los indicadores de presencia/ausencia de coeficiente de transformación durante la exploración en diagonal hacia arriba a la derecha, la exploración rápida vertical y la exploración rápida horizontal en la luminancia de la UT de 8*8 son compartidos entre ellas. Por lo tanto, se puede reducir la rama relativa a los cambios de contexto según una dirección de exploración, y se puede reducir de 27 a 21, es decir, en un número total de seis, un número total de índices de contexto relativos a los indicadores de presencia/ausencia de coeficiente de transformación para la luminancia, en comparación con la técnica comparativa. De este modo, es posible reducir el tamaño de la memoria necesaria para mantener un estado de contexto. Además, el presente inventor ha confirmado por medio de la prueba que, en un caso en el que los patrones ilustrados en las Figuras 29(a) a 29(d) se utilizan como patrones de derivación correspondientes al índice de patrón idxCG, no hay ninguna reducción en la eficiencia de la codificación debido a la compartición de contextos relativos a indicadores de presencia/ausencia de coeficiente de transformación durante la exploración en diagonal hacia arriba a la derecha, la exploración rápida horizontal y la exploración rápida vertical en luminancia de la UT de 8*8, incluyendo los respectivos índices de contexto.
[Operaciones y efectos]
Como se ha mencionado anteriormente, según el ejemplo de modificación 8, es posible conseguir efectos de minimizar una reducción en la eficiencia de la codificación, simplificar un proceso de derivación de un índice de contexto relativo a un indicador de presencia/ausencia de coeficiente de transformación, y reducir un tamaño de una memoria mediante una reducción en el número de contextos.
<Ejemplo de modificación 8-1>
En el ejemplo de modificación 8, se utilizan los patrones ilustrados en las Figuras 29(a) a 29(d) como disposiciones de índices de contexto en un sub-bloque, correspondientes a un índice de patrón idxCG de una UT 8x8 hasta una UT de 32*32, de la misma manera que en el ejemplo de modificación 5-1, pero la presente invención no se limita a ellos.
De acuerdo con la prueba realizada por el presente inventor, el siguiente hecho ha sido confirmado como una tendencia de una frecuencia de ocurrencia promedio de un coeficiente de transformación distinto de cero durante la exploración en diagonal hacia arriba a la derecha, la exploración rápida horizontal y la exploración rápida vertical, en la luminancia de una UT de 8*8 hasta una UT de 32*32.
En otras palabras, en un caso en el que el índice de patrón idxCG es un patrón 0, es decir, un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 0 tanto en el sub-bloque adyacente derecho (xCG+1,yCG) como en el sub-bloque adyacente inferior (xCG,yCG+1), existen las siguientes tendencias P0-1 hasta P0-3.
P0-1: Una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es alta en promedio en una posición en la que una posición de coeficiente (xB,yB) en un sub-bloque satisface xB+yB<2.
P0-2: Una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es aproximadamente intermedia en una posición en la que una posición de coeficiente (xB,yB) en un sub-bloque satisface 2<xB+yB<3 o 2<xB+yB<4.
P0-3: Una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es baja en una posición en la que una posición de coeficiente (xB,yB) en un sub-bloque satisface xB+yB>3 o xB+yB>4.
Por lo tanto, teniendo en cuenta las tendencias, en una UT de 8*8 hasta una UT de 32*32, los índices de contexto en el patrón 0 pueden disponerse según se ilustra en la Figura 61(a) del ejemplo de modificación 5-6 o según se ilustra en la Figura 63(a) del ejemplo de modificación 5-7.
En un caso de la Figura 61 (a), se puede derivar un índice de contexto a partir de la siguiente ecuación.
sigCtx = (xB yB <2) ? 2 : (xB yB < 3) ? 1 : 0
En un caso de la Figura 63(a), se puede derivar un índice de contexto a partir de la siguiente ecuación. sigCtx = (xB yB < 2) ? 2 : (xB yB < 4) ? 1 : 0
En lo sucesivo, si la determinación se realiza en "x o menos" o "x+1 por debajo" podrá modificarse según corresponda.
En un caso en el que el índice de patrón idxCG es un patrón 1, es decir, un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 0 en el sub-bloque adyacente derecho (xCG+1,yCG) y un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 1 en el sub-bloque adyacente inferior (xCG,yCG+1), existen las siguientes tendencias P1-1 a P1-3.
P1-1: Una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es alta en promedio en una posición en la que una posición de coeficiente (xB,yB) en un sub-bloque satisface yB<1.
P1-2: Una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es aproximadamente intermedia en una posición en la que una posición de coeficiente (xB,yB) en un sub-bloque satisface 1<yB<2 o 1<yB<3.
P1-3: Una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es baja en una posición en la que una posición de coeficiente (xB,yB) en un sub-bloque satisface yB>2 o yB>3.
Por lo tanto, considerando las tendencias, en una UT de 8*8 hasta una UT de 32*32, los índices de contexto en el patrón 1 pueden disponerse según se ilustra en la Figura 33(b) en lugar de como en la Figura 29(b).
En un caso de la Figura 33(b), se puede derivar un índice de contexto a partir de la siguiente ecuación.
sigCtx = (yB < 1) ? 2 : (yB < 3) ? 1 : 0
Si la configuración se aplica al patrón 1, de la misma manera que en el ejemplo de modificación 8, es posible minimizar una reducción en la eficiencia de la codificación y simplificar la derivación de un índice de contexto relativo a un indicador de presencia/ausencia de coeficiente de transformación.
En un caso en el que el índice de patrón idxCG es un patrón 2, es decir, un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 0 en el sub-bloque adyacente derecho (xCG+1,yCG) y un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 1 en el sub-bloque adyacente inferior (xCG,yCG+1), existen las siguientes tendencias P2-1 a P2-3.
P2-1: Una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es alta en promedio en una posición en la que una posición de coeficiente (xB,yB) en un sub-bloque satisface xB<1.
P2-2: Una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es aproximadamente intermedia en una posición en la que una posición de coeficiente (xB,yB) en un sub-bloque satisface 1<xB<2 o 1<xB<3.
P2-3: Una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es baja en una posición en la que una posición de coeficiente (xB,yB) en un sub-bloque satisface xB>2 o xB>3.
Por lo tanto, teniendo en cuenta las tendencias, en una UT de 8*8 hasta una UT de 32*32, los índices de contexto en el patrón 2 pueden disponerse según se ilustra en la Figura 33(c) en lugar de como en la Figura 29(c).
En un caso de la Figura 33(c), se puede derivar un índice de contexto a partir de la siguiente ecuación.
sigctx = (xB< 1) ? 2 : (xB < 3) ? 1 : 0
Si la configuración se aplica al patrón 2, de la misma manera que en el ejemplo de modificación 8, es posible minimizar una reducción en la eficiencia de la codificación y simplificar la derivación de un índice de contexto relativo a un indicador de presencia/ausencia de coeficiente de transformación.
En un caso en el que el índice de patrón idxCG es un patrón 3, es decir, un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 1 en el sub-bloque adyacente derecho (xCG+1,yCG) y un valor del indicador de presencia/ausencia de coeficiente en sub-bloque es igual a 1 en el sub-bloque adyacente inferior (xCG,yCG+1), existe la siguiente tendencia P3-1.
P3-1: Una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es alta en promedio o aproximadamente intermedia, independientemente de una posición en la que se encuentra un coeficiente (xB,yB) en un sub-bloque.
Por lo tanto, considerando la tendencia, en una UT de 8*8 hasta una UT de 32*32, puede utilizarse el "1" que indica que una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es aproximadamente intermedia en lugar del "2" que indica que una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es alta, en la Figura 29(d) que ilustra la disposición de índices de contexto en el patrón 3.
En este caso, puede derivarse un índice de contexto a partir de la siguiente ecuación. SigCtx = 1
[Operaciones y efectos]
[[En cuanto al patrón 0]]
Como se ha mencionado anteriormente, según la configuración del ejemplo de modificación 8-1, en el aparato de decodificación de imágenes en movimiento 1, los medios de derivación de índices de contexto determinan un indicador de presencia/ausencia de coeficiente en sub-bloque para un sub-bloque adyacente derecho que es un sub-bloque adyacente al lado derecho y un sub-bloque adyacente inferior que es adyacente al lado inferior. Cuando se determina que un coeficiente de transformación distinto de cero no se encuentra presente en el sub-bloque adyacente derecho ni en el sub-bloque adyacente inferior los medios de derivación de índices de contexto dertivan, en base al resultado de la determinación, el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta en un caso en el que la agregación de xB e yB que indica una posición de coeficiente en un sub-bloque es igual a o menor que un primer valor de umbral; derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia en un caso en el que la agregación de xB e yB es mayor que el primer valor de umbral y es igual a o menor que un segundo valor de umbral; y derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja en un caso en el que la agregación de xB e yB es mayor que el segundo valor de umbral. Dado que se puede realizar un patrón de derivación de contexto que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación, es posible minimizar aún más una reducción en la eficiencia de la codificación y simplificar la derivación de un índice de contexto. En particular, estableciendo el primer valor de umbral igual a 2 y el segundo valor de umbral igual a 3, es posible derivar un índice de contexto preferible que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación distinto de cero. En particular, en un caso en el que la derivación de un índice de contexto se hace en común a las UT que incluyen una UT de 8*8 hasta una UT de 32*32, es posible derivar un índice de contexto preferible que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación distinto de cero estableciendo el primer valor de umbral igual a 1 y el segundo valor de umbral igual a 2. Además, el primer valor de umbral puede establecerse igual a 2 y el segundo valor de umbral puede establecerse igual a 3.
[[En cuanto a los patrones 1 y 2]]
Como se ha mencionado anteriormente, según la configuración del ejemplo de modificación 8-1, en el aparato de decodificación de imágenes en movimiento 1, los medios de derivación de índices de contexto determinan un indicador de presencia/ausencia de coeficiente en sub-bloque para un sub-bloque adyacente derecho que es un sub-bloque adyacente al lado derecho y un sub-bloque adyacente inferior que es adyacente al lado inferior. Cuando se determina que un coeficiente de transformación distinto de cero no se encuentra presente en uno de los sub­ bloques adyacentes derecho e inferior, los medios de derivación de índices de contexto seleccionan una posición de coeficiente de entre xB e yB que indica una posición de coeficiente en un sub-bloque en una dirección adyacente de un sub-bloque en el que se determina que no se encuentra presente un coeficiente de transformación distinto de cero; derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta en un caso en el que la posición del coeficiente es igual a o menor que un primer valor de umbral; derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia en un caso en el que la posición del coeficiente es mayor que el primer valor de umbral e igual a o menor que un segundo valor de umbral; y derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja en un caso en el que la posición del coeficiente es mayor que el segundo valor de umbral. Dado que se puede realizar un patrón de derivación de contexto que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación, es posible minimizar una reducción en la eficiencia de la codificación y simplificar la derivación de un índice de contexto. En particular, en un caso en el que la derivación de un índice de contexto se hace en común a las UT que incluyen una UT de 8*8 hasta una UT de 32*32, es posible derivar un índice de contexto preferible que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación distinto de cero estableciendo el primer valor de umbral igual a 0 y el segundo valor de umbral igual a 1. Además, se puede establecer el primer valor de umbral igual a 0 y el segundo valor de umbral igual a 2.
[[En cuanto al patrón 3]]
Como se ha mencionado anteriormente, según la configuración del ejemplo de modificación 8-1, en el aparato de decodificación de imágenes en movimiento 1, los medios de derivación de índices de contexto determinan un indicador de presencia/ausencia de coeficiente en sub-bloque para un sub-bloque adyacente derecho que es un sub-bloque adyacente al lado derecho de un sub-bloque objetivo del proceso y un sub-bloque adyacente inferior que es adyacente al lado inferior del mismo. Cuando se determina que un coeficiente de transformación distinto de cero se encuentra presente tanto en el sub-bloque adyacente derecho como en el sub-bloque adyacente inferior con respecto a un sub-bloque objetivo del proceso, los medios de derivación de índices de contexto derivan un índice de contexto fijo con respecto a un coeficiente de transformación distinto de cero en el sub-bloque objetivo del proceso en base al resultado de la determinación. En particular, se establece un índice de contexto de un coeficiente de transformación distinto de cero derivado de forma fija preferiblemente igual a un índice de contexto que indica que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta. Además, también se establece un índice de contexto de un coeficiente de transformación distinto de cero derivado de forma fija preferiblemente igual a un índice de contexto que indica que la probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es aproximadamente intermedia. Por consiguiente, puesto que se puede derivar un índice de contexto fijo que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación, es posible minimizar una reducción en la eficiencia de la codificación y simplificar la derivación de un índice de contexto.
<Ejemplo de modificación 8-2>
En los ejemplos de modificación 8 y 8-1, las disposiciones de los índices de contexto en un sub-bloque correspondiente a un índice de patrón idxCG se realizan en común a una UT de 8*8 hasta una UT de 32*32, pero la presente invención no se limita a ello. Las disposiciones de los índices de contexto de los patrones 0 a 2 pueden ser cambiadas de forma adaptativa de acuerdo con una dirección de exploración (índice de exploración scanIdx). Por lo tanto, una disposición de índices de contexto es cambiada teniendo en cuenta una tendencia de una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero para cada dirección de exploración y, por lo tanto, es posible mejorar la eficiencia de la codificación cuando se compara con los ejemplos de modificación 8 y 8-1. Además, en un caso del ejemplo de modificación 8-2, se supone que se suministra una dirección de exploración (índice de exploración scanIdx) a la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub­ bloque adyacente 124c suministrada por un dispositivo externo.
La Figura 70 ilustra un ejemplo de un pseudo-código para derivar un índice de contexto correspondiente a cada índice de patrón idxCG en un caso en el que se cambia una disposición de índices de contexto en un sub-bloque de acuerdo con una dirección de exploración (índice de exploración scanIdx).
De acuerdo con la prueba realizada por el presente inventor, el siguiente hecho ha sido confirmado como cada tendencia de una frecuencia de ocurrencia de un coeficiente de transformación distinto de cero en un patrón 0 durante la exploración en diagonal hacia arriba a la derecha, la exploración rápida horizontal, y la exploración rápida vertical, en una UT de 8*8.
<Caso de exploración en diagonal hacia arriba a la derecha (scanIdx==0)>
La frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es alta en promedio en una posición en la que una posición de coeficiente (xB,yB) en un sub-bloque satisface xB+yB<2.
La frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es aproximadamente intermedia en una posición en la que una posición de coeficiente (xB,yB) en un sub-bloque satisface 2<xB+yB<3.
La frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es baja en una posición en la que una posición de coeficiente (xB,yB) en un sub-bloque satisface xB+yB>3.
Por lo tanto, teniendo en cuenta las tendencias, los índices de contexto en el patrón 0 durante la exploración en diagonal hacia arriba a la derecha se disponen preferiblemente según se ilustra en la Figura 71(a).
En un caso de la Figura 71 (a), se puede derivar un índice de contexto a partir de la siguiente ecuación.
sigCtx = (XB+ yB < 2) ? 2 : (xB yB <3) ?1 : 0
Además, la Ecuación anterior puede ser expandida para ser representada como la siguiente Ecuación.
sigctx = (xB yB < THl) ? 2 : (xB yB< TH2)? 1 : 0
En otras palabras, en un caso en el que xB+yB es menor que el valor de umbral TH1, se deriva un índice de contexto que indica que la frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es alta; en un caso en el que xB+yB es igual a o mayor que el valor de umbral TH1 y es menor que el valor de umbral TH2, se deriva un índice de contexto que indica que la frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es aproximadamente intermedia; y en otros casos (en un caso en el que xB+yB es superior al valor de umbral TH2), se deriva un índice de contexto que indica que la frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es baja.
Un caso de la Figura 71(a) es un caso del valor de umbral TH1=2 y TH2=3.
<Caso de exploración rápida horizontal (scanIdx==1)>
En un caso de la exploración rápida horizontal, hay una tendencia a que los coeficientes de transformación distintos de cero se concentren en componentes de frecuencia en la dirección horizontal. En particular, en un caso del patrón 0, hay las siguientes tendencias.
La frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es alta en promedio en una posición en la que una posición de coeficiente (xB,yB) en un sub-bloque satisface xB+2*yB<3.
La frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es aproximadamente intermedia en una posición en la que una posición de coeficiente (xB,yB) en un sub-bloque satisface 3<xB+2*yB<5.
La frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es baja en una posición en la que una posición de coeficiente (xB,yB) en un sub-bloque satisface xB+2*yB>5.
Por lo tanto, teniendo en cuenta las tendencias, los índices de contexto en el patrón 0 durante la exploración rápida vertical se disponen preferiblemente según se ilustra en la Figura 71(b).
En un caso de la Figura 71 (b), se puede derivar un índice de contexto a partir de la siguiente ecuación.
s i g C t x - (xB * 2 * yB < 3) ? 2 : (xB 2 * yB < 5) ? 1 : 0
Además, la Ecuación anterior puede ser expandida para representarse como la siguiente Ecuación.
sigCtx = (Wl*xB W2*yB <TH3)? 2 : (Wl*xB W2*yB <
TH4) ?1 : 0
En otras palabras, en un caso en el que la agregación ponderada "W1*xB+W2xyB" es menor que el valor de umbral TH3, se deriva un índice de contexto que indica que la frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es alta; En un caso en el que la agregación ponderada "W1*xB+W2xyB" es igual a o mayor que el valor de umbral TH3 y es menor que el valor de umbral TH4, se deriva un índice de contexto que indica que la frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es aproximadamente intermedia; y en otros casos (en un caso en el que la agregación ponderada "W1*xB+W2xyB" es superior al valor de umbral TH4), se deriva un índice de contexto que indica que la frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es baja.
Un caso de la Figura 71(b) es un caso del factor de ponderación W1=1, el factor de ponderación W2=2, el valor de umbral TH3=3 y el valor de umbral TH4=5. Además, en un caso de la exploración rápida horizontal, dado que los coeficientes de transformación distintos de cero se concentran en la dirección horizontal, el factor de ponderación W1 se establece igual a 1, el factor de ponderación W2 se establece igual a 1, el valor de umbral TH3 se establece igual a 1 y el valor de umbral TH4 se establece igual a 2, de modo que se simplifica una agregación ponderada y, por lo tanto, pueden derivarse los índices de contexto ilustrados en la Figura 29(b). Además, estableciendo el factor de ponderación W1 igual a 1, el factor de ponderación W2 igual a 3, el valor de umbral TH3 igual a 4 y el valor de umbral TH4 igual a 8, se puede obtener una disposición de los índices de contexto ilustrada en la Figura 72(a).
<Caso de exploración rápida vertical (scanIdx==2)>
En un caso de la exploración rápida vertical, hay una tendencia a que los coeficientes de transformación distintos de cero se concentren en las componentes de frecuencia en la dirección vertical. En particular, en un caso del patrón 0, hay las siguientes tendencias.
La frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es alta en promedio en una posición en la que una posición de coeficiente (xB,yB) en un sub-bloque satisface 2xxB+yB<3.
La frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es aproximadamente intermedia en una posición en la que una posición de coeficiente (xB,yB) en un sub-bloque satisface 3<2xxB+yB<5.
La frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es baja en una posición en la que una posición de coeficiente (xB,yB) en un sub-bloque satisface 2xxB+yB>5.
Por lo tanto, teniendo en cuenta las tendencias, los índices de contexto en el patrón 0 durante la exploración rápida vertical se disponen preferiblemente según se ilustra en la Figura 71(c).
En un caso de la Figura 71 (c), se puede derivar un índice de contexto a partir de la siguiente ecuación.
s i g C t x = (2 *xB yB < 3) ? 2 : (2 *x B yB < 5) ? 1 : 0
Además, la Ecuación anterior puede ser expandida para representarse como la siguiente Ecuación.
sigCtx = (W3*xB W4*yB < TH5)? 2 : (W3*xB W4*yB <
TH6) ? 1 : 0
En otras palabras, en un caso en el que la agregación ponderada "W3xxB+W4xyB" es menor que el valor de umbral TH5, se deriva un índice de contexto que indica que la frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es alta; En un caso en el que la agregación ponderada "W3xxB+W4xyB" es igual a o mayor que el valor de umbral TH5 y es menor que el valor de umbral TH6, se deriva un índice de contexto que indica que la frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es aproximadamente intermedia; y en otros casos (en un caso en el que la agregación ponderada "W3xxB+W4xyB" es mayor que el valor de umbral TH6), se deriva un índice de contexto que indica que la frecuencia de ocurrencia de un coeficiente de transformación distinto de cero es baja.
Un caso de la Figura 71(c) es un caso del factor de ponderación W3=2, el factor de ponderación W4=1, el valor de umbral TH5=3 y el valor de umbral TH6=5. Además, en un caso de la exploración rápida horizontal, dado que los coeficientes de transformación distintos de cero se concentran en la dirección vertical, el factor de ponderación W1 se establece igual a 1, el factor de ponderación W2 se establece igual a 1, el valor de umbral TH5 se establece igual a 1 y el valor de umbral TH6 se establece igual a 2, de modo que se simplifica una agregación ponderada y, por lo tanto, pueden derivarse los índices de contexto ilustrados en la Figura 29(c). Además, estableciendo el factor de ponderación W1 igual a 3, el factor de ponderación W2 igual a 1, el valor de umbral TH5 igual a 4 y el valor de umbral TH6 igual a 8, se puede obtener una disposición de los índices de contexto ilustrada en la Figura 72(b).
(En casos de los patrones 1 a 3)
Según se ilustra en las Figuras 71(d) a 71(f), existen el mismo procedimiento de derivación y disposiciones de los mismos valores que en el ejemplo de modificación 5-1 de las Figuras 29(b), 29(c) y 29(d).
Además, los patrones 1 a 3 pueden tener el mismo procedimiento de derivación y disposiciones de los mismos valores que los patrones 1 a 3 en cualquiera de los ejemplos de modificación 5-1 a 5-7.
Además, también en los patrones 1 y 2, considerando una tendencia de un coeficiente de transformación distinto de cero debido a una directividad para cada dirección de exploración, puede cambiarse de forma adaptativa una disposición de índices de contexto para cada dirección de exploración de la misma manera que en el patrón 0. Por ejemplo, los índices de contexto se derivan utilizando un pseudo-código ilustrado en la Figura 73. Además, los patrones 0 y 3 son los mismos que los patrones 0 y 3 del pseudo-código ilustrado en la Figura 70, por lo que se omitirá su descripción.
(Caso del patrón 1)
En un caso de la exploración en diagonal hacia arriba a la derecha, los índices de contexto ilustrados en la Figura 29(b) se derivan a partir de la siguiente ecuación.
sigCtx = (yB==0) ? 2 : (yB==l) ? 1 : 0
En un caso de la exploración rápida horizontal, los índices de contexto ilustrados en la Figura 72(a) se derivan a partir de la siguiente ecuación.
sigCtx = (xB 3*yB < 4) ? 2 : (xB 3*yB < 8) ? 1 : 0
En un caso de la exploración rápida horizontal, los índices de contexto ilustrados en la Figura 72(b) se derivan a partir de la siguiente ecuación.
sigCtx = (3*xB yB < 4) ? 2 : (3*xB yB < 8) ? 1 : 0
(Caso del patrón 2)
En un caso de la exploración en diagonal hacia arriba a la derecha, los índices de contexto ilustrados en la Figura 29(c) se derivan a partir de la siguiente ecuación.
SigCtx = (xB==0 ) ? 2 : (xB==l) ? 1 : 0
En un caso de la exploración rápida horizontal, los índices de contexto ilustrados en la Figura 72(a) se derivan a partir de la siguiente ecuación.
sigCtx = (xB 3*yB < 4) ? 2 : (xB 3*yB < 8) ? 1 : 0
En un caso de la exploración rápida horizontal, los índices de contexto ilustrados en la Figura 72(b) se derivan a partir de la siguiente ecuación.
Como se ha mencionado anteriormente, según la configuración del ejemplo de modificación 8-2, en el aparato de decodificación de imágenes en movimiento 1, los medios de derivación de índices de contexto determinan un indicador de presencia/ausencia de coeficiente en sub-bloque para un sub-bloque adyacente derecho que es un sub-bloque adyacente al lado derecho de un sub-bloque objetivo del proceso y un sub-bloque adyacente inferior que es adyacente al lado inferior del mismo, y deriva un índice de contexto en base al resultado de la determinación.
Cuando un índice de exploración indica una exploración en diagonal hacia arriba a la derecha, los medios de derivación de índices de contexto derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta en un caso en el que una agregación de xB y yB que indica una posición de coeficiente en un sub-bloque es menor que un primer valor de umbral; derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia en un caso en el que la agregación de xB e yB es igual a o mayor que el primer valor de umbral y es menor que un segundo valor de umbral; y derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja en un caso en el que la agregación de xB e yB es igual a o mayor que el segundo valor de umbral.
Además, cuando un índice de exploración indica una exploración rápida horizontal, los medios de derivación de índices de contexto derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta en un caso en el que un valor de una agregación ponderada de W1*xB+W2*yB definida a partir de xB e yB que indica una posición de coeficiente en un sub-bloque es menor que un tercer valor de umbral; derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia en un caso en el que un valor de la agregación ponderada de W1*xB+W2*yB es igual a o mayor que el tercer valor de umbral y es menor que el cuarto valor de umbral; y derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja en un caso en el que un valor de la agregación ponderada de W1*xB+W2*yB es igual a o mayor que el cuarto valor de umbral.
Además, cuando un índice de exploración indica la exploración rápida vertical, los medios de derivación de índices de contexto derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta en un caso en el que un valor de una agregación ponderada de W3*xB+W4*yB definida a partir de xB e yB que indica una posición de coeficiente en un sub-bloque es menor que un tercer valor de umbral; derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia en un caso en el que un valor de la agregación ponderada de W3*xB+W4*yB es igual a o mayor que el tercer valor de umbral y es menor que un cuarto valor de umbral; y derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja en un caso en el que un valor de la agregación ponderada de W3*xB+W4*yB es igual a o mayor que el cuarto valor de umbral.
Por lo tanto, puesto que un patrón de derivación de contexto es cambiado de acuerdo con un índice de exploración, es posible realizar un patrón de derivación de contexto que es más adecuado para una probabilidad de ocurrencia real de coeficiente de transformación para cada dirección de exploración indicada por el índice de exploración, y de este modo mejorar la eficiencia de la codificación. En particular, en un caso en el que la derivación de un índice de contexto se realiza en común a las UT que incluyen una UT de 8*8 hasta una UT de 32*32, es posible derivar un índice de contexto preferible que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación distinto de cero estableciendo el primer valor de umbral igual a 2 y el segundo valor de umbral igual a 3 en relación con la exploración en diagonal hacia arriba a la derecha, cuando el correspondiente resultado de la determinación indica que no hay un coeficiente de transformación distinto de cero presente en el sub-bloque adyacente derecho ni en el sub-bloque adyacente inferior. Además, el primer valor de umbral se puede establecer igual a 1 y el segundo igual a 2. Además, en un caso de la exploración rápida horizontal, estableciendo el factor de ponderación W1 igual a 1, el factor de ponderación W2 igual a 2, el tercer valor de umbral TH3 igual a 3 y el cuarto valor de umbral TH4 igual a 5, es posible derivar un índice de contexto preferible que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación distinto de cero. Además, en un caso de la exploración rápida vertical, estableciendo el factor de ponderación W2 igual a 2, el factor de ponderación W2 igual a 1, el tercer valor de umbral TH3 igual a 3 y el cuarto valor de umbral TH4 igual a 5, es posible derivar un índice de contexto preferible que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación distinto de cero.
Además, es posible derivar un índice de contexto preferible que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación distinto de cero estableciendo el primer valor de umbral igual a 1 y el segundo valor de umbral igual a 2 en relación con la exploración en diagonal hacia arriba a la derecha cuando el correspondiente resultado de la determinación indica que no hay un coeficiente de transformación distinto de cero presente en uno de los sub-bloques adyacentes derecho e inferior. Además, en un caso de la exploración rápida horizontal, estableciendo el factor de ponderación W1 igual a 1, el factor de ponderación W2 igual a 3, el tercer valor de umbral TH3 igual a 4 y el cuarto valor de umbral TH4 igual a 8, es posible derivar un índice de contexto preferible que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación distinto de cero. Además, en un caso de la exploración rápida vertical, estableciendo el factor de ponderación W2 igual a 3, el factor de ponderación W2 igual a 1, el tercer valor de umbral TH3 igual a 4 y el cuarto valor de umbral TH4 igual a 8, es posible derivar un índice de contexto preferible que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación distinto de cero.
Además, en un caso en el que el correspondiente resultado de la determinación indica que un coeficiente de transformación distinto de cero se encuentra presente tanto en el sub-bloque adyacente derecho como en el sub­ bloque adyacente inferior, se deriva un índice de contexto fijo y, por lo tanto, es posible simplificar la derivación de un índice de contexto.
En este caso, los factores de ponderación W1 a W4 utilizados en W1*xB+W2*yB y W3*xB+W4*yB que son agregaciones ponderadas de xB y yB no se limitan a los descritos anteriormente, y pueden establecerse arbitrariamente según una directividad de un tipo de exploración. Además, los valores de umbral de TH1 a TH6 no se limitan a los descritos anteriormente, y pueden establecerse en función de la frecuencia de ocurrencia de un coeficiente de transformación distinto de cero, según proceda.
Además, en los ejemplos de modificación 8 a 8-2, se ha descrito un ejemplo en el que la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c deriva un índice de contexto de un coeficiente de transformación distinto de cero para una UT de 8x8 hasta una UT de 32*32, pero puede aplicarse a una UT de 4*4. En un caso de la UT de 4*4, no hay ningún sub-bloque adyacente que tenga un indicador de presencia/ausencia de coeficiente en sub-bloque que pueda ser referenciado, por lo que un índice de patrón idxCG es sólo 0. En este caso, dado que la derivación del índice de contexto de un coeficiente de transformación distinto de cero para una UT de 4*4 hasta una UT de 32*32 puede ser unificada por la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c, excepto para DC, es posible conseguir efectos de reducción de una escala de circuito, simplificación de un proceso de derivación de índices de contexto y reducción del número de contextos. Además, también en relación con un componente DC de una UT de 4*4 hasta una UT de 32 * 32, un índice de contexto puede ser derivado por la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c. En consecuencia, es posible conseguir mayores efectos de reducción de una escala de circuito, simplificar un proceso de derivación de índice de contexto y reducir el número de contextos.
(Flujo de proceso realizado por unidad de decodificación de coeficientes de transformación 120)
En lo sucesivo, con referencia a las Figuras 39 a 42, se realizará una descripción del flujo de un proceso realizado por la unidad de decodificación de coeficientes de transformación 120.
La Figura 39 es un diagrama de flujo que ilustra un flujo de un proceso de decodificación de coeficientes de transformación realizado por la unidad de decodificación de coeficientes de transformación 120.
(Etapa S21)
En primer lugar, la unidad de control de decodificación de coeficientes 123 incluida en la unidad de decodificación de coeficientes de transformación 120 establece un índice de exploración scanIdx.
(Etapa S22)
A continuación, la unidad de decodificación de posición de último coeficiente 121 incluida en la unidad de decodificación de coeficientes de transformación 120 decodifica las sintaxis last_significant_coeff_x y last_significant_coeff_y que indican la posición del último coeficiente de transformación según un orden de exploración.
(Etapa S23)
A continuación, la unidad de control de decodificación de coeficientes 123 inicia un bucle en las unidades de sub­ bloques. Además, con un sub-bloque que tiene el último coeficiente como posición inicial del bucle, se realiza un proceso de decodificación en las unidades de sub-bloque en un orden de exploración hacia atrás de la exploración del sub-bloque.
(Etapa S24)
A continuación, la unidad de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque 127 incluida en la unidad de decodificación de coeficientes de transformación 120 decodifica el indicador de presencia/ausencia de coeficiente en sub-bloque significant_coeff_group_flag.
(Etapa S25)
A continuación, la unidad de codificación de indicador de presencia/ausencia de coeficiente 124 incluida en la unidad de decodificación de coeficientes de transformación 120 decodifica cada indicador de presencia/ausencia de coeficiente distinto de cero en un sub-bloque objetivo.
(Etapa S26)
A continuación, la unidad de decodificación de valor de coeficiente 125 incluida en la unidad de decodificación de coeficientes de transformación 120 decodifica un signo y un tamaño de un coeficiente de transformación distinto de cero en un pequeño grupo objetivo. Esto es realizado por las respectivas sintaxis coeff_abs_level_greater1_flag, coeff_abs_level_greater2_flag, coeff_sign_flag, y coeff_abs_level_remaining.
(Etapa S27)
Esta etapa es un extremo terminal del bucle que tiene el sub-bloque como unidad (un extremo terminal del bucle que tiene el sub-bloque de la etapa S23 como unidad).
[Proceso de decodificación de un indicador de presencia/ausencia de coeficiente en sub-bloque]
La Figura 40 es un diagrama de flujo que ilustra más específicamente el proceso (Etapa S24 de la Figura 39) de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque.
La unidad de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque 127 inicializa un valor del indicador de presencia/ausencia de coeficiente en sub-bloque significant_coeff_group_flag incluido en un dominio de frecuencia objetivo antes de iniciar un bucle del sub-bloque. Este proceso de inicialización se realiza estableciendo un indicador de presencia/ausencia de coeficiente en sub-bloque que incluye un coeficiente DC y un indicador de presencia/ausencia de coeficiente en sub-bloque que incluye el último coeficiente igual a 1, y estableciendo otros indicadores de presencia/ausencia de coeficiente en sub-bloque iguales a 0.
(Etapa S244)
La unidad de codificación de indicador de presencia/ausencia de coeficiente 124 adquiere una posición del sub­ bloque.
(Etapa S247)
La unidad de codificación de indicador de presencia/ausencia de coeficiente 124 determina si el sub-bloque objetivo es o no es un sub-bloque que incluye el último coeficiente o un coeficiente DC.
(Etapa S248)
En un caso en el que el sub-bloque objetivo no es un sub-bloque que incluye el último coeficiente o el coeficiente DC (No en la etapa s247), la unidad de codificación de indicador de presencia/ausencia de coeficiente 124 decodifica el indicador de presencia/ausencia de coeficiente en sub-bloque significant_coeff_group_flag.
[Proceso de decodificación de indicador de presencia/ausencia de coeficiente].
La Figura 41 es un diagrama de flujo que ilustra más específicamente el proceso (Etapa S25 de la Figura 39) de decodificación de cada indicador de presencia/ausencia de coeficiente de transformación distinto de cero significant_coeff_flag en el sub-bloque.
(Etapa S254)
A continuación, la unidad de codificación de indicador de presencia/ausencia de coeficiente 124 inicia un bucle en el sub-bloque objetivo. El bucle es un bucle que tiene un componente de frecuencia como unidad.
(Etapa S255)
A continuación, la unidad de codificación de indicador de presencia/ausencia de coeficiente 124 adquiere una posición de un coeficiente de transformación.
(Etapa S256)
A continuación, la unidad de codificación de indicador de presencia/ausencia de coeficiente 124 determina si un coeficiente de transformación distinto de cero se encuentra presente o no se encuentra presente en el sub-bloque objetivo.
(Etapa S257)
En un caso en el que se encuentra presente un coeficiente de transformación distinto de cero en el sub-bloque objetivo (Sí en la etapa S256), la unidad de codificación de indicador de presencia/ausencia de coeficiente 124 determina si la posición del coeficiente de transformación es o no es la última posición.
(Etapa S253)
En un caso en el que la posición del coeficiente de transformación no es la última posición (No en la etapa S257), la unidad de codificación de indicador de presencia/ausencia de coeficiente 124 deriva un índice de contexto con respecto al coeficiente de transformación objetivo del proceso en un procedimiento predeterminado. Los detalles de la operación se describirán más adelante.
(Etapa S258)
Después de la etapa S253, la unidad de codificación de indicador de presencia/ausencia de coeficiente 124 decodifica el indicador de presencia/ausencia de coeficiente de transformación significant_coeff_flag.
(Etapa S259)
Esta etapa es un extremo terminal del bucle que tiene como unidad el componente de frecuencia en el sub-bloque objetivo (un extremo terminal del bucle en el sub-bloque de la etapa S259).
«Proceso de derivación de índice de contexto»
La Figura 42 es un diagrama de flujo que ilustra un ejemplo de un flujo del proceso de derivación de índice de contexto en la unidad de codificación de indicador de presencia/ausencia de coeficiente 124. En otras palabras, la Figura 42 es un diagrama de flujo que ilustra las operaciones (detalles de la operación de la etapa S253 de la Figura 41) de la unidad de determinación de tamaño de UT 124a, la unidad de derivación de contexto de posición 124b y la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c incluidas en la unidad de codificación de indicador de presencia/ausencia de coeficiente 124.
(Etapa SB101)
La unidad de determinación de tamaño de UT 124a determina si un tamaño de UT es o no es menor que un tamaño predeterminado. Por ejemplo, se utiliza la siguiente Expresión para la determinación.
log2TrafoWidth log2TrafoHeight < THSize
Además, por ejemplo, se utiliza el 6 como valor de umbral THSize. En un caso en el que se utiliza el 6 como valor de umbral THsize, se determina que una UT de 4*4 es menor que el tamaño predeterminado. Se determina que una UT de 8*8, una UT 16*4, una UT de 4*16, una UT de 16*16, una UT de 32*4, una UT de 4*32 y una UT de 32*32 son iguales o mayores que el tamaño predeterminado. Además, el valor de umbral THSize puede ser igual a 0. En este caso, se determina que la UT de 4*4 hasta la UT de 32*32 son iguales o mayores que el tamaño predeterminado.
(Etapa SB104)
En un caso en el que el tamaño de UT objetivo del proceso es igual a o mayor que el tamaño predeterminado (No en la etapa SB101), la unidad de determinación de tamaño de UT 124a selecciona la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c como medios de derivación de contexto, y un índice de contexto del coeficiente de transformación objetivo es derivado por la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c seleccionada.
(Etapa SB105)
En un caso en el que el tamaño de UT objetivo del proceso es menor que el tamaño predeterminado (Sí en la etapa SB101), la unidad de determinación de tamaño de UT 124a selecciona la unidad de derivación de contexto de posición 124b como medios de derivación de contexto, y un índice de contexto del coeficiente de transformación objetivo es derivado por la unidad de derivación de contexto de posición 124b seleccionada.
Además, la unidad de determinación de tamaño de UT 124a no se limita a ello, y puede realizar un proceso de derivación de un índice de contexto ctxIdx que es común a los tamaños de UT de 4*4 hasta UT de 32*32. En otras palabras, la unidad de determinación de tamaño de UT 124a puede seleccionar de forma fija la unidad de derivación de contexto de posición 124b o la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub­ bloque adyacente 124c, independientemente del tamaño de UT.
[Aparato de codificación de imágenes en movimiento 2]
Con referencia a las Figuras 43 a 47, se realizará una descripción de una configuración del aparato de codificación de imágenes en movimiento 2 de acuerdo con la presente forma de realización. El aparato de codificación de imágenes en movimiento 2 es un aparato de codificación que utiliza la técnica utilizada en el estándar H. 264/MPEG-4. AVC, y la técnica propuesta en la codificación de vídeo de alta eficiencia (HEVC), que es un códec posterior. A continuación, las mismas partes descritas anteriormente reciben los mismos números de referencia y se omite su descripción.
La Figura 43 es un diagrama de bloques que ilustra una configuración del aparato de codificación de imágenes en movimiento 2. Según se ilustra en la Figura 43, el aparato de codificación de imágenes en movimiento 2 incluye una unidad de generación de imagen pronosticada 21, una unidad de transformación/cuantificación 22, una unidad de cuantificación inversa/transformación inversa 23, un agregador 24, una memoria de fotogramas 25, un filtro de bucle 26, una unidad de codificación de código de longitud variable 27 y un sustractor 28. Además, según se ilustra en la Figura 43, la unidad de generación de imagen pronosticada 21 incluye una unidad de generación de imagen intrapronosticada 21a, una unidad de detección de vector de movimiento 21b, una unidad de generación de imagen inter­ pronosticada 21c, una unidad de control del tipo de predicción 21d y una unidad de eliminación de redundancias en el vector de movimiento 21e. El aparato de codificación de imágenes en movimiento 2 es un aparato que codifica una imagen en movimiento #10 (imagen objetivo de la codificación) para generar los datos codificados #1.
(Unidad de generación de imagen pronosticada 21)
La unidad de generación de imagen pronosticada 21 divide recursivamente una LCU objetivo del proceso en una o una pluralidad de UC inferiores, y además divide cada UC hoja en una o una pluralidad de particiones, con el fin de generar una imagen inter-pronosticada Pred_Inter utilizando la predicción inter-fotogramas o una imagen intrapronosticada Pred_Inra utilizando la predicción intra-fotograma. La imagen generada por inter-predicción Pred_Intra y la imagen generada por intra-predicción Pred_Intra son suministradas al agregador 24 y al sustractor 28 como imágenes pronosticadas Pred.
Además, la unidad de generación de imagen pronosticada 21 omite la decodificación de otros parámetros pertenecientes a una UP en relación con una UP a la que se aplica un modo de salto. Además, (1) se determina un aspecto de la división en UC inferiores y particiones en una LCU objetivo, (2) si se aplica o no se aplica un modo de salto, y (3) si se genera una imagen por inter-predicción Pred_Intra o una imagen por intra-predicción Pred_Intra para cada partición, con el fin de optimizar la eficiencia de la codificación.
(Unidad de generación de imagen intra-pronosticada 21a)
La unidad de generación de imagen intra-pronosticada 21a genera una imagen pronosticada Pred_Intra relativa a cada partición utilizando la predicción inter-fotogramas. Específicamente, (1) se selecciona un modo de predicción utilizado para la intra-predicción en cada partición, y (2) se genera una imagen pronosticada Pred_Intra a partir de una imagen decodificada P utilizando el modo de predicción seleccionado. La unidad de generación de imagen intrapronosticada 21a suministra la imagen intra-pronosticada generada Pred_Intra a la unidad de control del tipo de predicción 21d.
Además, la unidad de generación de imagen intra-pronosticada 21a determina un modo de predicción estimado para una partición objetivo a partir de un modo de predicción que se asigna a una partición periférica de la partición objetivo, y proporciona un indicador del modo de predicción estimado que indica si el modo de predicción estimado es el mismo que el modo de predicción seleccionado realmente para la partición objetivo, a la unidad de codificación de código de longitud variable 27 a través de la unidad de control del tipo de predicción 21d como parte de un parámetro de intra-predicción PP_Intra. La unidad de codificación de código de longitud variable 27 incluye el índice de modo de predicción restante en los datos codificados #1.
Además, en un caso en el que el modo de predicción estimado para la partición objetivo es diferente del modo de predicción seleccionado realmente para la partición objetivo, la unidad de generación de imagen intra-pronosticada 21a suministra un índice de modo de predicción restante que indica un modo de predicción para la partición objetivo, a la unidad de codificación de código de longitud variable 27 a través de la unidad de control del tipo de predicción 21d como parte del parámetro de intra-predicción PP_Intra. La unidad de codificación de código de longitud variable 27 incluye el índice de modo de predicción restante en los datos codificados #1.
Además, en un caso en el que se genera la imagen pronosticada Pred_Intra, la unidad de generación de imagen intra-pronosticada 21a selecciona un modo de predicción que hace que la eficiencia de la codificación mejore aún más, de entre los modos de predicción ilustrados en la Figura 11, y aplica el modo de predicción seleccionado.
(Unidad de detección de vector de movimiento 21b)
La unidad de detección de vector de movimiento 21b detecta un vector de movimiento mv relativo a cada partición. Específicamente, (1) se selecciona una imagen decodificada filtrada de forma adaptativa P_ALF' utilizada como imagen de referencia, y (2) se busca una región que más se aproxima a la partición objetivo en la imagen decodificada filtrada de forma adaptativa P_ALF' seleccionada, de modo que se detecta el vector de movimiento mv relativo a la partición objetivo. En este caso, la imagen decodificada filtrada de forma adaptativa P_ALF' es una imagen obtenida por el filtro de bucle 26 que realiza un proceso de filtrado en una imagen decodificada en la que ya se ha completado la decodificación de todos los fotogramas, y la unidad de detección de vector de movimiento 21b puede leer de la memoria de fotogramas 25 un valor de píxel de cada uno de los píxeles que forman la imagen decodificada filtrada de forma adaptativa P_ALF'. La unidad de detección de vector de movimiento 21b suministra el vector de movimiento detectado mv a la unidad de generación de imagen inter-pronosticada 21c y a la unidad de eliminación de redundancias en el vector de movimiento 21e junto con un índice de imagen de referencia RI para designar la imagen decodificada filtrada de forma adaptativa P_ALF' utilizada como imagen de referencia.
(Unidad de generación de imagen inter-pronosticada 21c)
La unidad de generación de imagen inter-pronosticada 21c genera una imagen de compensación de movimiento mc relativa a cada partición de inter-predicción a través de predicción inter-fotogramas. Específicamente, la imagen de compensación de movimiento mc se genera a partir de la imagen decodificada filtrada de forma adaptativa P_ALF' designada por el índice de imagen de referencia RI que es suministrado por la unidad de detección de vector de movimiento 21b, utilizando el vector de movimiento mv suministrado por la unidad de detección de vector de movimiento 21b. De la misma manera que la unidad de detección de vector de movimiento 21b, la unidad de generación de imagen inter-pronosticada 21c puede leer de la memoria de fotogramas 25 un valor de píxel de cada píxel que forma la imagen decodificada filtrada de forma adaptativa P_ALF'. La unidad de generación de imagen inter-pronosticada 21c suministra la imagen de compensación de movimiento mc generada (imagen inter­ pronosticada Pred_Inter) a la unidad de control del tipo de predicción 21d junto con el índice de imagen de referencia RI suministrado por la unidad de detección de vector de movimiento 21b.
(Unidad de control del tipo de predicción 21d)
La unidad de control del tipo de predicción 21d compara la imagen intra-pronosticada Pred_Intra y la imagen inter­ pronosticada Pred_Inter con una imagen objetivo de la codificación, y selecciona si se realiza intra-predicción o inter­ predicción. En un caso en el que se selecciona la intra-predicción, la unidad de control del tipo de predicción 21d suministra la imagen intra-pronosticada Pred_Intra al agregador 24 y al sustractor 28 como imagen pronosticada Pred, y también suministra el parámetro de intra-predicción PP_Intra que es suministrado por la unidad de generación de imagen intra-pronosticada 21a, a la unidad de codificación de código de longitud variable 27. Por otra parte, en un caso en el que se selecciona la inter-predicción, la unidad de control del tipo de predicción 21d suministra la imagen inter-pronosticada Pred_Inter al agregador 24 y al sustractor 28 como imagen pronosticada Pred, y también suministra, a la unidad de codificación de código de longitud variable 27, el índice de imagen de referencia RI, y un índice del vector de movimiento estimado PMVI y un residual del vector de movimiento MVD, que son suministrados por la unidad de eliminación de redundancias en el vector de movimiento 21e que se describe más adelante, como parámetros de inter-predicción PP_Inter. Además, la unidad de control del tipo de predicción 21d proporciona información sobre el tipo de predicción Pred_type, que indica cuál de las imágenes intrapronosticada Pred_Intra e inter-pronosticada Pred_Inter se ha seleccionado, a la unidad de codificación de código de longitud variable 27.
(Unidad de eliminación de redundancias en el vector de movimiento 21e)
La unidad de eliminación de redundancias en el vector de movimiento 21e elimina la redundancia del vector de movimiento mv que ha sido detectado por la unidad de detección de vector de movimiento 21b. Específicamente, (1) se selecciona un procedimiento de estimación utilizado para estimar el vector de movimiento mv, (2) se deriva un vector de movimiento estimado pmv de acuerdo con el procedimiento de estimación seleccionado, y (3) se genera el residual del vector de movimiento MVD sustrayendo el vector de movimiento estimado pmv del vector de movimiento mv. La unidad de eliminación de redundancias en el vector de movimiento 21e suministra el residual del vector de movimiento MVD generado a la unidad de control del tipo de predicción 21d junto con el índice del vector de movimiento estimado PMVI, que indica el procedimiento de estimación seleccionado.
(Unidad de transformación/cuantificación 22)
La unidad de transformación/cuantificación 22 (1) realiza una transformación de frecuencia tal como una transformación de coseno discreta (DCT) en un residual de predicción D obtenido sustrayendo la imagen pronosticada Pred de la imagen objetivo de la codificación, para cada bloque (unidad de transformación), (2) cuantifica un coeficiente de transformación Coeff_IQ que se obtiene a través de la transformación de frecuencia, y (3) suministra el coeficiente de transformación Coeff obtenido a través de la cuantificación a la unidad de codificación de código de longitud variable 27 y a la unidad de codificación de código de longitud variable 27 y a la unidad de cuantificación inversa/transformación inversa 23. Además, la unidad de transformación/cuantificación 22 (1) selecciona una etapa de cuantificación QP utilizada para la cuantificación de cada UT, (2) suministra una diferencia de parámetros de cuantificación Apq que indica un tamaño de la etapa de cuantificación seleccionada QP a la unidad de codificación de código de longitud variable 27, y (3) suministra la etapa de cuantificación seleccionada QP a la unidad de cuantificación inversa/transformación inversa 23. En este caso, la diferencia de parámetros de cuantificación Apq indica un valor de diferencia obtenido sustrayendo un valor de un parámetro de cuantificación qp' relativo a una UT que ha sido sometida previamente a transformación y cuantificación de frecuencia, a un parámetro de cuantificación qp (por ejemplo, QP=2pq/6) relativo a una UT sometida a transformación y cuantificación de frecuencia.
Además, la DCT realizada por la unidad de transformación/cuantificación 22 viene determinada, por ejemplo, por la siguiente ecuación (2) en un caso en el que el tamaño de un bloque objetivo es de 8^8 píxeles, y un coeficiente de transformación no cuantificado para una frecuencia horizontal u y una frecuencia vertical v es denotado por Coeff_IQ(u,v) (en el que 0<u<7 y 0<v<7).
[Ecuación 2]
Coeff_/Q(u,v) = j C(ii)C(v) ¿ ¿ D ( i , j ) eos {(2¿+^ “!} eos{(1 ¡ * 1)v;r} . . . ( 2 )
4 to>o 16 16
En este caso, D(i,j) (en el que 0<u<7 y 0<v<7) indica un residual de predicción D en una posición (i,j) en un bloque objetivo. Además, C(u) y C(v) se indican a continuación.
C(u)=1/V2 (u=0)
C(u)=1 (u*0)
C(v)=1/V2 (v=0)
C(v)=1 (v*0)
(Unidad de cuantificación inversa/transformación inversa 23)
La unidad de cuantificación inversa/transformación inversa 23 (1) cuantifica inversamente el coeficiente de transformación cuantificado Coeff, (2) realiza una transformación de frecuencia inversa tal como una transformación de coseno discreta (DCT) inversa en el coeficiente de transformación Coeff_IQ obtenido a través de la cuantificación inversa, y (3) suministra el residual de predicción D al agregador 24. La etapa de cuantificación QP que es suministrada por la unidad de transformación/cuantificación 22 se utiliza para cuantificar inversamente el coeficiente de transformación cuantificado Coeff. Además, el residual de predicción D suministrado por la unidad de cuantificación inversa/transformación inversa 23 es obtenido agregando un error de cuantificación al residual de predicción D que es suministrado a la unidad de transformación/cuantificación 22, pero, en este caso, para simplificar, se utiliza el nombre común. Las operaciones más específicas de la unidad de cuantificación inversa/transformación inversa 23 son sustancialmente las mismas que las de la unidad de cuantificación inversa/transformación inversa 13 incluida en el aparato de decodificación de imágenes en movimiento 1.
(Agregación 24)
El agregador 24 agrega la imagen pronosticada Pred seleccionada en la unidad de control del tipo de predicción 21d al residual de predicción D generado en la unidad de cuantificación inversa/transformación inversa 23, para generar una imagen decodificada P (local). La imagen decodificada P (local) generada en el agregador 24 es suministrada al filtro de bucle 26 y también se almacena en la memoria de fotogramas 25 para ser utilizada como imagen de referencia en la intra-predicción.
(Unidad de codificación de código de longitud variable 27)
La unidad de codificación de código de longitud variable 27 realiza la codificación de longitud variable en (1) el coeficiente de transformación cuantificado Coeff y Aqp que son suministrados por la unidad de transformación/cuantificación 22, (2) los parámetros de cuantificación (la imagen inter-pronosticada Pred_Inter y la imagen intra-pronosticada Pred_Intra) suministrados por la unidad de control del tipo de predicción 21d, (3) la información del tipo de predicción Pred_type y (4) un parámetro de filtro FP suministrado por el filtro de bucle 26, para generar los datos codificados #1.
La Figura 44 es un diagrama de bloques que ilustra una configuración de la unidad de codificación de código de longitud variable 27. Según se ilustra en la Figura 44, la unidad de codificación de código de longitud variable 27 incluye una unidad de codificación de información residual cuantificada 271 que codifica el coeficiente de transformación cuantificado Coeff, una unidad de codificación de parámetros de predicción 272 que codifica el parámetro de predicción PP, una unidad de codificación de información del tipo de predicción 273 que codifica la información del tipo de predicción Pred_type, y una unidad de codificación de parámetros de filtro 274 que codifica el parámetro de filtro PP. Más adelante se describirá una configuración específica de la unidad de codificación de información residual cuantificada 271 y, por lo tanto, se omitirá su descripción en este caso.
(Sustractor 28)
El sustractor 28 sustrae la imagen pronosticada Pred seleccionada en la unidad de control del tipo de predicción 21d de la imagen objetivo de la codificación para generar el residual de predicción D. El residual de predicción D generado en el sustractor 28 es sometido a una transformación y cuantificación de frecuencia en la unidad de transformación/cuantificación 22.
(Filtro de bucle 26)
El filtro de bucle 26 funciona (1) como un filtro de desbloqueo (DF) que realiza un suavizado (proceso de desbloqueo) en una imagen periférica en un límite de bloque o un límite de partición en la imagen decodificada P, y (2) como un filtro adaptativo (ALF) que realiza un proceso de filtrado adaptativo en la imagen a la que se ha aplicado el filtro de desbloqueo, utilizando el parámetro de filtro FP.
(Detalles de la unidad de codificación de información residual cuantificada 271)
La unidad de codificación de información residual cuantificada 271 realiza una codificación aritmética binaria adaptativa basada en contexto en el coeficiente de transformación cuantificado Coeff (xC,yC) para generar información residual cuantificada QD. La sintaxis incluida en la información residual cuantificada Qd que se genera es la descrita anteriormente.
Además, xC e yC son índices que indican una posición de cada componente de frecuencia en un dominio de frecuencia, y son índices que corresponden a la frecuencia horizontal u y a la frecuencia vertical v descritas anteriormente. Además, en lo sucesivo, el coeficiente de transformación cuantificado Coeff se denomina simplemente como coeficiente de transformación Coeff en algunos casos.
La Figura 45 es un diagrama de bloques que ilustra una configuración de la unidad de codificación de información residual cuantificada 271. Según se ilustra en la Figura 45, la unidad de codificación de información residual cuantificada 271 incluye una unidad de codificación de coeficiente de transformación 220 y una unidad de codificación de código aritmética 230.
(Unidad de codificación de código aritmética 230)
La unidad de codificación de código aritmética 230 codifica cada Bin suministrado por la unidad de codificación de coeficiente de transformación 220 referenciando al contexto, para generar la información residual cuantificada QD, e incluye una unidad de registro/actualización de contexto 231 y una unidad de codificación de bits 232 según se ilustra en la Figura 45.
(Unidad de registro/actualización de contexto 231)
La unidad de registro/actualización de contexto 231 tiene una configuración para registrar y actualizar una variable de contexto CV que es administrada por cada índice de contexto ctxIdx. En este caso, la variable de contexto CV incluye (1) un símbolo superior MPS (símbolo más probable) del cual una probabilidad de ocurrencia es alta, y (2) un índice de estado de probabilidad pStateIdx para designar una probabilidad de ocurrencia del símbolo superior MPS. La unidad de registro/actualización de contexto 231 actualiza la variable de contexto CV referenciando al índice de contexto ctxIdx suministrado por cada elemento constituyente incluido en la unidad de codificación de coeficiente de transformación 220 y un valor de un Bin codificado por la unidad de codificación de bits 232, y registra la variable de contexto actualizada CV hasta la siguiente actualización. Además, el símbolo superior MPS es igual a 0 o 1. Además, el símbolo superior MPS y el índice de estado de probabilidad pStateIdx son actualizados siempre que la unidad de codificación de bits 232 decodifica un solo Bin.
Además, el índice de contexto ctxIdx puede designar directamente el contexto para cada componente de frecuencia, y puede ser un valor de incremento a partir de un desplazamiento (offset) de un índice de contexto que se establece para cada UT objetivo del proceso (esto también es lo mismo para lo siguiente).
[Unidad de codificación de bits 232]
La unidad de codificación de bits 232 codifica cada Bin suministrado por cada elemento constituyente incluido en la unidad de codificación de coeficiente de transformación 220 referenciando a la variable de contexto CV que se registra en la unidad de registro/actualización de contexto 231, con el fin de generar la información residual cuantificada QD. Además, también se suministra un valor del Bin codificado a la unidad de registro/actualización de contexto 231 para que sea referenciada para actualizar la variable de contexto CV.
(Unidad de codificación de coeficiente de transformación 220)
Según se ilustra en la Figura 45, la unidad de codificación de coeficiente de transformación 220 incluye una unidad de codificación de posición de último coeficiente 221, una unidad de almacenamiento de tabla de órdenes de exploración 222, una unidad de control de codificación de coeficiente 223, una unidad de codificación de indicador de presencia/ausencia de coeficiente 224, una unidad de codificación de valor de coeficiente 225, una unidad de almacenamiento de coeficiente codificado 226, una unidad de codificación de indicador de presencia/ausencia de coeficiente en sub-bloque 227 y una unidad de derivación de sintaxis 228.
[Unidad de derivación de sintaxis 228]
La unidad de derivación de sintaxis 228 referencia a cada valor del coeficiente de transformación Coeff (xC,yC), y deriva cada valor de las sintaxis last_significant_coeff_x, last_significant_coeff_y, significant_coeff_flag, coeff_abs_level_greater1_flag, coeff_abs_level_greater2_flag, coeff_sign_flag, y coeff_abs_level_remaining, para especificar el coeficiente de transformación en un dominio de frecuencia objetivo. Cada sintaxis derivada es suministrada a la unidad de almacenamiento de coeficiente codificado 226. Además, de entre las sintaxis derivadas, last_significant_coeff_x y last_significant_coeff_y también son suministradas a la unidad de control de codificación de coeficiente 223 ya la unidad de codificación de posición de último coeficiente 221. Además, de entre las sintaxis derivadas, también se proporciona el indicador significant_coeff_flag a la unidad de codificación de indicador de presencia/ausencia de coeficiente 224. Además, el contenido indicado por cada sintaxis se ha descrito anteriormente, por lo que se omitirá su descripción en este caso.
[Unidad de codificación de posición de último coeficiente 221]
La unidad de codificación de posición de último coeficiente 221 genera Bin que indican las sintaxis last_significant_coeff_x y last_significant_coeff_y suministradas por la unidad de derivación de sintaxis 228. Además, cada Bin generado es suministrado a la unidad de codificación de bits 232. Además, el índice de contexto ctxIdx para designar el contexto referenciado para codificar los Bin de las sintaxis last_significant_coeff_x y last_significant_coeff_y es suministrado a la unidad de registro/actualización de contexto 231.
[Unidad de almacenamiento de tabla de órdenes de exploración 222]
La unidad de almacenamiento de tabla de órdenes de exploración 222 almacena una tabla que proporciona una posición de un componente de frecuencia objetivo del proceso en un dominio de frecuencia utilizando el tamaño de una UT (bloque) objetivo del proceso, un índice de exploración que indica el tipo de dirección de exploración y un índice de identificación de componente de frecuencia determinado de acuerdo con un orden de exploración. Un ejemplo de dicha tabla de órdenes de exploración puede incluir el ScanOrder ilustrado en las Figuras 4 y 5.
Además, la unidad de almacenamiento de tabla de órdenes de exploración 222 almacena una tabla de órdenes de exploración de sub-bloque para designar un orden de exploración de sub-bloque. En este caso, la tabla de órdenes de exploración de sub-bloque es designada por el tamaño de una UT (bloque) objeto de proceso y el índice de exploración scanIdx asociado con un índice de modo de predicción de un modo de intra-predicción.
La tabla de órdenes de exploración y la tabla de órdenes de exploración de sub-bloque almacenadas en la unidad de almacenamiento de tabla de órdenes de exploración 222 son las mismas que las almacenadas en la unidad de almacenamiento de tabla de órdenes de exploración 122 del aparato de decodificación de imágenes en movimiento 1, por lo que se omitirá su descripción en este caso.
[Unidad de control de codificación 223]
La unidad de control de codificación de coeficiente 223 tiene una configuración para controlar un orden de un proceso de codificación en cada elemento constituyente incluido en la unidad de codificación de información residual cuantificada 271.
Específicamente, la unidad de control de codificación de coeficiente 223 realiza la división en sub-bloques, el suministro de cada posición de sub-bloque de acuerdo a un orden de exploración de sub-bloques, y el suministro de una posición de cada componente de frecuencia en un sub-bloque de acuerdo a un orden de exploración.
La unidad de control de codificación de coeficiente 223 deriva un tamaño de sub-bloque de acuerdo con un orden de exploración y/o un tamaño de TU, y divide la UT en el tamaño de sub-bloque derivado para dividir la UT en sub­ bloques. Un procedimiento de división es el descrito en las Figuras 14 y 15, por lo que se omitirá su descripción en este caso.
(Caso en el que el tamaño de UT es igual a o menor que el tamaño predeterminado)
En un caso en el que el tamaño de UT es igual a o menor que el tamaño predeterminado (por ejemplo, una UT de 4x4 o similar), la unidad de control de codificación de coeficiente 223 especifica una posición del último coeficiente de transformación distinto de cero según una exploración hacia adelante referenciado a las sintaxis last_significant_coeff_x y last_significant_coeff_y suministradas por la unidad de derivación de sintaxis 228, y suministra una posición (xC,yC) de cada componente de frecuencia a la unidad de codificación de indicador de presencia/ausencia de coeficiente en sub-bloque en un orden de exploración hacia atrás de un orden de exploración que utiliza como punto de partida la posición especificada del último coeficiente de transformación distinto de cero y que es determinado por la tabla de órdenes de exploración de sub-bloques almacenada en la unidad de almacenamiento de tabla de órdenes de exploración 222.
Además, la unidad de control de codificación de coeficiente 223 suministra un tamaño de una UT objetivo del proceso a cada elemento constituyente (no ilustrado) incluido en la unidad de codificación de coeficiente de transformación 220.
Además, la unidad de control de codificación de coeficientes 223 puede suministrar la posición (xC,yC) de cada componente de frecuencia a la unidad de codificación de indicador de presencia/ausencia de coeficiente 224 en un orden de exploración hacia adelante de un orden de exploración determinado por la tabla de órdenes de exploración almacenada en la unidad de almacenamiento de tabla de órdenes de exploración 222.
(Caso de un tamaño de UT que es mayor que el tamaño predeterminado)
En un caso en el que un tamaño de UT es mayor que un tamaño predeterminado, la unidad de control de codificación de coeficiente 223 especifica una posición del último coeficiente de transformación distinto de cero de acuerdo con una exploración hacia adelante referenciando a las sintaxis last_significant_coeff_x y last_significant_coeff_y suministradas por la unidad de derivación de sintaxis 228, y proporciona una posición (xCG,yCG) de cada sub-bloque a la unidad de codificación de indicador de presencia/ausencia de coeficiente en sub-bloque 227 en un orden de exploración hacia atrás de un orden de exploración que utiliza como punto de partida la posición de un sub-bloque que incluye la posición especificada del último coeficiente de transformación distinto de cero y que es determinada por la tabla de órdenes de exploración de sub-bloques almacenada en la unidad de almacenamiento de tabla de órdenes de exploración 222.
Además, en relación con un sub-bloque objetivo del proceso, la unidad de control de codificación de coeficiente 223 suministra una posición (xC,yC) de cada componente de frecuencia incluido en el sub-bloque objetivo del proceso a la unidad de codificación de indicador de presencia/ausencia de coeficiente 224 en un orden de exploración hacia atrás determinado por la tabla de órdenes de exploración almacenada en la unidad de almacenamiento de tabla de órdenes de exploración 222. En este caso, como orden de exploración de cada componente de frecuencia incluido en el sub-bloque objetivo del proceso, en un caso de intra-predicción, se puede utilizar un orden de exploración (cualquiera de los modos de exploración rápida horizontal, exploración rápida vertical y exploración en diagonal hacia arriba a la derecha) indicado por un índice de exploración scanIdx que es designado por el índice de modo de intra-predicción IntraPredMode y un valor log2TrafoSize para designar un tamaño de UT y, en un caso de inter­ predicción, se puede utilizar la exploración en diagonal hacia arriba a la derecha. Además, la unidad de control de codificación de coeficiente 223 suministra un tamaño de una UT correspondiente y un índice de exploración scanIdx asociado con un modo de predicción de la UT, a la unidad de codificación de indicador de presencia/ausencia de coeficiente 224.
Según se ha mencionado anteriormente, la unidad de control de codificación de coeficientes 223 cambia un orden de exploración para cada modo de intra-predicción. En general, dado que un modo de intra-predicción y una tendencia de un coeficiente de transformación están correlacionados entre sí, se cambia el orden de exploración según el modo de intra-predicción, y se puede realizar una exploración adecuada para las tendencias del indicador de presencia/ausencia de coeficiente en sub-bloque y del indicador de presencia/ausencia de coeficiente. En consecuencia, es posible reducir una cantidad de código del indicador de presencia/ausencia de coeficiente en subbloque y del indicador de presencia/ausencia de coeficiente que son objetivos de la codificación y decodificación, y de este modo reducir una cantidad de procesamiento y mejorar la eficiencia de la codificación.
[Unidad de codificación de valor de coeficiente 225]
La unidad de codificación de valor de coeficiente 225 genera unos Bins que indican las sintaxis coeff_abs_level_greater1_flag, coeff_abs_level_greater2_flag, coeff_sign_flag, y coeff_abs_level_remaining, suministradas por la unidad de derivación de sintaxis 228. Además, cada Bin generado es suministrado a la unidad de codificación de bits 232. Además, se suministra el índice de contexto ctxIdx para designar el contexto que es referenciado para codificar los Bin de las sintaxis a la unidad de registro/actualización de contexto 231.
[Unidad de codificación de indicador de presencia/ausencia de coeficiente 224]
La unidad de codificación de indicador de presencia/ausencia de coeficiente 224 según la presente forma de realización codifica la sintaxis significant_coeff_flag[xC][yC] designada por cada posición (xC,yC). Más específicamente, se genera un Bin que indica la sintaxis significant_coeff_flag[xC][yC] designada por cada posición (xC,yC). Cada bit generado es suministrado a la unidad de codificación de bits 232. Además, la unidad de codificación de indicador de presencia/ausencia de coeficiente 224 calcula el índice de contexto ctxIdx para determinar el contexto que se utiliza para la unidad de codificación de código aritmética 230 para codificar el Bin de la sintaxis significant_coeff_flag[xC][yC]. El índice de contexto calculado ctxIdx es suministrado a la unidad de registro/actualización de contexto 231. Más adelante se describirá un ejemplo específico de configuración de la unidad de codificación de presencia/ausencia de coeficiente.
[Unidad de codificación de indicador de presencia/ausencia de coeficiente en sub-bloque 227]
La unidad de codificación de indicador de presencia/ausencia de coeficiente en sub-bloque 227 codifica la sintaxis significant_coeff_group_flag[xCG][yCG] designada por cada posición de sub-bloque (xCG,yCG). Más específicamente, se genera un Bin que indica la sintaxis significant_coeff_group_flag[xCG][yCG] designada por cada posición de sub-bloque (xCG,yCG). Cada Bin generado es suministrado a la unidad de codificación de bits 232. Además, la unidad de codificación de indicador de presencia/ausencia de coeficiente en sub-bloque 227 calcula el índice de contexto ctxIdx para determinar el contexto que se utiliza para la unidad de codificación de código aritmética 230 para codificar el Bin de la sintaxis significant_coeff_flag[xC][yC]. El índice de contexto calculado ctxIdx es suministrado a la unidad de registro/actualización de contexto 231.
La Figura 46 es un diagrama de bloques que ilustra una configuración de la unidad de codificación de indicador de presencia/ausencia de coeficiente en sub-bloque 227. Según se ilustra en la Figura 46, la unidad de codificación de indicador de presencia/ausencia de coeficiente en sub-bloque 227 incluye una unidad de derivación de contexto 227a, una unidad de almacenamiento de indicador de presencia/ausencia de coeficiente en sub-bloque 227b, y una unidad de establecimiento de indicador de presencia/ausencia de coeficiente en sub-bloque 227c.
A continuación, se realizará una descripción exponiendo como ejemplo un caso en el que la posición del sub-bloque (xCG,yCG) es suministrada por la unidad de control de codificación de coeficiente 223 a la unidad de codificación de indicador de presencia/ausencia de coeficiente en sub-bloque 227 en un orden de exploración hacia adelante. Además, en este caso, la posición del sub-bloque (xCG,yCG) es suministrada preferiblemente a la unidad de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque 127 incluida en el aparato de decodificación de imágenes en movimiento 1 en un orden de exploración hacia atrás.
(Unidad de derivación de contexto 227a)
La unidad de derivación de contexto 227a incluida en la unidad de codificación de indicador de presencia/ausencia de coeficiente en sub-bloque 227 deriva un índice de contexto asignado a un sub-bloque que es designado por cada posición de sub-bloque (xCG,yCG). El índice de contexto asignado a un sub-bloque se utiliza para decodificar un Bin que indica la sintaxis significant_coeff_group_flag para el sub-bloque. Además, en un caso en el que se deriva el índice de contexto, se referencia a un valor del indicador de presencia/ausencia de coeficiente en sub-bloque almacenado en la unidad de codificación de indicador de presencia/ausencia de coeficiente en sub-bloque 227. La unidad de derivación de contexto 227a suministra el índice de contexto derivado a la unidad de registro/actualización de contexto 231.
(Unidad de almacenamiento de indicador de presencia/ausencia de coeficiente en sub-bloque 227b)
La unidad de almacenamiento de indicador de presencia/ausencia de coeficiente en sub-bloque 227b almacena cada valor de la sintaxis significant_coeffgroup_flag suministrada por la unidad de codificación de indicador de presencia/ausencia de coeficiente 224. La unidad de establecimiento de indicador de presencia/ausencia de coeficiente en sub-bloque 227c puede leer la sintaxis significant_coeff_group_flag asignada a un sub-bloque adyacente, de la unidad de almacenamiento de indicador de presencia/ausencia de coeficiente en sub-bloque 227b. (Unidad de establecimiento de indicador de presencia/ausencia de coeficiente en sub-bloque 227c)
Unidad de establecimiento de indicador de presencia/ausencia de coeficiente en sub-bloque 227c genera un Bin que indica la sintaxis significant_coeff_group_flag[xCG][yCG] suministrada por la unidad de codificación de indicador de presencia/ausencia de coeficiente 224. El Bin generado es suministrado a la unidad de codificación de bits 232. «Ejemplo de configuración de la unidad de codificación de indicador de presencia/ausencia de coeficiente 224>>> La Figura 47 es un diagrama de bloques que ilustra un ejemplo de configuración de la unidad de codificación de indicador de presencia/ausencia de coeficiente 224 según la presente forma de realización. La unidad de codificación de indicador de presencia/ausencia de coeficiente 224, según se ilustra en la Figura 47, incluye una unidad de determinación de tamaño de UT 224a, una unidad de derivación de contexto de posición 224b, una unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 224c, y una unidad de establecimiento de indicador de presencia/ausencia de coeficiente 224e.
(Unidad de determinación de tamaño de UT 224a)
La unidad de determinación de tamaño de UT 224a selecciona la unidad de derivación de contexto de posición 224b o la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 224c de acuerdo con un tamaño de UT objetivo. Cada unidad de derivación de contexto seleccionada deriva un índice de contexto ctxIdx.
Por ejemplo, en un caso en el que un tamaño de UT es igual a o menor que un tamaño predeterminado (por ejemplo, en un caso de una UT de 4*4), la unidad de determinación de tamaño de UT 224a selecciona la unidad de derivación de contexto de posición 224b.
Por lo tanto, la unidad de contexto de posición 224b deriva un índice de contexto ctxIdx, y asigna el índice de contexto derivado a un componente de frecuencia objetivo de la codificación.
Por otro lado, en un caso en el que el tamaño de UT objetivo es mayor que el tamaño predeterminado (por ejemplo, en un caso de una UT de 8*8, una UT de 16*16, una UT de 32*32, etc.), la unidad de determinación de tamaño de UT 224a selecciona la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 224c.
De este modo, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 224c deriva un índice de contexto ctxIdx, y asigna el índice de contexto derivado a un componente de frecuencia objetivo de la codificación.
Además, la unidad de determinación de tamaño de UT 224a no se limita a la configuración descrita anteriormente, y puede tener una configuración de derivar un índice de contexto ctxIdx que es común a los tamaños de UT de una UT de 4*4 hasta una UT de 32*32. En otras palabras, la unidad de determinación de tamaño de UT 224a puede tener una configuración de selección de forma fija de una de entre la unidad de derivación de contexto de posición 224b y la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 224c, independientemente del tamaño de la UT.
(Unidad de derivación de contexto de posición 224b)
La unidad de derivación de contexto de posición 224b deriva un índice de contexto ctxIdx para un componente de frecuencia objetivo en base a una posición del componente de frecuencia objetivo en un dominio de frecuencia. (Unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 224c)
La unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 224c selecciona un patrón de derivación de contexto de acuerdo con la presencia o no presencia de un coeficiente de transformación distinto de cero en un sub-bloque adyacente, y deriva un índice de contexto para un componente de frecuencia objetivo de la codificación a partir de las coordenadas del componente de frecuencia objetivo de la codificación en un sub-bloque de acuerdo con el patrón de derivación seleccionado.
(Unidad de establecimiento de indicador de presencia/ausencia de coeficiente 224e)
La unidad de establecimiento de indicador de presencia/ausencia de coeficiente 224e genera un Bin que indica la sintaxis significant_coeff_flag[xC][yC] suministrada por la unidad de derivación de sintaxis 228. El Bin generado es suministrado a la unidad de codificación de bits 232. Además, la unidad de establecimiento de indicador de presencia/ausencia de coeficiente 224e referencia a un valor de significant_coeff_flag[xC][yC] incluido en un sub­ bloque objetivo, establece un valor igual a 0 para el significant_coeff_group_flag[xCG][yCG] relativo al sub-bloque en un caso en el que todos los valores de significant_coeff_flag[xCG][yCG] son iguales a 0, es decir, un coeficiente de transformación distinto de cero no se encuentra incluido en el sub-bloque objetivo y, en caso contrario, establece un valor igual a 1 para el significant_coeff_group_flag[xCG][yCG] relativo al sub-bloque objetivo. El significant_coeff_group_flag[xCG][yCG] con los valores mencionados anteriormente es suministrado a la unidad de codificación de indicador de presencia/ausencia de coeficiente en sub-bloque 227.
La unidad de codificación de indicador de presencia/ausencia de coeficiente 224 descrita anteriormente tiene una configuración correspondiente a la de la unidad de codificación de indicador de presencia/ausencia de coeficiente 124.
En otras palabras, la unidad de determinación de tamaño de UT 224a, la unidad de derivación de contexto de posición 224b, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 224c, y la unidad de establecimiento de indicador de presencia/ausencia de coeficiente 224e de la unidad de codificación de indicador de presencia/ausencia de coeficiente 224 corresponden respectivamente a la unidad de determinación de tamaño de UT 124a, la unidad de derivación de contexto de posición 124b, la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c y la unidad de establecimiento de indicador de presencia/ausencia de coeficiente 124e de la unidad de codificación de indicador de presencia/ausencia de coeficiente 124.
Por ejemplo, un proceso específico realizado por la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 224c es el mismo que el realizado por la unidad de derivación de contexto de presencia/ausencia de coeficiente en sub-bloque adyacente 124c incluida en el aparato de decodificación de imágenes en movimiento 1.
Por lo tanto, los detalles de cada configuración de la unidad de codificación de indicador de presencia/ausencia de coeficiente 224 son los mismos que los descritos en cada configuración de la unidad de codificación de indicador de presencia/ausencia de coeficiente 124 descrita anteriormente. En otras palabras, los ejemplos y ejemplos de modificación 1 a 7 relacionados con el aparato de decodificación de imágenes en movimiento 1, cada configuración del aparato de decodificación de imágenes en movimiento 1 es sustituido por una configuración correspondiente de la unidad de codificación de indicador de presencia/ausencia de coeficiente 224, debido a lo cual se entenderá la configuración de la unidad de codificación de indicador de presencia/ausencia de coeficiente 224. Por lo tanto, se omitirá en este caso una descripción detallada de la misma.
Según se ha descrito anteriormente, el aparato de codificación de imágenes en movimiento 2, de acuerdo con la presente forma de realización, incluye un dispositivo de codificación aritmética que codifica aritméticamente diversos elementos de sintaxis que indican un coeficiente de transformación con respecto a cada coeficiente de transformación que se obtiene para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de codificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques cada uno de los cuales tiene un tamaño predeterminado; unos medios de codificación de indicador de presencia/ausencia de coeficiente en sub-bloque para codificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en el sub-bloque con respecto a los sub-bloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en sub-bloques; unos medios de determinación de coeficiente de transformación distinto de cero para determinar si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en un sub-bloque adyacente a un sub-bloque objetivo del proceso en base al indicador de presencia/ausencia de coeficiente en sub-bloque codificado; y unos medios de derivación de índices de contexto para derivar un índice de contexto asignado a un indicador de presencia/ausencia de coeficiente de transformación que es una sintaxis que indica si el coeficiente de transformación es igual o no es igual a 0, en el que, cuando un coeficiente de transformación distinto de cero no se encuentra presente en ninguno de los sub-bloques adyacentes al sub-bloque objetivo del proceso, en base al resultado de la determinación, los medios de derivación de índices de contexto derivan los índices de contexto que corresponden respectivamente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja, a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, y a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia entre la probabilidad alta y la probabilidad baja, de acuerdo con una posición de un coeficiente de transformación objetivo del proceso en el sub-bloque objetivo del proceso.
Además, según se ha mencionado anteriormente, el aparato de codificación de imágenes en movimiento 2 según la presente forma de realización incluye un dispositivo de codificación aritmética que codifica aritméticamente diversos elementos de la sintaxis que indican un coeficiente de transformación con respecto a cada coeficiente de transformación que se obtiene para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de codificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques, teniendo cada uno de los mismos un tamaño de 4*4 de acuerdo con una definición predeterminada; unos medios de codificación de indicador de presencia/ausencia de coeficiente en sub­ bloque para codificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en el sub-bloque con respecto a los sub-bloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en sub­ bloques; unos medios de determinación de directividad para determinar una directividad de una distribución de coeficientes de transformación en base a un indicador de presencia/ausencia de coeficiente en sub-bloque en un sub-bloque adyacente a un sub-bloque objetivo del proceso ; y unos medios de derivación de índices de contexto para derivar un índice de contexto asignado a un indicador de presencia/ausencia de coeficiente de transformación que es una sintaxis que indica si el coeficiente de transformación objetivo del proceso es igual o no es igual a 0, en el que, si las coordenadas del sub-bloque que tiene el tamaño de 4*4 son iguales a (xB,yB) (en el que xB es una coordenada en una dirección horizontal, yB es una coordenada en una dirección vertical, y el lado superior izquierdo del sub-bloque es igual a un origen (0,0)), cuando un orden de exploración aplicado al sub-bloque es una exploración en diagonal hacia arriba a la derecha, en un caso en el que una directividad determinada es una dirección vertical, los medios de derivación de índices de contexto derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación es mayor que en dominios distintos de los formados por (0,0) hasta (0,3), (1,0) hasta (1,2) y (2,0), y en un caso en el que una directividad determinada es una dirección horizontal, los medios de derivación de índices de contexto derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación es mayor que en dominios distintos de los formados por (0,0) hasta (3,0), (0,1) hasta (2,1) y (0,2).
En otras palabras, el aparato de codificación de imágenes en movimiento 2 tiene una configuración que corresponde a la configuración del aparato de decodificación de imágenes en movimiento 1 descrito anteriormente.
Por lo tanto, según el aparato de codificación de imágenes en movimiento 2, es posible reducir una cantidad de proceso en relación con la codificación y decodificación de un coeficiente de transformación de la misma manera que en el aparato de decodificación de imágenes en movimiento 1.
Además, la presente invención puede ser representada de la siguiente manera. Según un aspecto de la presente invención, se proporciona un dispositivo de decodificación aritmética que decodifica unos datos codificados que se obtienen codificando aritméticamente diversos elementos de sintaxis que indican un coeficiente de transformación con respecto a cada coeficiente de transformación que se obtiene para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad, e incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo que corresponde a un dominio de unidad objetivo del proceso en sub-bloques cada uno de los cuales tiene un tamaño predeterminado; unos medios de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en el sub-bloque con respecto a los sub-bloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en sub-bloques; unos medios de determinación de coeficiente de transformación distinto de cero para determinar si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en un sub-bloque adyacente a un sub-bloque objetivo del proceso en base al indicador de presencia/ausencia de coeficiente en sub-bloque decodificado; y unos medios de derivación de índices de contexto para derivar un índice de contexto asignado a un indicador de presencia/ausencia de coeficiente de transformación que es una sintaxis que indica si el coeficiente de transformación es igual o no es igual a 0, en el que, cuando un coeficiente de transformación distinto de cero no se encuentra presente en ninguno de los sub-bloques adyacentes al sub-bloque objetivo del proceso, en base al resultado de la determinación, los medios de derivación de índices de contexto derivan los índices de contexto que corresponden respectivamente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja, a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, y a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia entre la probabilidad alta y la probabilidad baja, de acuerdo con una posición de un coeficiente de transformación objetivo del proceso en el sub-bloque objetivo del proceso.
Existe una tendencia a que las probabilidades de ocurrencia de un coeficiente de transformación distinto de cero en un sub-bloque objetivo del proceso sean diferentes gradualmente en función de las circunstancias de los valores de los indicadores de presencia/ausencia de coeficiente en sub-bloque de sub-bloques adyacentes al sub-bloque objetivo del proceso.
Por ejemplo, cuando hay un sub-bloque adyacente derecho que es adyacente al lado derecho de un sub-bloque objetivo del proceso y un sub-bloque adyacente inferior que es adyacente al lado inferior del mismo, las distribuciones de la probabilidad de ocurrencia son diferentes entre sí en un caso en el que sólo un indicador de presencia/ausencia de coeficiente en sub-bloque en el sub-bloque adyacente derecho es igual a 1 y en un caso en el que sólo un indicador de presencia/ausencia de coeficiente en sub-bloque en el sub-bloque adyacente inferior es igual a 1.
Además, las distribuciones de la probabilidad de ocurrencia que son diferentes gradualmente indican que las posiciones en las que la probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, aproximadamente intermedia y baja son diferentes en un sub-bloque objetivo del proceso.
De acuerdo con la configuración, dependiendo de las circunstancias de los valores de los indicadores de presencia/ausencia de coeficiente en sub-bloque en sub-bloques adyacentes a un sub-bloque objetivo del proceso, existe la derivación de índices de contexto que corresponden respectivamente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja, un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, y un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es aproximadamente intermedia entre la probabilidad alta y la probabilidad baja.
En consecuencia, es posible realizar un patrón de derivación de contexto que es más adecuado para una probabilidad de ocurrencia real de un coeficiente de transformación, y de este modo es posible mejorar la eficiencia de la codificación.
En el dispositivo de decodificación aritmética, preferiblemente, los medios de determinación del coeficiente de transformación distinto de cero determinan un indicador de presencia/ausencia de coeficiente en sub-bloque para un sub-bloque adyacente derecho que es un sub-bloque adyacente al lado derecho de un sub-bloque objetivo del proceso y un sub-bloque adyacente inferior que es adyacente al lado inferior del mismo; y, cuando se determina que un coeficiente de transformación distinto de cero no se encuentra presente en uno de los sub-bloques adyacentes derecho e inferior, los medios de derivación de índices de contexto derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, en una posición terminal izquierda o terminal derecha del sub-bloque en una dirección adyacente a un sub-bloque en el que se determina que no se encuentra presente un coeficiente de transformación distinto de cero.
En un caso en el que un coeficiente de transformación distinto de cero se encuentra presente en el sub-bloque adyacente derecho, la probabilidad de ocurrencia de un coeficiente de transformación distinto de cero tiende a aumentar en el extremo superior del sub-bloque objetivo del proceso. Además, en un caso en el que está presente un coeficiente de transformación distinto de cero en el sub-bloque adyacente inferior, la probabilidad de ocurrencia de un coeficiente de transformación distinto de cero tiende a aumentar en el extremo izquierdo del sub-bloque objetivo del proceso.
Según la configuración, es posible derivar el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, en una posición terminal izquierda o derecha del sub-bloque en una dirección adyacente de un sub-bloque en el que se determina que no existe un coeficiente de transformación distinto de cero.
Como resultado, es posible derivar un índice de contexto que es más adecuado para una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero según se ha descrito anteriormente.
Con el fin de resolver los problemas que se han descrito anteriormente, un dispositivo de decodificación aritmética de acuerdo con la presente invención decodifica datos codificados obtenidos codificando aritméticamente diversos elementos de sintaxis que indican un coeficiente de transformación con respecto a cada coeficiente de transformación que se obtiene para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de decodificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques cada uno de los cuales tiene un tamaño de 4*4 de acuerdo con una definición predeterminada; unos medios de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en el sub-bloque con respecto a los sub-bloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en sub­ bloques; unos medios de determinación de directividad para determinar una directividad de una distribución de coeficientes de transformación en base a un indicador de presencia/ausencia de coeficiente en sub-bloque en un sub-bloque adyacente a un sub-bloque objetivo del proceso; y unos medios de derivación de índices de contexto para derivar un índice de contexto asignado a un indicador de presencia/ausencia de coeficiente de transformación que es una sintaxis que indica si el coeficiente de transformación objetivo del proceso es igual o no es igual a 0, en el que, si las coordenadas del sub-bloque que tiene el tamaño de 4*4 se establecen iguales a (xB,yB) (en el que xB es una coordenada en una dirección horizontal, yB es una coordenada en una dirección vertical, y el lado superior izquierdo del sub-bloque se establece igual a un origen (0,0)), cuando un orden de exploración aplicado al subbloque es una exploración en diagonal hacia arriba a la derecha, en un caso en el que una directividad determinada es una dirección vertical, los medios de derivación de índices de contexto derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación es mayor que en dominios distintos de los formados por (0,0) hasta (0,3), (1,0) hasta (1,2) y (2,0), y en un caso en el que una directividad determinada es una dirección horizontal, los medios de derivación de índices de contexto derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación es mayor que en dominios distintos de los formados por (0,0) hasta (3,0), (0,1) hasta (2,1) y (0,2).
En la configuración, la directividad de una distribución de un coeficiente de transformación es, específicamente, la siguiente en un caso en el que se encuentra presente un sub-bloque adyacente derecho que es adyacente al lado derecho de un sub-bloque objetivo del proceso y un sub-bloque adyacente inferior que es adyacente al lado inferior del mismo.
En un caso en el que un indicador de presencia/ausencia de coeficiente en sub-bloque en el sub-bloque adyacente derecho indica que no se encuentra incluido ningún coeficiente de transformación distinto de cero en el sub-bloque adyacente derecho, y un indicador de presencia/ausencia de coeficiente en sub-bloque en el sub-bloque adyacente inferior indica que al menos un coeficiente de transformación distinto de cero se encuentra incluido en el sub-bloque adyacente inferior, la probabilidad de ocurrencia de un coeficiente de transformación distinto de cero tiende a aumentar en el lado izquierdo del sub-bloque objetivo del proceso. En otras palabras, en este caso, la directividad de una distribución de un coeficiente de transformación es una dirección vertical.
En este caso, la probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es mayor en un dominio formado por (0,0) hasta (0,3), (1,0) hasta (1,2) y (2,0) que en dominios distintos del dominio.
Además, en un caso en el que un indicador de presencia/ausencia de coeficiente en sub-bloque en el sub-bloque adyacente derecho indica que al menos un coeficiente de transformación distinto de cero se encuentra incluido en el sub-bloque adyacente derecho, y un indicador de presencia/ausencia de coeficiente en sub-bloque en el sub-bloque adyacente inferior indica que no se encuentra incluido ningún coeficiente de transformación distinto de cero en el sub-bloque adyacente inferior, la probabilidad de ocurrencia de un coeficiente de transformación distinto de cero tiende a aumentar en el lado superior del sub-bloque objetivo del proceso. En otras palabras, en este caso, la directividad de una distribución de un coeficiente de transformación es una dirección horizontal.
En este caso, la probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es mayor en un dominio formado por (0,0) hasta (3,0), (0,1) hasta (2,1) y (0,2) que en dominios distintos del dominio.
Además, como orden de proceso en una dirección hacia adelante de la exploración en diagonal hacia arriba a la derecha, en la expresión de coordenadas, con (0,0) como punto de partida, se aplica un proceso desde (0,1) hasta (1,0) en la dirección diagonal hacia arriba a la derecha, desde (0,2) hasta (2,0) en la dirección diagonal hacia arriba a la derecha, desde (0,3) hasta (3,0) en la dirección diagonal hacia arriba a la derecha, desde (1,3) hasta (3,1) en la dirección diagonal hacia arriba a la derecha, desde (2,3) hasta (3,2) en la dirección diagonal hacia arriba a la derecha, y finalmente hasta (3,3).
Además, en la técnica relacionada, una secuencia de índices de contexto en un orden de exploración hacia atrás (un orden de exploración en un proceso de decodificación real) de la exploración en diagonal hacia arriba a la derecha es de la siguiente manera si un índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación es alta es igual a 1, y un índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación es baja es igual a 0.
En caso de dirección horizontal: 0001001100110111
En caso de dirección vertical: 0000010011011111
Según se ha mencionado anteriormente, en un caso de la dirección horizontal, el número de cambios de "0" a "1" es cuatro, el número de cambios de "1" a "0" es tres, y por lo tanto el número de cambios es un total de siete.
Además, en un caso de la dirección vertical, el número de cambios de "0" a "1" es tres, el número de cambios de "1" a "0" es dos, y por lo tanto el número de cambios es un total de cinco.
En contraste, de acuerdo con la configuración, en un caso en el que una directividad determinada es la dirección vertical, existe la derivación del índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación es mayor en un dominio formado por (0,0) hasta (0,3), (1,0) hasta (1,2), y (2,0) que en dominios distintos al dominio.
En este caso, una secuencia de índices de contexto en un orden de exploración hacia atrás de la exploración en diagonal hacia arriba a la derecha es la siguiente si un índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación es alta es igual a 1, y un índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación es baja es igual a 0.
En caso de dirección vertical: 0000000011111111
Por lo tanto, el número de cambios en 0 y 1 es sólo uno de un cambio de "0" a "1".
Además, en un caso en el que una directividad determinada es la dirección horizontal, existe la derivación del índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación es mayor en un dominio formado por (0,0) hasta (3,0), (0,1) hasta (2,1), y (0,2) que en dominios distintos del dominio.
En este caso, una secuencia de índices de contexto en el orden de exploración hacia atrás es la siguiente de la misma manera que la anterior.
En caso de dirección horizontal: 0000001100111111
Por lo tanto, el número de cambios de "0" a "1" es dos, el número de cambios de "1" a "0" es uno, y por lo tanto el número de cambios es un total de tres.
Como se ha mencionado anteriormente, según la configuración, es posible minimizar los cambios en los índices de contexto en un sub-bloque en comparación con la técnica relacionada. Por consiguiente, según se ha descrito anteriormente, en el hardware que define el número de 0 y 1 repetidos, se simplifica el montaje del hardware.
Con el fin de resolver los problemas que se han descrito anteriormente, un dispositivo de decodificación aritmética de acuerdo con la presente invención decodifica unos datos codificados que se obtienen codificando aritméticamente diversos elementos de sintaxis que indican un coeficiente de transformación con respecto a cada coeficiente de transformación que se obtiene para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de decodificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques cada uno de los cuales tiene un tamaño predeterminado; unos medios de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en el sub-bloque con respecto a los sub­ bloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en sub-bloques; unos medios de determinación de directividad para determinar una directividad de una distribución de coeficientes de transformación en base a un indicador de presencia/ausencia de coeficiente en sub-bloque en un sub-bloque adyacente a un sub-bloque objetivo del proceso; y unos medios de decodificación de coeficientes de transformación para decodificar los coeficientes de transformación utilizando un orden de exploración de acuerdo con una directividad determinada por los medios de determinación de directividad.
Según la configuración, es posible decodificar un coeficiente de transformación utilizando un orden de exploración según la directividad de una distribución de un coeficiente de transformación. Por consiguiente, es posible minimizar los cambios en 0 y 1 en un orden de exploración hacia atrás en un sub-bloque utilizando un orden de exploración de acuerdo a una directividad, incluso si las siguientes secuencias de índices de contexto de los relacionados.
En caso de dirección horizontal: 0001001100110111
En caso de dirección vertical: 0000010011011111
En consecuencia, según se ha descrito anteriormente, en el hardware que define el número de 0 y 1 repetidos, se simplifica el montaje del hardware.
Con el fin de resolver los problemas que se han descrito anteriormente, un dispositivo de decodificación aritmética de acuerdo con la presente invención decodifica unos datos codificados que se obtienen codificando aritméticamente diversos elementos de sintaxis que indican un coeficiente de transformación con respecto a cada coeficiente de transformación que se obtiene para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de decodificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques cada uno de los cuales tiene un tamaño predeterminado; unos medios de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en el sub-bloque con respecto a los subbloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en sub-bloques; unos medios de contaje del número de sub-bloques con presencia de coeficiente para contar el número de sub-bloques que incluyen al menos un coeficiente de transformación distinto de cero para cada sub-bloque adyacente a un sub­ bloque objetivo del proceso en base al indicador de presencia/ausencia de coeficiente en sub-bloque; y unos medios de derivación de índices de contexto para derivar un índice de contexto asignado a un indicador de presencia/ausencia de coeficiente de transformación que es una sintaxis que indica si el coeficiente de transformación es igual o no es igual a 0, en el que los medios de derivación de índices de contexto derivan el índice de contexto utilizando una agregación de una coordenada en una dirección horizontal y una coordenada en una dirección vertical de un coeficiente de transformación objetivo del proceso en el sub-bloque objetivo del proceso de acuerdo con el número contado por los medios de contaje del número de sub-bloques con presencia de coeficiente. Según la configuración, es posible derivar el índice de contexto utilizando una agregación de una coordenada en dirección horizontal y una coordenada en una dirección vertical de un coeficiente de transformación objetivo del proceso en el sub-bloque objetivo del proceso según el número de sub-bloques que incluyen al menos un coeficiente de transformación distinto de cero.
En la configuración, el indicador de presencia/ausencia de coeficiente en sub-bloque no se diferencia entre un subbloque adyacente derecho y un sub-bloque adyacente inferior.
Por consiguiente, cuando se compara con el ejemplo descrito anteriormente, es posible reducir el número de patrones de derivación de contexto. Además, las comparaciones en los patrones respectivos se realizan mediante una comparación entre "xB+yB" y un valor de umbral predeterminado. Además, las disposiciones ilustradas en las Figuras 24(a) a 24(c) están relacionadas con la exploración en diagonal hacia arriba a la derecha, el número de cambios en los índices de contexto en un orden de exploración en un sub-bloque es sólo uno, y por lo tanto se simplifica su montaje en el hardware.
Como se ha mencionado anteriormente, según la configuración, es posible conseguir un efecto de simplificación del montaje del hardware.
Con el fin de resolver los problemas que se han descrito anteriormente, un dispositivo de decodificación aritmética de acuerdo con la presente invención decodifica unos datos codificados que se obtienen codificando aritméticamente diversos elementos de sintaxis que indican un coeficiente de transformación con respecto a cada coeficiente de transformación que se obtiene para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de decodificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques, cada uno de los cuales tiene un tamaño de 4*4 de acuerdo con una definición predeterminada; unos medios de decodificación de indicador de presencia/ausencia de coeficiente en subbloque para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en el sub-bloque con respecto a los sub-bloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en sub­ bloques; unos medios de determinación de patrón para determinar un patrón de un valor de un indicador de presencia/ausencia de coeficiente en sub-bloque que se decodifica para cada sub-bloque adyacente a un subbloque objetivo del proceso; y unos medios de derivación de índices de contexto para derivar un índice de contexto asignado a un indicador de presencia/ausencia de coeficiente de transformación, que es una sintaxis que indica si el coeficiente de transformación objetivo del proceso es igual o no es igual a 0, en el que los medios de derivación de índices de contexto derivan el índice de contexto utilizando bits de orden superior en una expresión de 2 bits de cada una de las coordenadas en una dirección horizontal y una dirección vertical de un coeficiente de transformación objetivo del proceso en el sub-bloque objetivo del proceso, de acuerdo con un resultado de la determinación suministrado por los medios de determinación del patrón.
Según la configuración, es posible derivar el índice de contexto utilizando bits de orden superior en una expresión de 2 bits de cada una de las coordenadas en una dirección horizontal y una dirección vertical de un coeficiente de transformación objetivo del proceso en el sub-bloque objetivo del proceso de acuerdo con unos valores de las circunstancias de los indicadores de presencia/ausencia de coeficiente en sub-bloque que son decodificados para cada sub-bloque adyacente a un sub-bloque objetivo del proceso.
Según la configuración, es posible realizar un proceso de derivación de índice de contexto a partir de una información de input de 4 bits. Específicamente, los 4 bits son un total de 4 bits que incluyen un bit (1 bit) más alto de una coordenada X en un sub-bloque, un bit (1 bit) más alto de una coordenada y en el sub-bloque, un indicador de presencia/ausencia de coeficiente en sub-bloque (1 bit) en un sub-bloque adyacente en la dirección X, y un indicador de presencia/ausencia de coeficiente en sub-bloque (1 bit) en un sub-bloque adyacente en la dirección Y.
Además, puesto que es preferible derivar un output de 0 a 2 (2 bits) a partir del input de 4 bits, se puede realizar un proceso de derivación de índice de contexto mediante un simple cálculo de bits.
Con el fin de resolver los problemas que se han descrito anteriormente, un dispositivo de decodificación aritmética de acuerdo con la presente invención decodifica unos datos codificados que se obtienen codificando aritméticamente diversos elementos de sintaxis que indican un coeficiente de transformación con respecto a cada coeficiente de transformación que se obtiene para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de decodificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques, teniendo cada uno de los mismos un tamaño de 4*4 de acuerdo con una definición predeterminada; y unos medios de decodificación de coeficiente de transformación para decodificar un coeficiente de transformación utilizando un orden de exploración en un dominio parcial con respecto a respectivos dominios parciales, teniendo cada uno de los mismos un tamaño de 2*2, obtenidos dividiendo el sub-bloque que tiene un tamaño de 4*4 en cuatro dominios.
Según la configuración, se decodifica un coeficiente de transformación utilizando un orden de exploración en un dominio parcial con respecto a los dominios parciales respectivos, teniendo cada uno de los mismos un tamaño de 2*2, obtenidos dividiendo el sub-bloque que tiene el tamaño de 4*4 en cuatro dominios.
Como orden de exploración en el dominio parcial, se pueden explorar unos componentes de frecuencia superior izquierda, superior derecha, inferior izquierda e inferior derecha en este orden, por ejemplo, en un dominio parcial que tiene un tamaño de 2*2. Además, se puede aplicar de forma anidada un orden de exploración en el dominio parcial y un orden de exploración de los dominios parciales (unidades de dominio parciales). Además, puede realizarse un proceso de decodificación real en orden de exploración hacia atrás.
Según la configuración, dado que las coordenadas de un orden de exploración (por ejemplo, las coordenadas de componentes de frecuencia adyacentes entre sí en el orden de exploración) se puede evitar que se modifiquen considerablemente, se pueden decodificar secuencialmente los coeficientes de transformación que tienen espacialmente los mismos tipos de características que los demás. Como resultado, se mejora la eficiencia de la codificación.
Con el fin de resolver los problemas que se han descrito anteriormente, un dispositivo de decodificación aritmética de acuerdo con la presente invención decodifica unos datos codificados que se obtienen codificando aritméticamente diversos elementos de sintaxis que indican un coeficiente de transformación con respecto a cada coeficiente de transformación que se obtiene para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de decodificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques cada uno de los cuales tiene un tamaño predeterminado; unos medios de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en el sub-bloque con respecto a los sub­ bloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en sub-bloques; unos medios de determinación de directividad para determinar una directividad de una distribución de coeficientes de transformación en base a un indicador de presencia/ausencia de coeficiente en sub-bloque en un sub-bloque adyacente a un sub-bloque objetivo del proceso; y unos medios de derivación de índices de contexto para derivar un índice de contexto asignado a un indicador de presencia/ausencia de coeficiente de transformación que es una sintaxis que indica si el coeficiente de transformación es o no es igual a 0, en el que los medios de derivación de índices de contexto derivan el índice de contexto utilizando unas coordenadas en el dominio de unidad objetivo del proceso en el sub-bloque objetivo del proceso, de acuerdo con una directividad determinada por los medios de determinación de directividad.
Según la configuración, el índice de contexto se obtiene utilizando unas coordenadas en el dominio de unidad objetivo del proceso en el sub-bloque objetivo del proceso según una directividad de una distribución de un coeficiente de transformación.
En un caso en el que está presente un borde horizontal o un borde vertical, los coeficientes de transformación distintos de cero tienden a concentrarse y aparecen en un dominio de xC=0 o yC=0 en un dominio de unidad objetivo del proceso (por ejemplo, una UT).
De acuerdo con la configuración, dado que un índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta se utiliza en un caso en el que una probabilidad de la presencia del borde horizontal o del borde vertical es alta, es posible mejorar la eficiencia de la codificación.
Con el fin de resolver los problemas que se han descrito anteriormente, un dispositivo de decodificación aritmética de acuerdo con la presente invención decodifica unos datos codificados que se obtienen codificando aritméticamente diversos elementos de sintaxis que indican un coeficiente de transformación con respecto a cada coeficiente de transformación que se obtiene para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de decodificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques cada uno de los cuales tiene un tamaño predeterminado; unos medios de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en el sub-bloque con respecto a los sub­ bloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en sub-bloques; unos medios de determinación de presencia de coeficiente en sub-bloque adyacente para determinar si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en cada uno de los sub­ bloques adyacentes a un sub-bloque objetivo del proceso en base al indicador de presencia/ausencia de coeficiente en sub-bloque; y unos medios de derivación de índices de contexto para derivar un índice de contexto asignado a un indicador de presencia/ausencia de coeficiente de transformación que es una sintaxis que indica si el coeficiente de transformación es igual o no es igual a 0, en el que, en un caso en el que al menos un coeficiente de transformación distinto de cero se encuentra incluido en sub-bloques de un número predeterminado o superior como resultado de la determinación, los medios de derivación de índices de contexto derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, igualmente en el sub-bloque objetivo del proceso.
De acuerdo con la configuración, existe la derivación del índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, igualmente en el sub-bloque objetivo del proceso.
Según se ha mencionado anteriormente, en un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es igualmente alta, existe la derivación del índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, igualmente en el sub-bloque objetivo del proceso, y por lo tanto es posible mejorar la eficiencia de la codificación.
Un aparato de decodificación de imágenes de acuerdo con la presente invención incluye el dispositivo de decodificación aritmética; los medios de transformación de frecuencia inversa para generar una imagen residual realizando una transformación de frecuencia inversa en un coeficiente de transformación que es decodificado por el dispositivo de decodificación aritmética; y los medios de generación de imagen decodificada para generar una imagen decodificada agregando la imagen residual que es generada por los medios de transformación de frecuencia inversa a una imagen pronosticada que es pronosticada a partir de una imagen decodificada generada.
El aparato de decodificación de imágenes con esta configuración también cae dentro del alcance de la presente invención, y también en este caso, es posible realizar las mismas operaciones y efectos que en el dispositivo de decodificación aritmética descrito anteriormente.
Con el fin de resolver los problemas que se han descrito anteriormente, un dispositivo de codificación aritmética de acuerdo con la presente invención codifica aritméticamente diversos elementos de sintaxis que indican un coeficiente de transformación con respecto a cada coeficiente de transformación que se obtiene para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de codificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques cada uno de los cuales tiene un tamaño predeterminado; unos medios de codificación de indicador de presencia/ausencia de coeficiente en sub-bloque para codificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en el sub-bloque con respecto a los sub-bloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en sub-bloques; unos medios de determinación de coeficiente de transformación distinto de cero para determinar si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en un sub-bloque adyacente a un sub-bloque objetivo del proceso en base al indicador de presencia/ausencia de coeficiente en sub-bloque codificado; y unos medios de derivación de índices de contexto para derivar un índice de contexto asignado a un indicador de presencia/ausencia de coeficiente de transformación que es una sintaxis que indica si el coeficiente de transformación es igual o no es igual a 0, en el que, cuando un coeficiente de transformación distinto de cero no se encuentra presente en ninguno de los sub-bloques adyacentes al sub-bloque objetivo del proceso, en base al resultado de la determinación, los medios de derivación de índices de contexto derivan los índices de contexto que corresponden respectivamente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es baja, a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es alta, y a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación distinto de cero es intermedia entre la probabilidad alta y la probabilidad baja, de acuerdo con una posición de un coeficiente de transformación objetivo del proceso en el sub­ bloque objetivo del proceso.
Con el fin de resolver el problema descrito anteriormente, un dispositivo de codificación aritmética de acuerdo con la presente invención codifica aritméticamente diversos elementos de sintaxis que indican un coeficiente de transformación con respecto a cada coeficiente de transformación que se obtiene para cada componente de frecuencia realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad. El dispositivo de codificación aritmética incluye unos medios de división en sub-bloques para dividir un dominio de frecuencia objetivo correspondiente a un dominio de unidad objetivo del proceso en sub-bloques, teniendo cada uno de los mismos un tamaño de 4*4 de acuerdo con una definición predeterminada; unos medios de codificación de indicador de presencia/ausencia de coeficiente en sub-bloque para codificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si al menos un coeficiente de transformación distinto de cero se encuentra o no se encuentra incluido en el sub-bloque con respecto a los sub-bloques respectivos en los que el dominio de frecuencia es dividido por los medios de división en sub-bloques; unos medios de determinación de directividad para determinar una directividad de una distribución de coeficientes de transformación en base a un indicador de presencia/ausencia de coeficiente en sub-bloque en un sub-bloque adyacente a un sub-bloque objetivo del proceso; y unos medios de derivación de índices de contexto para derivar un índice de contexto asignado a un indicador de presencia/ausencia de coeficiente de transformación que es una sintaxis que indica si el coeficiente de transformación es o no es igual a 0, en el que, si las coordenadas del sub-bloque que tiene el tamaño de 4*4 son iguales a (xB,yB) (en el que xB es una coordenada en una dirección horizontal, yB es una coordenada en una dirección vertical, y el lado superior izquierdo del sub-bloque es igual a un origen (0,0)), cuando un orden de exploración aplicado al sub-bloque es una exploración en diagonal hacia arriba a la derecha, en un caso en el que una directividad determinada es una dirección vertical, los medios de derivación de índices de contexto derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación es mayor que en dominios distintos de los formados por (0,0) hasta (0,3), (1,0) hasta (1,2) y (2,0), y en un caso en el que una directividad determinada es una dirección horizontal, los medios de derivación de índices de contexto derivan el índice de contexto correspondiente a un caso en el que una probabilidad de ocurrencia de un coeficiente de transformación es mayor que en dominios distintos de los formados por (0,0) hasta (3,0), (0,1) hasta (2,1) y (0,2).
Además, un aparato de codificación de imágenes de acuerdo con la presente invención incluye unos medios de generación de coeficientes de transformación para generar un coeficiente de transformación realizando una transformación de frecuencia en una imagen residual entre una imagen objetivo de la codificación y una imagen pronosticada para cada dominio de unidad; y el dispositivo de codificación aritmética, en el que el dispositivo de codificación aritmética genera datos codificados codificando aritméticamente diversos elementos de sintaxis que indican un coeficiente de transformación generado por los medios de generación de coeficientes de transformación.
El aparato de codificación de imágenes con esta configuración también cae dentro del alcance de la presente invención, y también en este caso, es posible realizar las mismas operaciones y efectos que en el dispositivo de codificación aritmética descrito anteriormente.
(Apéndice 1)
El aparato de codificación de imágenes en movimiento 2 y el aparato de decodificación de imágenes en movimiento 1 descritos anteriormente pueden ser montados y utilizados en diversos elementos de un equipo que realizan transmisión, recepción, grabación y reproducción de imágenes en movimiento. Además, las imágenes en movimiento pueden ser imágenes naturales capturadas por una cámara o similar, y pueden ser imágenes artificiales (incluyendo CG y GUI) generadas por un sistema informático o similar.
En primer lugar, con referencia a la Figura 48, se describirá que el aparato de codificación de imágenes en movimiento 2 y el aparato de decodificación de imágenes en movimiento 1 descritos anteriormente pueden utilizarse para transmisión y recepción de imágenes en movimiento.
La Figura 48(a) es un diagrama de bloques que ilustra una configuración de un equipo de transmisión que incluye el aparato de codificación de imágenes en movimiento 2 montado en el mismo. Según se ilustra en la Figura 48(a), el equipo de transmisión PROD_A incluye un codificador PROD_A1 que obtiene una imagen en movimiento mediante decodificación, un modulador PROD_A2 que obtiene una señal modulada modulando los datos codificados obtenidos por el codificador PROD_A1, y un transmisor PROD_A3 que transmite la señal modulada obtenida por el modulador PROD_A2. El aparato de codificación de imágenes en movimiento 2 descrito anteriormente es utilizado como codificador PROD_A1.
El equipo de transmisión PROD_A puede incluir además una cámara PROD_A4 que captura una imagen en movimiento como fuente de suministro de una imagen en movimiento que es suministrada al codificador PROD_A1, unos medios de grabación PROD_A5 que graban la imagen en movimiento en los mismos, un terminal de input PROD_A6 para obtener como input una imagen en movimiento desde un dispositivo externo, y un procesador de imágenes pROD_A7 que genera o procesa una imagen. La Figura 48(a) ilustra una configuración en la que el equipo de transmisión PROD_A incluye todos los elementos constituyentes, pero pueden omitirse algunos de los mismos.
Además, los medios de grabación PROD_A5 pueden grabar una imagen en movimiento que no está codificada, y pueden grabar una imagen en movimiento que es codificada en un procedimiento de codificación para grabación diferente de un procedimiento de codificación para transmisión. En este último caso, se puede proporcionar un decodificador (no ilustrado) que decodifica datos codificados leídos de los medios de grabación PROD_A5 según un procedimiento de codificación para grabación entre los medios de grabación PROD_A5 y el codificador PROD_A1. La Figura 48(b) es un diagrama de bloques que ilustra una configuración de un equipo de recepción, que incluye el aparato de decodificación de imágenes en movimiento 1 montado en el mismo. Según se ilustra en la Figura 48(b), el equipo de recepción PROD_B incluye un receptor PROD_B1 que recibe una señal modulada, un demodulador PROD_B2 que obtiene datos codificados demodulando la señal modulada recibida por el receptor PROD_B1, y un de decodificador PROD_B3 que obtiene una imagen en movimiento decodificando los datos codificados obtenidos por el demodulador PROD_b2. El aparato de decodificación de imágenes en movimiento 1 descrito anteriormente es utilizado el decodificador PROD_B3.
El equipo de recepción PROD_B puede incluir además una pantalla PROD_B4 que muestra una imagen en movimiento como fuente de suministro de la imagen en movimiento suministrada por el decodificador PROD_B3, unos medios de grabación PROD_B5 que graban una imagen en movimiento, y un terminal de output PROD_B6 que suministra una imagen en movimiento a un dispositivo externo. La Figura 48(b) ilustra una configuración en la que el equipo de recepción PROD_B incluye todos los elementos constituyentes, pero pueden omitirse algunos de los mismos.
Además, los medios de grabación PROD_B5 pueden grabar una imagen en movimiento que no está codificada, y pueden grabar una imagen en movimiento codificada en un procedimiento de codificación para grabación diferente de un procedimiento de codificación para transmisión. En este último caso, se puede proporcionar un codificador (no ilustrado) que codifica una imagen en movimiento adquirida del decodificador PROD_B3 según un procedimiento de codificación para grabación entre el decodificador PROd_B3 y los medios de grabación PROD_B5.
Además, unos medios de transmisión para transmitir una señal modulada pueden ser inalámbricos y cableados. Además, un aspecto de transmisión de la transmisión de una señal modulada puede ser de radiodifusión (en este caso, indicando un aspecto de transmisión en el que no se especifica de antemano un destino de transmisión) y puede ser de comunicación (en este caso, indicando un aspecto de transmisión en el que se especifica de antemano un destino de transmisión). En otras palabras, la transmisión de una señal modulada puede ser realizada por cualquiera de entre una radiodifusión inalámbrica, radiodifusión por cable, comunicación inalámbrica y comunicación por cable.
Por ejemplo, una estación de radiodifusión (una instalación de radiodifusión o similar) y una estación receptora (un receptor de televisión o similar) en una radiodifusión digital terrestre son ejemplos respectivamente del equipo de transmisión PROD_A y del equipo de recepción PROD_B que transmiten y reciben una señal modulada en una radiodifusión inalámbrica. Además, una estación de radiodifusión (una instalación de radiodifusión o similar) y una estación receptora (un receptor de televisión o similar) en una radiodifusión de televisión por cable son ejemplos respectivamente de los equipos de transmisión PROD_A y equipos de recepción PROD_B que transmiten y reciben una señal modulada en una radiodifusión por cable.
Además, un servidor (una estación de trabajo o similar) y un cliente (un receptor de televisión, un sistema informático personal, un teléfono inteligente o similar) en un servicio de vídeo a la carta (VOD) o un servicio de intercambio de imágenes en movimiento a través de Internet o similar son, respectivamente, ejemplos del equipo de transmisión PROD_A y del equipo de recepción PROD_B que transmiten y reciben una señal modulada en la comunicación (por lo general, se utiliza un medio inalámbrico o alámbrico como medio de transmisión en una LAN, y un medio alámbrico como medio de transmisión en una WAN). En este caso, el sistema informático personal incluye un PC de escritorio, un PC portátil y un PC tableta. Además, el teléfono inteligente también incluye un terminal de teléfono móvil multifunción.
Además, el cliente en el servicio de intercambio de imágenes en movimiento no sólo tiene la función de decodificar los datos codificados que se descargan del servidor y mostrarlos en una pantalla, sino que también tiene la función de codificar una imagen en movimiento capturada por una cámara y subir la imagen en movimiento al servidor. En otras palabras, el cliente en el servicio de intercambio de imágenes en movimiento funciona como equipo de transmisión PROD_A y como equipo de recepción PROD_B.
A continuación, con referencia a la Figura 49, se describirá que el aparato de codificación de imágenes en movimiento 2 y el aparato de decodificación de imágenes en movimiento 1 descritos anteriormente pueden utilizarse para grabar y reproducir imágenes en movimiento.
La Figura 49(a) es un diagrama de bloques que ilustra una configuración del equipo de grabación PROD_C, incluido el aparato de codificación de imágenes en movimiento 2 montado en el mismo. Según se ilustra en la Figura 49(a), el equipo de grabación PROD_C incluye un codificador PROD_C1 que obtiene una imagen en movimiento mediante codificación, y un escritor PROD_C2 que escribe los datos codificados obtenidos por el codificador PROD_C1 en unos medios de grabación PROD_M. El aparato de codificación de imágenes en movimiento 2 descrito anteriormente se utiliza como codificador PROD_C1.
Además, los medios de grabación PROD_M pueden estar (1) integrados en el equipo de grabación PROD_C, como una unidad de disco duro (HDD), una unidad de estado sólido (SSD), (2) conectados al equipo de grabación PROD_C, como una tarjeta de memoria SD o una memoria flash de bus serie universal (USB), y (3) cargados en una unidad de control (no ilustrada) integrada en el equipo de grabación PROD_C, como un disco versátil digital (DVD) o un disco Blu-ray (marca registrada, BD).
Además, el equipo de grabación PROD_C puede incluir además una cámara PROD_C3 que captura una imagen en movimiento como fuente de suministro de una imagen en movimiento que se suministra al codificador PROD_C1, un terminal de input PROD_C4 para suministrar una imagen en movimiento desde un dispositivo externo, un receptor PROD_C5 que recibe una imagen en movimiento y un procesador de imágenes PROD_C6 que genera o procesa una imagen. La Figura 49(a) ilustra una configuración en la que el equipo de grabación PROD_C incluye todos los elementos constitutivos, pero pueden omitirse algunos de los mismos.
Además, el receptor PROD_C5 puede recibir una imagen en movimiento que no está codificada, y puede recibir una imagen en movimiento codificada en un procedimiento de codificación para grabar diferente de un procedimiento de codificación para transmisión. En este último caso, se puede proporcionar un decodificador (no ilustrado) para transmisión que decodifica unos datos codificados que son codificados en un procedimiento de codificación para transmisión entre el receptor PROD_C5 y el codificador PROD_C1.
El equipo de grabación PROD_C puede incluir, por ejemplo, un grabador de DVD, un grabador de BD y un grabador de disco duro (en este caso, el terminal de input PROD_C4 o el receptor PROD_C5 es una fuente de suministro principal de una imagen en movimiento). Además, algunos ejemplos del equipo de grabación PROD_C son también una videocámara (en este caso, la cámara PROD_C3 es una fuente de suministro principal de una imagen en movimiento), un sistema informático personal (en este caso, el receptor PROD_C5 o el procesador de imágenes PROD_C6 es una fuente de suministro principal de una imagen en movimiento) y un teléfono inteligente (en este caso, la cámara PROD_C3 o el receptor PROD_C5 es una fuente de suministro principal de una imagen en movimiento).
La Figura 49(b) es un diagrama de bloques que ilustra una configuración de un equipo de reproducción PROD_D, que incluye el aparato de decodificación de imágenes en movimiento 1 montado en el mismo. Según se ilustra en la Figura 49(b), el equipo de reproducción PROD_D incluye un receptor PROD_1 incluye un lector PROD_D1 que lee datos codificados que se escriben en el medio de grabación PROD_M, y un codificador PROD_D2 que obtiene una imagen en movimiento codificando los datos codificados leídos por el lector PROD_D1. El aparato de decodificación de imágenes en movimiento 1 descrito anteriormente se utiliza como el decodificador PROD_D2.
Además, los medios de grabación PROD_M pueden estar (1) integrados en el equipo de reproducción PROD_D, como un disco duro HDD, un SSD, (2) conectados al equipo de reproducción PROD_D, como una tarjeta de memoria SD o una memoria flash USB, y (3) cargados en un dispositivo controlador (no ilustrado) integrado en el equipo de reproducción PROD_D, tal como un DVD o un BD.
Además, el equipo de reproducción PROD_D puede incluir además una pantalla PROD_D3 que muestra una imagen en movimiento como fuente de suministro de la imagen en movimiento suministrada por el decodificador PROD_D2, un terminal de output PROD_D4 que suministra una imagen en movimiento a un dispositivo externo, y un transmisor PROD_D5 que transmite una imagen en movimiento. La Figura 49(b) ilustra una configuración en la que el equipo de reproducción PROD_D incluye todos los elementos constituyentes, pero pueden omitirse algunos de los mismos.
Además, el transmisor PROD_D5 puede transmitir una imagen en movimiento que no está codificada, y puede transmitir una imagen en movimiento codificada en un procedimiento de codificación para transmisión diferente de un procedimiento de codificación para grabación. En este último caso, se puede proporcionar un codificador (no ilustrado) que codifica una imagen en movimiento en un procedimiento de codificación para transmisión entre el decodificador PROD_D2 y el transmisor PROD_D5.
El equipo de reproducción PROD_D puede incluir, por ejemplo, un reproductor de DVD, un reproductor de BD y un reproductor de HDD (en este caso, el terminal de output PROD_D4 conectado a un receptor de televisión es una fuente de suministro principal de una imagen en movimiento). Además, ejemplos del equipo de reproducción PROD_D son también un receptor de televisión (en este caso, la pantalla p Ro D_D3 es una fuente de suministro principal de una imagen en movimiento), una señalización digital (también llamada señalización electrónica o tablón de anuncios electrónico; en este caso, la pantalla PROD_D3 o el transmisor PROD_D5 es una fuente de suministro principal de una imagen en movimiento), un PC de sobremesa (en este caso, el terminal de output PROD_D4 o el transmisor PROD_D5 es una fuente de suministro principal de una imagen en movimiento), un sistema informático portátil o un PC de sobremesa (en este caso, la pantalla PROD_D3 o el transmisor PROD_D5 es una fuente de suministro principal de una imagen en movimiento), y un teléfono inteligente (en este caso, la pantalla PROD_D3 o el transmisor PROD_D5 es una fuente de suministro principal de una imagen en movimiento).
(Apéndice 2)
Cada bloque del aparato de decodificación de imágenes en movimiento 1 y del aparato de codificación de imágenes en movimiento 2 descritos anteriormente puede ser realizado en hardware utilizando circuitos lógicos formados en un circuito integrado (chip IC), y puede ser realizado en software utilizando una unidad central de procesamiento (CPU).
En este último caso, cada uno de los aparatos incluye una CPU que ejecuta comandos de un programa, una memoria de sólo lectura (ROM) que almacena el programa, una memoria de acceso aleatorio (RAM) en la que se desarrolla el programa, y un dispositivo de almacenamiento (medio de grabación) tal como una memoria que almacena el programa y diversos elementos de datos. Además, el objeto de la presente invención también puede conseguirse suministrando unos medios de grabación que hacen que un sistema informático lea códigos de programa (un programa ejecutable, un programa de código intermedio, o un programa fuente) de un programa de control de cada uno de los aparatos que es un software para realizar las funciones descritas anteriormente, a cada aparato, y por parte del sistema informático (o una CPU o una MPU) que leen y ejecutan los códigos de programa grabados en los medios de grabación.
Como medios de grabación, pueden utilizarse, por ejemplo, cintas tales como una cinta magnética o una cinta de cassette, discos que incluyen un disco magnético tal como un disquete (marca registrada) o un disco duro y un disco óptico tal como un CD-ROM, un MO, un MD, un DVD o 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, o circuitos lógicos tales como un dispositivo lógico programable (PLD) y una matriz de puertas programables de campo (FPGA).
Además, cada uno de los aparatos está configurado para conectarse a una red de comunicaciones, y los códigos de programa pueden ser suministrados a la misma a través de la red de comunicaciones. La red de comunicaciones no se limita particularmente mientras los códigos de programa puedan ser transmitidos. Por ejemplo, se puede utilizar Internet, una intranet, una extranet, una LAN, una ISDN, una VAN, una CATV, una red de comunicaciones, una red privada virtual, una red de línea telefónica, una red de comunicaciones móviles y una red de comunicaciones por satélite. Además, unos medios de transmisión que forman la red de comunicaciones no se limitan particularmente a una configuración o tipo específico, siempre y cuando los códigos de programa puedan ser transmitidos. Los medios de transmisión pueden utilizar un medio alámbrico como IEEE1394, un portador de línea eléctrica, una línea de televisión por cable, una línea telefónica o una línea digital asimétrica de suscriptor (ADSL), y un medio inalámbrico como rayos infrarrojos en irDA o control remoto, Bluetooth (marca registrada), IEEE802.11 inalámbrico, Alta Velocidad de Transmisión de Datos (HDR), comunicación de campo cercano (NFC), Alianza de Redes Digitales Vivas (DLNA), una red de estaciones de telefonía móvil, una línea satelital, o una red digital terrestre.
La presente invención puede ser convenientemente utilizada para un dispositivo de decodificación aritmética que decodifica unos datos codificados que son codificados aritméticamente, y un dispositivo de codificación aritmética que genera datos codificados que son codificados aritméticamente.
Lista de signos de referencia
I APARATO DE DECODIFICACIÓN DE IMÁGENES EN MOVIMIENTO (APARATO DE DECODIFICACIÓN DE IMÁGENES)
I I UNIDAD DE DECODIFICACIÓN DE CÓDIGO DE LONGITUD VARIABLE I I I UNIDAD DE DECODIFICACIÓN DE INFORMACIÓN RESIDUAL CUANTIFICADA (DISPOSITIVO DE DECODIFICACIÓN ARITMÉTICA)
120 UNIDAD DE DECODIFICACIÓN DE COEFICIENTES DE TRANSFORMACIÓN (MEDIOS DE DECODIFICACIÓN DE COEFICIENTES DE TRANSFORMACIÓN)
123 UNIDAD DE CONTROL DE DECODIFICACIÓN DE COEFICIENTES (MEDIOS DE DIVISIÓN EN SUB-BLOQUES)
124 UNIDAD DE DECODIFICACIÓN DE INDICADOR DE PRESENCIA/AUSENCIA DE COEFICIENTE EN SUB­ BLOQUE
124a UNIDAD DE DETERMINACIÓN DE TAMAÑO UT
124b UNIDAD DE DERIVACIÓN DE CONTEXTO DE POSICIÓN
124c UNIDAD DE DERIVACIÓN DE CONTEXTO DE PRESENCIA/AUSENCIA DE COEFICIENTE EN SUB­ BLOQUE ADYACENTE (MEDIOS DE DERIVACIÓN DE ÍNDICES DE CONTEXTO, MEDIOS DE DETERMINACIÓN DE COEFICIENTE DE TRANSFORMACIÓN DISTINTO DE CERO, MEDIOS DE DETERMINACIÓN DE PATRÓN, MEDIOS DE DETERMINACIÓN DE DIRECTIVIDAD)
124e UNIDAD DE ESTABLECIMIENTO DE INDICADOR DE PRESENCIA/AUSENCIA DE COEFICIENTE
127 UNIDAD DE DECODIFICACIÓN DE INDICADOR DE PRESENCIA/AUSENCIA DE COEFICIENTE EN SUB­ BLOQUE (MEDIOS DE DECODIFICACIÓN DE INDICADOR DE PRESENCIA/AUSENCIA DE COEFICIENTE EN SUB-BLOQUE)
127a UNIDAD DE DERIVACIÓN DE CONTEXTO
127b UNIDAD DE ALMACENAMIENTO DE INDICADOR DE PRESENCIA/AUSENCIA DE COEFICIENTE EN SUB-BLOQUE
127a UNIDAD DE ESTABLECIMIENTO DE INDICADOR DE PRESENCIA/AUSENCIA DE COEFICIENTE EN SUB­ BLOQUE
130 UNIDAD DE DECODIFICACIÓN DE CÓDIGO ARITMÉTICA
131 UNIDAD DE REGISTRO/ACTUALIZACIÓN DE CONTEXTO
132 UNIDAD DE DECODIFICACIÓN DE BITS
2 APARATO DE CODIFICACIÓN DE IMÁGENES EN MOVIMIENTO (APARATO DE CODIFICACIÓN DE IMÁGENES)
27 UNIDAD DE CODIFICACIÓN DE CÓDIGO DE LONGITUD VARIABLE
271 UNIDAD DE CODIFICACIÓN DE INFORMACIÓN RESIDUAL CUANTIFICADA (DISPOSITIVO DE CODIFICACIÓN ARITMÉTICA)
220 UNIDAD DE CODIFICACIÓN DE COEFICIENTE DE TRANSFORMACIÓN
223 UNIDAD DE CONTROL DE CODIFICACIÓN DE COEFICIENTE (MEDIOS DE DIVISIÓN EN SUB-BLOQUES) 224 UNIDAD DE CODIFICACIÓN DE INDICADOR DE PRESENCIA/AUSENCIA DE COEFICIENTE
224a UNIDAD DE DETERMINACIÓN DE TAMAÑO DE UT
224b UNIDAD DE DERIVACIÓN DE CONTEXTO DE POSICIÓN
224c UNIDAD DE DERIVACIÓN DE CONTEXTO DE INDICADOR DE PRESENCIA/AUSENCIA DE INDICADOR EN SUB-BLOQUE (MEDIOS DE DERIVACIÓN DE ÍNDICE DE CONTEXTO, MEDIOS DE DETERMINACIÓN DE COEFICIENTE DE TRANSFORMACIÓN DISTINTO DE CERO, MEDIOS DE DETERMINACIÓN DE DIRECTIVIDAD)
224e UNIDAD DE ESTABLECIMIENTO DE INDICADOR DE PRESENCIA/AUSENCIA DE COEFICIENTE
227 UNIDAD DE CODIFICACIÓN DE INDICADOR DE PRESENCIA/AUSENCIA DE COEFICIENTE EN SUB­ BLOQUE (MEDIOS DE CODIFICACIÓN DE INDICADOR DE PRESENCIA/AUSENCIA DE COEFICIENTE EN SUB­ BLOQUE)
227a UNIDAD DE DERIVACIÓN DE CONTEXTO
227b UNIDAD DE ALMACENAMIENTO DE INDICADOR DE PRESENCIA/AUSENCIA DE COEFICIENTE EN SUB­ BLOQUE
227c UNIDAD DE ESTABLECIMIENTO DE INDICADOR DE PRESENCIA/AUSENCIA DE COEFICIENTE EN SUB­ BLOQUE
228 UNIDAD DE DERIVACIÓN DE SINTAXIS
230 UNIDAD DE CODIFICACIÓN DE CÓDIGO ARITMÉTICA
231 UNIDAD DE REGISTRO/ACTUALIZACIÓN DE CONTEXTO
232 UNIDAD DE CODIFICACIÓN DE BITS

Claims (5)

REIVINDICACIONES
1. Un dispositivo de decodificación aritmética para decodificar datos codificados de un coeficiente de transformación obtenido realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad, comprendiendo el dispositivo:
una unidad de decodificación de indicador de presencia/ausencia de coeficiente en sub-bloque (127) configurada para decodificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si uno o más coeficientes de transformación distintos de cero se encuentran incluidos en cada uno de una pluralidad de sub­ bloques en los que se divide el dominio de unidad; y
una unidad de derivación de índice de contexto configurada para derivar un índice de contexto a partir de una coordenada horizontal y una coordenada vertical de un coeficiente de transformación objetivo del proceso, en el que el índice de contexto corresponde a un indicador de presencia/ausencia de coeficiente de transformación que indica si el coeficiente de transformación objetivo del proceso es igual o no es igual a 0, en el que
en un caso en el que el indicador de presencia/ausencia de coeficiente en sub-bloque indica que no hay un coeficiente de transformación distinto de cero en cada uno, el sub-bloque adyacente derecho y el sub-bloque adyacente inferior, la unidad de derivación de índice de contexto está configurada para derivar:
(i) un primer índice de contexto en un caso en el que una agregación de una coordenada horizontal y una coordenada vertical que indican una posición del coeficiente de transformación es igual a o menor que un primer valor de umbral,
(ii) un segundo índice de contexto que es menor que el primer índice de contexto en un caso en el que la agregación es mayor que el primer valor de umbral y es igual a o menor que un segundo valor de umbral, y
(iii) un tercer índice de contexto que es menor que el segundo índice de contexto en un caso en el que la agregación es mayor que el primer y el segundo valores de umbral,
en el que
en un caso en el que el indicador de presencia/ausencia de coeficiente en sub-bloque indica un coeficiente de transformación distinto de cero en cada uno, el sub-bloque adyacente derecho y el sub-bloque adyacente inferior, la unidad de derivación de índice de contexto está configurada para tener el primer índice de contexto para todos los coeficientes de transformación del sub-bloque objetivo del proceso.
2. El dispositivo de decodificación aritmética según la reivindicación 1, en el que el primer valor de umbral es igual a 0 y el segundo valor de umbral es igual a 2.
3. Un aparato de decodificación de imágenes que comprende:
el dispositivo de decodificación aritmética según la reivindicación 1;
una unidad de transformación de frecuencia inversa configurada para generar una imagen residual realizando una transformación de frecuencia inversa en un coeficiente de transformación que es decodificado por el dispositivo de decodificación aritmética; y
una unidad de generación de imagen decodificada configurada para generar una imagen decodificada agregando la imagen residual generada por la unidad de transformación de frecuencia inversa y una imagen pronosticada que se pronostica a partir de una imagen decodificada generada.
4. Un dispositivo de codificación aritmética para codificar aritméticamente cada elemento de sintaxis que indica un coeficiente de transformación obtenido realizando una transformación de frecuencia en una imagen objetivo para cada dominio de unidad, comprendiendo el dispositivo:
una unidad de codificación de indicador de presencia/ausencia de coeficiente en sub-bloque (227) configurada para codificar un indicador de presencia/ausencia de coeficiente en sub-bloque que indica si uno o más coeficientes de transformación distintos de cero se encuentran incluidos en cada uno de una pluralidad de sub-bloques en los que se divide el dominio de unidad; y
una unidad de derivación de índice de contexto configurada para derivar un índice de contexto a partir de una coordenada horizontal y una coordenada vertical de un coeficiente de transformación objetivo del proceso, en el que el índice de contexto corresponde a un indicador de presencia/ausencia de coeficiente de transformación que indica si el coeficiente de transformación objetivo del proceso es igual o no es igual a 0, en el que
en un caso en el que el indicador de presencia/ausencia de coeficiente en sub-bloque indica que no hay un coeficiente de transformación distinto de cero en cada uno, el sub-bloque adyacente derecho y el sub-bloque adyacente inferior, la unidad de derivación de índice de contexto está configurada para derivar:
(i) un primer índice de contexto en un caso en el que una agregación de una coordenada horizontal y una coordenada vertical que indican una posición del coeficiente de transformación es igual a o menor que un primer valor de umbral,
(ii) un segundo índice de contexto que es menor que el primer índice de contexto en un caso en el que la agregación es mayor que el primer valor de umbral y es igual a o menor que un segundo valor de umbral, y
(iii) un tercer índice de contexto que es menor que el segundo índice de contexto en un caso en el que la agregación es mayor que el primer y el segundo valores de umbral,
en el que
en un caso en el que el indicador de presencia/ausencia de coeficiente en sub-bloque indica un coeficiente de transformación distinto de cero en cada uno, el sub-bloque adyacente derecho y el sub-bloque adyacente inferior, la unidad de derivación de índice de contexto está configurada para tener el primer índice de contexto para todos los coeficientes de transformación del sub-bloque objetivo del proceso.
5. Un aparato de codificación de imágenes que comprende:
una unidad de generación de coeficiente de transformación configurada para generar un coeficiente de transformación realizando una transformación de frecuencia en una imagen residual entre una imagen objetivo de la codificación y una imagen pronosticada para cada dominio de unidad; y
el dispositivo de codificación aritmética según la reivindicación 4, en el que
el dispositivo de codificación aritmética está configurado para generar datos codificados codificando aritméticamente una sintaxis que es un coeficiente de transformación generado por la unidad de generación de coeficiente de transformación.
ES13796751T 2012-06-01 2013-05-24 Dispositivo de decodificación aritmética, aparato de decodificación de imágenes, dispositivo de codificación aritmética y aparato de codificación de imágenes Active ES2729781T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2012126567 2012-06-01
JP2012178842 2012-08-10
PCT/JP2013/064447 WO2013180023A1 (ja) 2012-06-01 2013-05-24 算術復号装置、画像復号装置、算術符号化装置、および画像符号化装置

Publications (1)

Publication Number Publication Date
ES2729781T3 true ES2729781T3 (es) 2019-11-06

Family

ID=49673219

Family Applications (1)

Application Number Title Priority Date Filing Date
ES13796751T Active ES2729781T3 (es) 2012-06-01 2013-05-24 Dispositivo de decodificación aritmética, aparato de decodificación de imágenes, dispositivo de codificación aritmética y aparato de codificación de imágenes

Country Status (8)

Country Link
US (8) US9538205B2 (es)
EP (1) EP2858353B1 (es)
JP (1) JP6190361B2 (es)
CN (2) CN110365993B (es)
AU (1) AU2013268588B2 (es)
CA (1) CA2873694A1 (es)
ES (1) ES2729781T3 (es)
WO (1) WO2013180023A1 (es)

Families Citing this family (46)

* 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
EP2858353B1 (en) 2012-06-01 2019-03-20 Velos Media International Limited Arithmetic decoding device, image decoding device, arithmetic encoding device, and image encoding device
KR102073399B1 (ko) * 2012-06-22 2020-02-05 벨로스 미디어 인터내셔널 리미티드 화상 부호화 방법, 화상 복호 방법, 화상 부호화 장치, 화상 복호 장치 및 화상 부호화 복호 장치
CA2917419C (en) * 2013-07-24 2020-07-14 Microsoft Technology Licensing, Llc Scanning orders for non-transform coding
CN112929788B (zh) 2014-09-30 2025-01-07 苹果公司 确定扬声器位置变化的方法
BR112017010160B1 (pt) 2014-11-14 2023-05-02 Huawei Technologies Co., Ltd Aparelho e método para gerar uma pluralidade de coeficientes de transformada, método para codificar um quadro, aparelho e método para decodificar um quadro e meio legível por computador
WO2016074746A1 (en) 2014-11-14 2016-05-19 Huawei Technologies Co., Ltd. Systems and methods for mask based processing of a block of a digital image
CN107005702B (zh) 2014-11-14 2020-10-16 华为技术有限公司 用于处理数字图像的块的系统和方法
EP3306930A4 (en) * 2015-09-10 2018-05-02 Samsung Electronics Co., Ltd. Encoding device, decoding device, and encoding and decoding method thereof
US9942548B2 (en) * 2016-02-16 2018-04-10 Google Llc Entropy coding transform partitioning information
JP6881441B2 (ja) * 2016-05-13 2021-06-02 日本電気株式会社 算術符号化装置、算術符号化方法、及び、算術符号化回路
CN117412044A (zh) * 2016-07-13 2024-01-16 韩国电子通信研究院 图像编码/解码方法和装置
EP3270595A1 (en) * 2016-07-15 2018-01-17 Thomson Licensing Method and apparatus for last coefficient coding for adaptive transform based video compression
EP3270594A1 (en) * 2016-07-15 2018-01-17 Thomson Licensing Method and apparatus for advanced cabac context adaptation for last coefficient coding
CN118945345A (zh) 2016-10-04 2024-11-12 有限公司B1影像技术研究所 图像编码/解码方法、介质和传输比特流的方法
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 세종대학교산학협력단 영상의 부호화/복호화 방법 및 장치
CN106991391A (zh) * 2017-03-30 2017-07-28 理光图像技术(上海)有限公司 文档处理装置以及文档处理和识别系统
JP2018182444A (ja) * 2017-04-07 2018-11-15 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法及び画像符号化プログラム、画像復号装置、画像復号方法及び画像復号プログラム
MX2019012293A (es) * 2017-04-13 2020-01-20 Lg Electronics Inc Metodo y dispositivo para codificacion y decodificacion de entropia de señal de video.
WO2018199001A1 (ja) * 2017-04-28 2018-11-01 シャープ株式会社 画像復号装置及び画像符号化装置
US10630974B2 (en) * 2017-05-30 2020-04-21 Google Llc Coding of intra-prediction modes
KR102620410B1 (ko) 2017-08-29 2024-01-03 주식회사 케이티 비디오 신호 처리 방법 및 장치
US10645408B2 (en) * 2017-09-17 2020-05-05 Google Llc Dual deblocking filter thresholds
CN117834921A (zh) * 2018-01-17 2024-04-05 英迪股份有限公司 对视频进行解码或编码的方法和用于发送比特流的方法
US10491914B2 (en) * 2018-03-29 2019-11-26 Tencent America LLC Transform information prediction
EP3562156A1 (en) * 2018-04-27 2019-10-30 InterDigital VC Holdings, Inc. Method and apparatus for adaptive context modeling in video encoding and decoding
KR20250067947A (ko) * 2018-09-02 2025-05-15 엘지전자 주식회사 영상 신호를 처리하기 위한 방법 및 장치
AU2018233042B2 (en) * 2018-09-21 2024-06-13 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding a tree of blocks of video samples
EP3709658B1 (en) * 2018-11-12 2025-03-26 LG Electronics Inc. Method for coding transform coefficient on basis of high frequency zeroing and apparatus therefor
US10798419B2 (en) 2018-11-19 2020-10-06 Sony Corporation Embedded codec circuitry for sub-block based encoding of quantized prediction residual levels
US11463712B2 (en) * 2018-11-21 2022-10-04 Interdigital Vc Holdings, Inc. Residual coding with reduced usage of local neighborhood
CN111435993B (zh) * 2019-01-14 2022-08-26 华为技术有限公司 视频编码器、视频解码器及相应方法
US10666986B1 (en) * 2019-03-08 2020-05-26 Sony Corporation Sub-block based entropy coding for embedded image codec
KR20210145754A (ko) 2019-04-12 2021-12-02 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 행렬 기반 인트라 예측에서의 산출
CN113748676B (zh) 2019-04-16 2024-05-10 北京字节跳动网络技术有限公司 帧内编解码模式下的矩阵推导
CN113728647B (zh) * 2019-05-01 2023-09-05 北京字节跳动网络技术有限公司 基于矩阵的帧内预测的上下文编码
SG11202112517QA (en) 2019-05-22 2021-12-30 Beijing Bytedance Network Technology Co Ltd Matrix-based intra prediction using upsampling
CN114051735B (zh) 2019-05-31 2024-07-05 北京字节跳动网络技术有限公司 基于矩阵的帧内预测中的一步下采样过程
JP2022534320A (ja) 2019-06-05 2022-07-28 北京字節跳動網絡技術有限公司 マトリクスベースイントラ予測のためのコンテキスト決定
CN114450963B (zh) * 2019-09-18 2025-06-20 松下电器(美国)知识产权公司 用于视频编码的系统和方法
CN120529077A (zh) * 2019-09-23 2025-08-22 株式会社Kt 对视频进行解码或编码的方法以及传输压缩的视频数据的装置
KR20260003392A (ko) 2019-10-28 2026-01-06 두인 비전 컴퍼니 리미티드 색상 성분에 기초한 신택스 시그널링 및 파싱
CN113873244B (zh) * 2020-06-30 2023-10-20 华为技术有限公司 一种系数编解码方法和系数编解码装置
CN119339162B (zh) * 2024-12-18 2025-04-04 华东交通大学 一种基于深度神经网络的高铁钢轨表面伤损检测方法
CN120751131B (zh) * 2025-08-19 2025-11-21 中电星原科技有限公司 面向烟雾粉尘灾害环境的可变粒度自适应编码方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1104174A4 (en) * 1998-06-09 2006-08-02 Matsushita Electric Industrial Co Ltd IMAGE CODERS, IMAGE DECODERS, CHARACTERS AND DATA STORAGE MEDIUM
US7724827B2 (en) * 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US7379608B2 (en) * 2003-12-04 2008-05-27 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung, E.V. Arithmetic coding for transforming video and picture data units
CN100531386C (zh) * 2007-06-15 2009-08-19 上海富瀚微电子有限公司 一种上下文自适应二进制算术编码器及其方法
US9648325B2 (en) * 2007-06-30 2017-05-09 Microsoft Technology Licensing, Llc Video decoding implementations for a graphics processing unit
US8265144B2 (en) * 2007-06-30 2012-09-11 Microsoft Corporation Innovations in video decoder implementations
US8254455B2 (en) * 2007-06-30 2012-08-28 Microsoft Corporation Computing collocated macroblock information for direct mode macroblocks
US7777654B2 (en) * 2007-10-16 2010-08-17 Industrial Technology Research Institute System and method for context-based adaptive binary arithematic encoding and decoding
US8138956B2 (en) * 2008-06-02 2012-03-20 Mediatek Inc. CABAC encoder and CABAC encoding method
CN102187583B (zh) * 2008-08-19 2013-09-11 汤姆森特许公司 基于上下文的自适应二进制算术编码(cabac)的视频流兼容性
JP4962476B2 (ja) * 2008-11-28 2012-06-27 ソニー株式会社 算術復号装置
US9100648B2 (en) * 2009-06-07 2015-08-04 Lg Electronics Inc. Method and apparatus for decoding a video signal
CN101771879B (zh) * 2010-01-28 2011-08-17 清华大学 基于cabac的并行归一化编码实现电路及编码方法
WO2011121709A1 (ja) * 2010-03-29 2011-10-06 株式会社東芝 半導体装置
US20130003858A1 (en) * 2011-06-30 2013-01-03 Vivienne Sze Simplified Context Selection For Entropy Coding of Transform Coefficient Syntax Elements
RU2609064C9 (ru) * 2011-12-21 2018-09-21 Сан Пэтент Траст Способ кодирования изображений, способ декодирования изображений, устройство кодирования изображений и устройство декодирования изображений
US9584812B2 (en) 2012-01-20 2017-02-28 Blackberry Limited Methods and devices for context set selection
US9106918B2 (en) * 2012-01-20 2015-08-11 Sony Corporation Coefficient coding harmonization in HEVC
JP5696684B2 (ja) 2012-04-13 2015-04-08 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法、画像符号化プログラム、送信装置、送信方法及び送信プログラム
US9621921B2 (en) * 2012-04-16 2017-04-11 Qualcomm Incorporated Coefficient groups and coefficient coding for coefficient scans
EP2858353B1 (en) 2012-06-01 2019-03-20 Velos Media International Limited Arithmetic decoding device, image decoding device, arithmetic encoding device, and image encoding device

Also Published As

Publication number Publication date
US20220408092A1 (en) 2022-12-22
US20170208330A1 (en) 2017-07-20
AU2013268588A1 (en) 2015-01-15
CN110365993B (zh) 2021-08-06
CA2873694A1 (en) 2013-12-05
US20200045317A1 (en) 2020-02-06
JPWO2013180023A1 (ja) 2016-01-21
CN104350753B (zh) 2019-07-09
US11509898B2 (en) 2022-11-22
US20210044802A1 (en) 2021-02-11
US9794572B2 (en) 2017-10-17
EP2858353A1 (en) 2015-04-08
AU2013268588B2 (en) 2017-03-02
US12126806B2 (en) 2024-10-22
US20230362381A1 (en) 2023-11-09
US9538205B2 (en) 2017-01-03
US10848764B2 (en) 2020-11-24
US9699479B2 (en) 2017-07-04
US20150110199A1 (en) 2015-04-23
CN104350753A (zh) 2015-02-11
EP2858353B1 (en) 2019-03-20
HK1204736A1 (en) 2015-11-27
US20170302934A1 (en) 2017-10-19
US10491900B2 (en) 2019-11-26
US11758140B2 (en) 2023-09-12
CN110365993A (zh) 2019-10-22
JP6190361B2 (ja) 2017-08-30
EP2858353A4 (en) 2016-01-20
WO2013180023A1 (ja) 2013-12-05
US20170078702A1 (en) 2017-03-16

Similar Documents

Publication Publication Date Title
ES2729781T3 (es) Dispositivo de decodificación aritmética, aparato de decodificación de imágenes, dispositivo de codificación aritmética y aparato de codificación de imágenes
JP7241159B2 (ja) 算術復号装置
US12149735B2 (en) Image decoding device, image encoding device, and image decoding method
CN103858430B (zh) 图像解码装置、图像解码方法及图像编码装置
US20180160118A1 (en) Arithmetic decoding device and arithmetic coding device
AU2015264943A1 (en) Image decoding device, image encoding device, and data structure of encoded data
HK40009087A (en) Arithmetic decoding device, image decoding device, arithmetic encoding device, and image encoding device
HK1200255B (zh) 图像解码装置、图像编码装置