BR112014023933B1 - dispositivo de decodificação de imagens, método de decodificação de imagens e dispositivo de recepção - Google Patents
dispositivo de decodificação de imagens, método de decodificação de imagens e dispositivo de recepção Download PDFInfo
- Publication number
- BR112014023933B1 BR112014023933B1 BR112014023933A BR112014023933A BR112014023933B1 BR 112014023933 B1 BR112014023933 B1 BR 112014023933B1 BR 112014023933 A BR112014023933 A BR 112014023933A BR 112014023933 A BR112014023933 A BR 112014023933A BR 112014023933 B1 BR112014023933 B1 BR 112014023933B1
- Authority
- BR
- Brazil
- Prior art keywords
- significant
- sub
- information
- block
- differential
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/40—Tree coding, e.g. quadtree, octree
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/18—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/46—Embedding additional information in the video signal during the compression process
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods 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/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
resumo patente de invenção: "dispositivo de codificação de imagens, método de codificação de imagens, programa de codificação de imagens, dispositivo de transmissão, método de transmissão e programa de transmissão, e dispositivo de decodificação de imagens, método de decodificação de imagens, programa de decodificação de imagens, dispositivo de recepção, método de recepção e programa para recepção". em um dispositivo de codificação de imagens que reparte informações diferenciais entre uma imagem que é um alvo de codificação e uma imagem que é um alvo de previsão em uma pluralidade de sub-blocos e codifica os sub-blocos repartidos em uma sequência predeterminada, um controlador de codificação de informações de sub-bloco significativas (708) e um codificador de cálculos (701) codificam informações de sub-bloco significativas que representam se todos os valores de coeficientes diferenciais que pertencem ao sub-bloco são zero ou não. um controlador de codificação de informações de coeficiente significativas (706) e o codificador de cálculos (701) codificam informações de coeficiente diferencial significativas que representam se o valor de coeficiente diferencial é zero ou não. um controlador de codificação de valores de coeficiente diferenciais (707) e o codificador de cálculo (701) codificam o valor de coeficiente diferencial.
Description
Relatório Descritivo da Patente de Invenção para DISPOSITIVO DE DECODIFICAÇÃO DE IMAGENS, MÉTODO DE DECODIFICAÇÃO DE IMAGENS E DISPOSITIVO DE RECEPÇÃO. CAMPO DA TÉCNICA [001] A presente invenção refere-se a uma tecnologia de codificação e decodificação de imagens e, mais particularmente, a uma tecnologia para a codificação de entropia e decodificação de um sinal residual.
TÉCNICA ANTECEDENTE [002] Em MPEG-4 AVC, que é um padrão internacional de codificação de imagens em movimento, como um sistema de codificação de entropia, a codificação aritmética do tipo que muda de contexto chamada de CABAC é empregada. A CABAC inclui uma pluralidade de variáveis chamadas de contexto que armazena a probabilidade de ocorrência de informações que devem ser codificadas. Um contexto ideal é selecionado dentre informações de codificação próximas e é usado para codificar. Além disso, visto que a probabilidade de ocorrência é atualizada de acordo com um processo de codificação também em cada contexto, a probabilidade de ocorrência de informações de codificação pode ser estimada com alta precisão, através da qual a codificação eficaz pode ser realizada.
LISTA DE CITAÇÕES
LITERATURA DE PATENTE [003] Literatura de Patente 1: JP 2007-300517 A
DESCRIÇÃO DA INVENÇÃO [004] No MPEG-4 AVC, em adição à estimativa da probabilidade de ocorrência de informações de acordo com a troca de um contexto
Petição 870190019449, de 26/02/2019, pág. 4/58
2/77 com base nas informações decodificadas próximas, a probabilidade de ocorrência de acordo com um resultado da decodificação é aprendida. A probabilidade de ocorrência de informações que devem ser codificadas pode ser otimizada para cada contexto, e consequentemente, o aprimoramento da eficácia da codificação é realizado. Entretanto, para todas as informações de coeficiente diferencial significativas contidas no bloco que deve ser processado, é necessário processar sequencialmente o cálculo de índices do contexto e decodificação das informações de coeficiente diferencial significativas, e um tempo de cálculo é exigido.
[005] Na Literatura de Patente 1, uma técnica para diminuir um atraso do processamento em relação à decodificação é revelada através da disposição de um contexto para um elemento de sintaxe que tem uma alta frequência de ocorrência em uma memória que tem um pequeno tempo de atraso de acesso. Entretanto, a técnica revelada na Literatura de Patente 1, não resolve a dependência entre o cálculo do índice do contexto e a decodificação de um elemento de sintaxe, e esses processos não podem ser realizados de uma maneira paralela e não é uma solução essencial para um atraso do processamento.
[006] A presente invenção foi elaborada na consideração de tal situação, e um objetivo da mesma é fornecer uma tecnologia de codificação de imagens, na codificação/decodificação do coeficiente diferencial, realizar um método de cálculo do índice do contexto que tem uma pequena quantidade de cálculos permitindo-se um processo paralelo que tem uma configuração simples e que é apropriado para o processamento em tempo real. Além disso, um outro objetivo da mesma é fornecer uma tecnologia de codificação e decodificação de imagens que tem alta eficácia de codificação através da realização do cálculo de um índice do contexto referente aos coeficientes diferenciais próximos que são apropriados em termos de correlação.
3/77 [007] A fim de resolver o problema, um dispositivo de codificação de imagens de acordo com um aspecto da presente invenção é um que reparte informações diferenciais entre uma imagem que é um alvo de codificação e uma imagem que é um alvo de previsão em uma pluralidade de sub-blocos e codifica os sub-blocos repartidos em uma sequência predeterminada, e o dispositivo de codificação de imagens inclui: um codificador de informações de sub-bloco significativas (708, 701) que codifica informações de sub-bloco significativas que representam se todos os valores de coeficientes diferenciais que pertencem ao sub-bloco são zero ou não; um codificador de informações de coeficiente diferencial significativas (706, 701) que codifica informações de coeficiente diferencial significativas que representam se o valor de coeficiente diferencial é zero ou não; um codificador do valor de coeficiente diferencial (707, 701) que codifica o valor de coeficiente diferencial; e um derivador de contexto (703) que deriva um índice com base nas informações de sub-bloco significativas de um sub-bloco codificado próximo ao sub-bloco que é um alvo de codificação na direção horizontal e as informações de sub-bloco significativas de um sub-bloco codificado próximo na direção vertical e deriva um contexto usado para codificar as informações de coeficiente diferencial significativas do coeficiente diferencial que é um alvo de codificação com base no índice e na posição do coeficiente diferencial que é o alvo de codificação no sub-bloco que é o alvo de codificação.
[008] De acordo com um outro aspecto da presente invenção, é fornecido um método de codificação de imagens. Esse método é um método de codificação de imagens no qual as informações diferenciais entre uma imagem que é um alvo de codificação e uma imagem que é um alvo de previsão são repartidas em uma pluralidade de sub-blocos, e os sub-blocos repartidos são codificados em uma sequência predeterminada, sendo que o método de codificação de imagens inclui: codi
4/77 ficar informações de sub-bloco significativas que representam se todos os valores de coeficientes diferenciais que pertencem ao sub-bloco são zero ou não; codificar informações de coeficiente diferencial significativas que representam se o valor de coeficiente diferencial é zero ou não; codificar o valor de coeficiente diferencial; e derivar um índice com base nas informações de sub-bloco significativas de um sub-bloco codificado próximo ao sub-bloco que é um alvo de codificação na direção horizontal e as informações de sub-bloco significativas de um sub-bloco codificado próximo na direção vertical e derivar um contexto usado para codificar as informações de coeficiente diferencial significativas do coeficiente diferencial que é um alvo de codificação com base no índice e na posição do coeficiente diferencial que é o alvo de codificação no sub-bloco que é o alvo de codificação.
[009] De acordo com um outro aspecto adicional da presente invenção, é fornecido um dispositivo de transmissão. Esse dispositivo é um dispositivo de transmissão que inclui: uma unidade de processamento de pacotes configurada para obter dados de codificação empacotando-se um fluxo de bits que é codificado usando-se um método de codificação de imagens no qual informações diferenciais entre uma imagem que é um alvo de codificação e uma imagem que é um alvo de previsão são repartidas em uma pluralidade de sub-blocos, e os sub-blocos repartidos são codificados em uma sequência predeterminada; e um transmissor configurado para transmitir os dados de codificação empacotados. O método de codificação de imagens inclui: codificar informações de sub-bloco significativas que representam se todos os valores de coeficientes diferenciais que pertencem ao sub-bloco são zero ou não; codificar informações de coeficiente diferencial significativas que representam se o valor de coeficiente diferencial é zero ou não; codificar o valor de coeficiente diferencial; e derivar um índice com base nas informações de sub-bloco significativas de um sub-bloco co
5/77 dificado próximo ao sub-bloco que é um alvo de codificação na direção horizontal e as informações de sub-bloco significativas de um sub-bloco codificado próximo na direção vertical e derivar um contexto usado para codificar as informações de coeficiente diferencial significativas do coeficiente diferencial que é um alvo de codificação com base no índice e na posição do coeficiente diferencial que é o alvo de codificação no sub-bloco que é o alvo de codificação.
[0010] De acordo com um outro aspecto adicional da presente invenção, é fornecido um método de transmissão. Esse método é um método de transmissão que inclui: obter dados de codificação empacotando-se um fluxo de bits que é codificado usando-se um método de codificação de imagens no qual informações diferenciais entre uma imagem que é um alvo de codificação e uma imagem que é um alvo de previsão são repartidas em uma pluralidade de sub-blocos, e os sub-blocos repartidos são codificados em uma sequência predeterminada; e transmitir os dados de codificação empacotados. O método de codificação de imagens descrito acima inclui: codificar informações de sub-bloco significativas que representam se todos os valores de coeficientes diferenciais que pertencem ao sub-bloco são zero ou não; codificar informações de coeficiente diferencial significativas que representam se o valor de coeficiente diferencial é zero ou não; codificar o valor de coeficiente diferencial; e derivar um índice com base nas informações de sub-bloco significativas de um sub-bloco codificado próximo ao sub-bloco que é um alvo de codificação na direção horizontal e as informações de sub-bloco significativas de um sub-bloco codificado próximo na direção vertical e derivar um contexto usado para codificar as informações de coeficiente diferencial significativas do coeficiente diferencial que é um alvo de codificação com base no índice e na posição do coeficiente diferencial que é o alvo de codificação no sub-bloco que é o alvo de codificação.
6/77 [0011] De acordo com um aspecto da presente invenção, é fornecido um dispositivo de decodificação de imagens que decodifica um fluxo de bits no qual informações diferenciais entre uma imagem que é um alvo de decodificação e uma imagem que é um alvo de previsão são repartidas em uma pluralidade de sub-blocos, e os sub-blocos repartidos são codificados em uma sequência predeterminada. O dispositivo de decodificação de imagens inclui: um decodificador de informações de sub-bloco significativas 1008, 1001 configurado para decodificar informações de sub-bloco significativas que representam se todos os valores de coeficientes diferenciais que pertencem ao sub-bloco são zero ou não; um decodificador de informações de coeficiente diferencial significativas 1006, 1001 configurado para decodificar informações de coeficiente diferencial significativas que representam se o valor de coeficiente diferencial é zero ou não; um decodificador de valor de coeficiente diferencial 1007, 1001 configurado para decodificar o valor de coeficiente diferencial; e um derivador de contexto 1003 configurado para derivar um índice com base nas informações de sub-bloco significativas de um sub-bloco decodificado próximo ao sub-bloco que é um alvo de decodificação na direção horizontal e nas informações de sub-bloco significativas de um sub-bloco decodificado próximo na direção vertical e derivar um contexto usado para decodificar as informações de coeficiente diferencial significativas do coeficiente diferencial que é um alvo de decodificação com base no índice e na posição do coeficiente diferencial que é o alvo de decodificação no sub-bloco que é o alvo de decodificação.
[0012] De acordo com um outro aspecto da presente invenção, é fornecido um método de decodificação de imagens. Esse método é um método de decodificação de imagens que decodifica um fluxo de bits no qual informações diferenciais entre uma imagem que é um alvo de decodificação e uma imagem que é um alvo de previsão são repartidas
7/77 em uma pluralidade de sub-blocos, e os sub-blocos repartidos são codificados em uma sequência predeterminada. O método de decodificação de imagens inclui: decodificar informações de sub-bloco significativas que representam se todos os valores de coeficientes diferenciais que pertencem ao sub-bloco são zero ou não; decodificar informações de coeficiente diferencial significativas que representam se o valor de coeficiente diferencial é zero ou não; decodificar o valor de coeficiente diferencial; e derivar um índice com base nas informações de sub-bloco significativas de um sub-bloco decodificado próximo ao sub-bloco que é um alvo de decodificação na direção horizontal e nas informações de sub-bloco significativas de um sub-bloco decodificado próximo na direção vertical e derivar um contexto usado para decodificar as informações de coeficiente diferencial significativas do coeficiente diferencial que é um alvo de decodificação com base no índice e na posição do coeficiente diferencial que é o alvo de decodificação no sub-bloco que é o alvo de decodificação.
[0013] De acordo com outro aspecto adicional da presente invenção, é fornecido um dispositivo de recepção. Esse dispositivo é um dispositivo de recepção que recebe um fluxo de bits no qual uma imagem em movimento é codificada e decodifica o fluxo de bits recebido. O dispositivo de recepção inclui: uma unidade de recepção configurada para receber dados de codificação obtidos empacotando-se um fluxo de bits no qual informações diferenciais entre uma imagem que é um alvo de decodificação e uma imagem que é um alvo de previsão são repartidas em uma pluralidade de sub-blocos, e os sub-blocos repartidos são codificados em uma sequência predeterminada; uma unidade de restauração configurada para restaurar o fluxo de bits realizando-se processamento de pacotes dos dados de codificação empacotados recebidos; um decodificador de informações de sub-bloco significativas 1008, 1001 configurado para decodificar informações de sub-bloco
8/77 significativas que representam se todos os valores de coeficientes diferenciais que pertencem ao sub-bloco são zero ou não a partir do fluxo de bits restaurado; um decodificador de informações de coeficiente diferencial significativas 1006, 1001 configurado para decodificar informações de coeficiente diferencial significativas que representam se o valor de coeficiente diferencial é zero ou não a partir do fluxo de bits restaurado; um decodificador de valor de coeficiente diferencial 1007, 1001 configurado para decodificar o valor de coeficiente diferencial do fluxo de bits restaurado; e um derivador de contexto 1003 configurado para derivar um índice com base nas informações de sub-bloco significativas de um sub-bloco decodificado próximo ao sub-bloco que é um alvo de decodificação na direção horizontal e nas informações de sub-bloco significativas de um sub-bloco decodificado próximo na direção vertical e derivar um contexto usado para decodificar as informações de coeficiente diferencial significativas do coeficiente diferencial que é um alvo de decodificação com base no índice e na posição do coeficiente diferencial que é o alvo de decodificação no sub-bloco que é o alvo de decodificação.
[0014] De acordo com outro aspecto adicional da presente invenção, é fornecido um método de recepção. Esse método é um método de recepção que recebe um fluxo de bits no qual uma imagem em movimento é codificada e que decodifica o fluxo de bits recebido. o método de recepção inclui: receber dados de codificação obtidos empacotando-se um fluxo de bits no qual informações diferenciais entre uma imagem que é um alvo de decodificação e uma imagem que é um alvo de previsão são repartidas em uma pluralidade de sub-blocos, e os sub-blocos repartidos são codificados em uma sequência predeterminada; restaurar o fluxo de bits realizando-se processamento de pacotes dos dados de codificação empacotados recebidos; decodificar informações de sub-bloco significativas que representam se todos os valo
9/77 res de coeficientes diferenciais que pertencem ao sub-bloco são zero ou não a partir do fluxo de bits restaurado; decodificar informações de coeficiente diferencial significativas que representam se o valor de coeficiente diferencial é zero ou não a partir do fluxo de bits restaurado; decodificar o valor de coeficiente diferencial do fluxo de bits restaurado; e derivar um índice com base nas informações de sub-bloco significativas de um sub-bloco decodificado próximo ao sub-bloco que é um alvo de decodificação na direção horizontal e nas informações de sub-bloco significativas de um sub-bloco decodificado próximo na direção vertical e derivar um contexto usado para decodificar as informações de coeficiente diferencial significativas do coeficiente diferencial que é um alvo de decodificação com base no índice e na posição do coeficiente diferencial que é o alvo de decodificação no sub-bloco que é o alvo de decodificação.
[0015] Além disso, uma combinação arbitrária dos elementos constituintes descritos acima ou uma conversão da representação da presente invenção dentre um método, um dispositivo, um sistema, um meio de gravação, um programa de computador, e similares é também válido como um aspecto da presente invenção.
[0016] De acordo com a presente invenção, a codificação de um sinal diferencial que é apropriado para o processamento em tempo real com o uso de uma configuração de circuitos simples pode ser realizada.
BREVE DESCRIÇÃO DOS DESENHOS [0017] A Figura 1 é um fluxograma que ilustra uma sequência de decodificação convencional de coeficientes diferenciais;
[0018] A Figura 2 é um fluxograma que ilustra uma sequência de decodificação convencional de coeficientes diferenciais de sub-bloco; [0019] A Figura 3 é um fluxograma que ilustra uma sequência de decodificação convencional de coeficientes diferenciais significativos;
10/77 [0020] A Figura 4 é um fluxograma que ilustra uma sequência de decodificação convencional de valores de coeficiente diferenciais;
[0021] A Figura 5 é um diagrama de blocos que ilustra a configuração de um dispositivo de codificação de imagens, que é usado para executar um método para codificar coeficientes diferenciais, de acordo com uma modalidade;
[0022] A Figura 6 é um diagrama de blocos que ilustra a configuração de um dispositivo de decodificação de imagens, que é usado para executar um método para decodificar coeficientes diferenciais, de acordo com uma modalidade;
[0023] A Figura 7 é um diagrama que ilustra a sequência de varredura de coeficientes diferenciais de sub-bloco;
[0024] A Figura 8 é um diagrama de blocos que ilustra a configuração detalhada do dispositivo de decodificação de imagens, que é ilustrado na Figura 6, de acordo com um primeiro exemplo;
[0025] A Figura 9 é um diagrama que ilustra a definição de um coeficiente diferencial próximo na sequência de decodificação de coeficientes diferenciais significativos ilustrada na Figura 3;
[0026] A Figura 10 é um diagrama que ilustra a definição de um coeficiente diferencial próximo na sequência de decodificação de coeficientes diferenciais significativos ilustrada na Figura 4;
[0027] A Figura 11 é um diagrama que ilustra a definição de um contexto na sequência de decodificação de coeficientes diferenciais significativos ilustrada na Figura 4;
[0028] A Figura 12 é um diagrama que ilustra uma repartição de sub-bloco dos coeficientes diferenciais;
[0029] A Figura 13 é um fluxograma que ilustra a sequência de decodificação de valores de coeficiente diferenciais de acordo com o primeiro exemplo;
[0030] A Figura 14 é um diagrama que ilustra o tamanho de um
11/77 bloco de codificação;
[0031] A Figura 15 é um diagrama de blocos que ilustra a configuração detalhada do dispositivo de codificação de imagens, que é ilustrado na Figura 5, de acordo com o primeiro exemplo;
[0032] A Figura 16 é um fluxograma que ilustra a sequência de codificação de coeficientes diferenciais de acordo com o primeiro exemplo;
[0033] A Figura 17 é um fluxograma que ilustra a sequência de codificação de coeficientes diferenciais de sub-bloco de acordo com o primeiro exemplo;
[0034] A Figura 18 é um fluxograma que ilustra a sequência de codificação de coeficientes diferenciais significativos de acordo com o primeiro exemplo;
[0035] A Figura 19 é um fluxograma que ilustra a sequência de codificação de valores de coeficiente diferenciais de acordo com o primeiro exemplo;
[0036] A Figura 20 é um diagrama que ilustra a configuração na qual uma posição do sub-bloco é incluída no cálculo do contexto de informações de coeficiente diferencial significativas;
[0037] A Figura 21 é um fluxograma que ilustra a sequência de codificação de coeficientes diferenciais significativos de acordo com um segundo exemplo;
[0038] A Figura 22 é um fluxograma que ilustra a sequência de decodificação de coeficientes diferenciais significativos de acordo com o segundo exemplo;
[0039] A Figura 23 é um diagrama que ilustra a definição de um contexto na sequência de decodificação de coeficientes diferenciais significativos de acordo com o segundo exemplo;
[0040] A Figura 24 é um fluxograma que ilustra a sequência de codificação de coeficientes diferenciais significativos de acordo com um
12/77 terceiro exemplo; e [0041] A Figura 25 é um fluxograma que ilustra a sequência de decodificação de coeficientes diferenciais significativos de acordo com o terceiro exemplo.
MELHOR MODO PARA EXECUTAR A INVENÇÃO [0042] Primeiro, as tecnologias que são a premissa das modalidades da presente invenção serão descritas.
[0043] Uma técnica para associar uma pluralidade de contextos com cada sintaxe de codificação e selecionar um contexto com base na correlação entre elementos de sintaxe pode otimizar a alocação de códigos, e dessa forma, possibilitar a codificação eficaz.
[0044] Como um exemplo de codificação de entropia que troca de contexto, a sequência de decodificação de um coeficiente de transformada ortogonal de quantificação de um sinal diferencial que é codificado ao tamanho de 16 x 16 será descrita com referência a um fluxograma ilustrado na Figura 1. A Figura 12 ilustra um coeficiente de transformada ortogonal de quantificação que deve ser processado. Doravante, o coeficiente de transformada ortogonal de quantificação será denominado como um coeficiente diferencial. Nessa sequência, um coeficiente diferencial de 16 x 16 que deve ser processado é repartido em sub-blocos 401 a 416 que têm, cada um, o tamanho de 4 x 4, e a varredura em unidades de sub-blocos é realizada primeiro.
[0045] Um sub-bloco que deve ser processado é determinado em concordância com a sequência de varredura que deve ser descrita posteriormente (S101). Quando a varredura de todos os sub-blocos estiver completa, o processo de decodificação do coeficiente diferencial termina. A sequência de varredura de sub-blocos é indicada pelo numeral de referência 902 ilustrado na Figura 7. A sequência de varredura de sub-blocos é indicada pelo numeral de referência 902 ilustrado na Figura 7. Nessa sequência, a varredura é iniciada a partir de um
13/77 sub-bloco disposto no lado inferior mais à direita da região do coeficiente diferencial, a varredura de acordo com um padrão do lado inferior direito ao lado superior esquerdo e do lado superior direito ao lado superior esquerdo é realizada, e a varredura é completada em um sub-bloco disposto no lado superior mais à esquerda. O numeral de referência 901 ilustrado na Figura 7 ilustra a sequência de varredura de sub-blocos com o uso de setas. Em um caso no qual a sequência de varredura ilustrada na Figura 7 é aplicada, em todos os sub-blocos que devem ser processados, a varredura de sub-blocos posicionados espacialmente respectivamente no lado direito e no lado inferior está em um estado de completa.
[0046] Em referência novamente ao fluxograma ilustrado na Figura 1, o processo de decodificação de todos os valores de coeficiente diferenciais do sub-bloco que deve ser processado é realizado (S102). Após a decodificação dos valores de coeficiente diferenciais do sub-bloco ser completada, o processo prossegue à etapa S101.
[0047] O processo de decodificação dos valores de coeficiente diferenciais do sub-bloco será descrito em detalhes com referência a um fluxograma ilustrado na Figura 2.
[0048] As informações de sub-bloco significativas são decodificadas (S201). As informações de sub-bloco significativas são um sinalizador de um bit usado para representar a presença de um coeficiente diferencial que tem um valor diferente de 0 em um sub-bloco que deve ser processado. Em um caso no qual as informações de sub-bloco significativas são 1, isso representa que pelo menos um coeficiente diferencial que tem um valor diferente de 0 está presente em um sub-bloco que deve ser processado. Por outro lado, em um caso no qual as informações de sub-bloco significativas são 0, isso representa que todos os coeficientes diferenciais de um sub-bloco que deve ser processado são 0.
14/77 [0049] Subsequentemente, o valor das informações de sub-bloco significativas é determinado (S202). Quando as informações de sub-bloco significativas têm um valor de 0, todos os valores de coeficiente diferenciais do sub-bloco que deve ser processado são estabelecidos em 0 (S209), e o processo de decodificação do valor de coeficiente diferencial de sub-bloco termina.
[0050] Por outro lado, quando as informações de sub-bloco significativas forem 1, o processo de decodificação de todas as informações de coeficiente diferencial significativas do sub-bloco que deve ser processado é realizado (S203). As informações de coeficiente diferencial significativas são um sinalizador de um bit usado para representar que um valor de coeficiente diferencial de uma posição do alvo de processamento não é 0. Em um caso no qual as informações de coeficiente significativas são 1, isso representa que o valor de coeficiente diferencial da posição do alvo de processamento não é 0. Por outro lado, em um caso no qual as informações de coeficiente significativas são 0, isso representa que o valor de coeficiente diferencial da posição do alvo de processamento é 0. A sequência de decodificação das informações de coeficiente diferencial significativas de um sub-bloco será descrita posteriormente em detalhes. Após a decodificação de todas as informações de coeficiente diferencial significativas do sub-bloco ter sido completada, o processo prossegue para a decodificação de valores de coeficiente diferenciais que é realizada na etapa S204.
[0051] Subsequentemente, o processo de decodificação de valores de coeficiente diferenciais é realizado (S204). O processo de decodificação de valores de coeficiente diferenciais será descrito posteriormente em detalhes. Após completar o processo de decodificação de valores de coeficiente diferenciais, o processo prossegue à etapa S101, e a varredura do próximo sub-bloco é realizada.
15/77
SEQUÊNCIA DE PROCESSO DE DECODIFICAÇÃO DE COEFICIENTE DIFERENCIAL SIGNIFICATIVO [0052] A sequência de decodificação das informações de coeficiente diferencial significativas do sub-bloco que é realizada na etapa S203 será descrita com referência a um fluxograma ilustrado na Figura
3.
[0053] Um sub-bloco que deve ser processado é determinado em concordância com uma sequência de varredura predeterminada (S301). A sequência de varredura de coeficientes diferenciais contidos no sub-bloco, semelhante à sequência de varredura do sub-bloco na região do coeficiente diferencial, é tida como seguindo o padrão ilustrado na Figura 7.
[0054] Uma soma de coeficientes diferenciais significativos próximos countCoeff que é a soma dos números de coeficientes diferenciais decodificados, que são próximos à posição do coeficiente diferencial alvo de processamento, que tem valores diferentes de 0 é calculada (S302). A Figura 9 ilustra um exemplo da posição do coeficiente diferencial usada para calcular a soma de coeficientes diferenciais significativos próximos countCoeff. O numeral de referência 202 indica coeficientes diferenciais próximos de um caso em que a posição do alvo de processamento é indicada pelo numeral de referência 201, e o numeral de referência 204 indica coeficientes diferenciais próximos de um caso em que a posição do alvo de processamento é indicada pelo numeral de referência 203. Conforme ilustrado na Figura 9, cinco coeficientes diferenciais que estão localizados respectivamente no lado direito e no lado inferior da posição do coeficiente diferencial alvo de processamento e são próximos à posição do coeficiente diferencial alvo de processamento são determinados como coeficientes diferenciais próximos. Visto que a sequência de varredura de coeficientes diferenciais segue a sequência ilustrada na Figura 7, a decodificação de coeficien
16/77 tes diferenciais que pertencem ao mesmo sub-bloco que o coeficiente diferencial alvo de processamento e estão localizados respectivamente no lado direito e no lado inferior da posição do coeficiente diferencial alvo de processamento é completada. De forma semelhante, a decodificação dos coeficientes diferenciais significativos que pertencem aos sub-blocos localizados respectivamente no lado direito e no lado inferior do sub-bloco ao qual a posição do alvo de processamento pertence é completada. A soma de coeficientes diferenciais próximos countCoeff é uma variável usada para estimar a probabilidade de ocorrência do coeficiente diferencial significativo. Em concordância com as características de uma imagem e as características visuais, como o coeficiente diferencial significativo, 1 pode ser facilmente concentrado na região inferior, e 0 pode ser facilmente concentrado na região superior. Visto que os coeficientes diferenciais significativos têm uma correlação espacial, coeficientes diferenciais próximos à posição do alvo de processamento são determinados como alvos para o cálculo da soma de coeficientes diferenciais próximos countCoeff. Os coeficientes diferenciais próximos que representam o lado de fora da região do coeficiente diferencial são excluídos do cálculo da soma de coeficientes significativos próximos countCoeff.
[0055] Novamente em referência ao fluxograma ilustrado na Figura 3, é determinado se a soma de coeficientes significativos próximos countCoeff é 0 S303. Em um caso no qual a soma de coeficientes significativos próximos countCoeff é 0, um índice do contexto ctxIdx usado para decodificar as informações de coeficiente diferencial significativas é estabelecido em 0 S304, e as informações de coeficiente diferencial significativas são decodificadas através do uso de um contexto que corresponde ao índice do contexto ctxIdx. Então, as informações de coeficiente diferencial significativas são estabelecidas no valor de coeficiente diferencial S308.
17/77 [0056] Em um caso no qual a soma de coeficientes significativos próximos countCoeff não é 0, é determinado se a soma de coeficientes significativos próximos countCoeff é menor ou igual a 2 (S305). Em um caso no qual a soma de coeficientes significativos próximos countCoeff é menor ou igual a 2, o índice do contexto ctxIdx usado para decodificar as informações de coeficiente diferencial significativas é estabelecido em 1 (S306), e as informações de coeficiente diferencial significativas são decodificadas através do uso de um contexto que corresponde ao índice do contexto ctxIdx. Então, as informações de coeficiente diferencial significativas são estabelecidas no valor de coeficiente diferencial S308.
[0057] Em um caso no qual a soma de coeficientes significativos próximos countCoeff não é menor ou igual a 2, em outras palavras, em um caso no qual a soma de coeficientes significativos próximos countCoeff é maior ou igual a 3, o índice do contexto ctxIdx usado para decodificar as informações de coeficiente diferencial significativas é estabelecido em 2 S307, e as informações de coeficiente diferencial significativas são decodificadas através do uso de um contexto que corresponde ao índice do contexto ctxIdx. Então, as informações de coeficiente diferencial significativas são estabelecidas no valor de coeficiente diferencial S308.
[0058] Um contexto é uma variável usada para armazenar a probabilidade de ocorrência de informações que devem ser codificadas, e a designação de uma palavra-código muda com base na probabilidade de ocorrência representada pelo contexto. No exemplo descrito acima, três contextos que codificam o coeficiente diferencial significativo são definidos, e o contexto que decodifica o coeficiente diferencial significativo é determinado com base na magnitude da soma de coeficientes diferenciais significativos próximos. É determinado com antecedência de modo que, para um contexto que corresponde ao índice do contexto
18/77 ctxIdx = 0 em um momento no qual a soma de coeficientes significativos próximos countCoeff é 0, a probabilidade de ocorrência das informações de coeficiente significativas que é 0 é alta, e, para um contexto que corresponde ao índice do contexto ctxIdx = 2 em um momento no qual a soma de coeficientes significativos próximos countCoeff é maior ou igual a 3, a probabilidade de ocorrência das informações de coeficiente significativas que é 1 é alta. Para informações as quais a probabilidade de ocorrência é alta, a quantidade de codificações pode ser diminuída, e consequentemente, com o aumento da precisão da estimativa da probabilidade de ocorrência, a eficácia da codificação pode ser aprimorada.
[0059] Em MPEG-4 AVC, através da realização da troca entre contextos com base em informações decodificadas próximas, em adição à estimativa da probabilidade de ocorrência de informações, a probabilidade de ocorrência de acordo com um resultado da decodificação é aprendida. Assim, a probabilidade de ocorrência de informações que devem ser codificadas para cada contexto pode ser otimizada, através da qual o aprimoramento da eficácia da codificação é realizado.
[0060] Geralmente, em componentes transformados ortogonalmente de uma imagem, as informações podem ser facilmente concentradas na região inferior. Além disso, visto que há uma baixa influência da degradação de um componente da região superior em características visuais, frequentemente, o componente da região superior é quantificado aproximadamente para um uso prático. Consequentemente, as informações de coeficiente significativas tendem a estar concentradas no componente da região inferior. As informações de coeficiente significativas têm uma alta correlação com o coeficiente significativo próximo, e é sensato realizar a troca dentre os contextos com base no número de partes das informações de coeficiente significativas próximo a
19/77 partir do ponto de vista da eficácia da codificação.
PROCESSO DE DECODIFICAÇÃO DO VALOR DE COEFICIENTE DIFERENCIAL [0061] A sequência de decodificação de valores de coeficiente diferenciais do sub-bloco na etapa S204 do fluxograma ilustrado na Figura 2 será descrita com referência a um fluxograma ilustrado na Figura 13.
[0062] Um sub-bloco que deve ser processado é determinado em concordância com uma sequência de varredura predeterminada S501. A sequência de varredura de coeficientes diferenciais contida em um sub-bloco, de forma semelhante à sequência de varredura das informações de coeficiente diferencial significativas, é tida como seguindo o padrão ilustrado na Figura 7. Quando a varredura de todos os coeficientes diferenciais do sub-bloco for completada, o processo de decodificação de valores de coeficiente diferenciais é completado, e o processo prossegue para a sequência S101 de determinação do próximo sub-bloco.
[0063] Subsequentemente, é determinado se o valor de coeficiente diferencial da posição do coeficiente diferencial alvo de processamento é 0 S502 ou não. Em um caso no qual o valor de coeficiente diferencial da posição do coeficiente diferencial alvo de processamento é 0, a decodificação do valor de coeficiente diferencial da posição do coeficiente diferencial alvo de processamento é completada, e o processo prossegue à etapa S501.
[0064] Em um caso no qual o valor de coeficiente diferencial da posição do coeficiente diferencial alvo de processamento é 1, o valor absoluto do coeficiente diferencial da posição do coeficiente diferencial alvo de processamento é decodificado S503. Em um caso no qual essa sequência é realizada, é determinado que o valor de coeficiente diferencial não seja 0, e, como um fluxo de bits, uma palavra-código que
20/77 corresponde a um valor derivado pela subtração de um do valor absoluto do coeficiente diferencial é codificada. Consequentemente, como o valor absoluto do coeficiente diferencial, um valor derivado através da adição de 1 a um valor que é derivado realizando-se decodificação de entropia de uma palavra-código é determinado.
[0065] Subsequentemente, o sinal do coeficiente diferencial da posição do coeficiente diferencial alvo de processamento é decodificado (S504). Um valor de coeficiente diferencial é determinado com base no valor absoluto do coeficiente diferencial e no sinal do coeficiente diferencial.
[0066] Na sequência de codificação das informações de coeficiente diferencial significativas descrita acima, um coeficiente diferencial 201 ilustrado na Figura 9, conforme está representado na sequência de varredura indicada pelo numeral de referência 902 ilustrada na Figura 7, sofre varredura por último no sub-bloco, e a sequência de varredura do mesmo é 16 conforme está indicado pelo numeral de referência 902 ilustrado na Figura 7. Além disso, dentre os coeficientes diferenciais próximos 202 do coeficiente diferencial 201, a sequência de varredura de uma posição próxima ao lado inferior do coeficiente diferencial 201 é 15 e sofre varredura imediatamente antes do coeficiente diferencial 201. Visto que o índice do contexto ctxIdx que é necessário para decodificar as informações de coeficiente diferencial significativas do coeficiente diferencial 201 é calculado com base na soma de coeficientes diferenciais significativos dos coeficientes diferenciais 202, o índice do contexto ctxIdx do coeficiente diferencial 201 não pode ser determinado até que a codificação das informações de coeficiente diferencial significativas do coeficiente diferencial 202 esteja completada. Isso significa que é necessário processar o cálculo do índice do contexto ctxIdx e a codificação das informações de coeficiente diferencial significativas em ordem para todas as informações de coeficiente diferencial significati /77 vas contidas no sub-bloco, e uma diminuição no tempo ou na quantidade de cálculos por processamento paralelo não pode ser obtida. Enquanto isso, a taxa de ocupação do coeficiente diferencial no fluxo de bits é alta, e o processo de cálculo do índice do contexto e o processo de decodificação das informações de coeficiente diferencial significativas têm uma longa duração e uma grande quantidade de cálculos ocupados por todo o processo de decodificação. Em outras palavras, o processo de decodificação das informações de coeficiente significativas é o maior atraso no processo de decodificação em tempo real.
[0067] Na Literatura de Patente 1, uma técnica para diminuir um atraso do processamento em relação a um processo de decodificação através da disposição de um contexto para um elemento de sintaxe que tem uma alta frequência de ocorrência em uma memória que tem um curto tempo de atraso de acesso foi revelada. Entretanto, a técnica revelada na Literatura de Patente 1 não resolve a dependência entre o cálculo de um índice do contexto e a codificação de um elemento de sintaxe e não pode realizar os processos da mesma de uma maneira paralela, através da qual não pode ser uma solução essencial para o atraso do processamento.
[0068] Assim, uma modalidade da presente invenção fornece uma tecnologia de codificação de imagens que, na codificação/decodificação de coeficientes diferenciais, elimina a dependência entre o cálculo de índices do contexto e a codificação/decodificação das informações de coeficiente diferencial significativas, realiza um método para calcular o índice do contexto que pode realizar processos de uma maneira paralela e tem uma pequena quantidade de cálculos, e tem uma configuração de circuitos simples para que seja apropriada para o processamento em tempo real. Além disso, através da realização do cálculo de índices do contexto realizado com referência a coe
22/77 ficientes diferenciais próximos, que é apropriado em termos da correlação, uma tecnologia de codificação de imagens que tem alta eficácia de codificação é fornecida. Doravante, as modalidades da presente invenção serão descritas.
[0069] Na descrição apresentada abaixo, um bloco que deve ser processado é um alvo de codificação bloco no caso de um processo de codificação realizada por um dispositivo de codificação de imagens e é um bloco alvo de decodificação no caso de um processo de decodificação realizado por um dispositivo de decodificação de imagens. Além disso, um bloco processado é um bloco decodificado do qual a codificação foi completada no caso de um processo de codificação realizado pelo dispositivo de codificação de imagens e é um bloco do qual a decodificação foi completada no caso de um processo de decodificação realizado pelo dispositivo de decodificação de imagens. Doravante, tal significado será usado a menos que sinalizado de outra forma.
DISPOSITIVO DE CODIFICAÇÃO [0070] Um dispositivo de codificação de imagens preferencial de acordo com a presente invenção será descrito com referência aos desenhos. A Figura 5 é um diagrama de blocos que ilustra a configuração do dispositivo de codificação de imagens de acordo com uma modalidade. O dispositivo de codificação de imagens de acordo com a modalidade inclui: um subtrator 501; um quantificador/transformador ortogonal 502; um quantificador inverso/transformador inverso 503; um adicionador 504; uma memória de imagens decodificadas 505; um previsor 506; um codificador de informações diferenciais 507; um codificador de informações de previsão 508; e um determinador de modo 509.
[0071] O determinador de modo 509 codifica temporariamente todos os candidatos de previsão e determina informações de previsão
23/77 que forem ideais para cada bloco da imagem. Como as informações de previsão, um tamanho de bloco repartido e um modo de previsão que representa uma interprevisão ou uma intraprevisão. Além disso, em um caso no qual o modo de previsão é a interprevisão, as informações de movimento como um vetor de movimento e um índice de imagem de referência são incluídos nas informações de previsão. Por outro lado, em um caso no qual o modo de previsão é a intraprevisão, um modo de intraprevisão é incluído nas informações de previsão. O determinador de modo 509 cede as informações de previsão determinadas ao previsor 506 e ao codificador de informações de previsão 508.
[0072] O codificador de informações de previsão 508 realiza codificação de comprimento variável das informações de previsão inseridas e emite um fluxo de bits das informações de previsão.
[0073] O previsor 506 gera uma imagem prevista com o uso das informações de previsão inseridas e da imagem decodificada armazenada na memória de imagens decodificadas 505 e cede a imagem prevista gerada ao subtrator 501.
[0074] O subtrator 501 gera uma imagem diferencial através da subtração da imagem prevista da imagem original que é um alvo de codificação e cede o sinal diferencial gerado ao quantificador/transformador ortogonal 502.
[0075] O quantificador/transformador ortogonal 502 gera coeficientes diferenciais realizando-se uma quantificação e transformação ortogonal da imagem diferencial e cede os coeficientes diferenciais gerados ao quantificador inverso/transformador inverso 503 e ao codificador de informações diferenciais 507.
[0076] O codificador de informações diferenciais 507 realiza a codificação de entropia dos coeficientes diferenciais e emite um fluxo de bits das informações diferenciais.
[0077] O quantificador inverso/transformador inverso 503 gera um
24/77 sinal diferencial decodificado através da realização da quantificação inversa e da transformação ortogonal inversa dos coeficientes diferenciais recebidos do quantificador/transformador ortogonal 502 e cede o sinal diferencial decodificado gerado ao adicionador 504.
[0078] O adicionador 504 gera uma imagem decodificada através da adição da imagem prevista e do sinal diferencial decodificado e armazena a imagem decodificada gerada na memória de imagens decodificadas 505.
DISPOSITIVO DE DECODIFICAÇÃO [0079] Um dispositivo de decodificação de imagens preferencial de acordo com a presente invenção será descrito com referência aos desenhos. A Figura 6 é um diagrama de blocos que ilustra a configuração do dispositivo de decodificação de imagens de acordo com uma modalidade. O dispositivo de decodificação de imagens de acordo com a modalidade inclui: um decodificador de informações diferenciais 801; um quantificador inverso/transformador inverso 802; um decodificador de informações de previsão 803; um adicionador 804; uma memória de imagens decodificadas 805; e um previsor 806.
[0080] O processo de decodificação do dispositivo de decodificação de imagens ilustrado na Figura 6 corresponde ao processo de decodificação disposto dentro do dispositivo de codificação de imagens ilustrado na Figura 5. Consequentemente, as configurações do quantificador inverso/transformador inverso 802, do adicionador 804, da memória de imagens decodificadas 805, e do previsor 806 ilustrados na Figura 8 têm funções que correspondem respectivamente às configurações do quantificador inverso/transformador inverso 503, do adicionador 504, da memória de imagens decodificadas 505, e do previsor 506 do dispositivo de codificação de imagens ilustrados na Figura 5.
[0081] O decodificador de informações de previsão 803 gera informações de previsão realizando-se decodificação de entropia de in
25/77 formações de previsão inseridas fluxo de bits e cede as informações de previsão geradas ao previsor 806.
[0082] O previsor 806 gera uma imagem prevista através do uso das informações de previsão inseridas e da imagem decodificada que está armazenada na memória de imagens decodificadas 805 e cede a imagem prevista gerada ao adicionador 804.
[0083] O decodificador de informações diferenciais 801 gera informações diferenciais realizando-se decodificação de entropia das informações diferenciais. Então, o decodificador de informações diferenciais 801 cede as informações diferenciais geradas ao quantificador inverso/transformador inverso 802.
[0084] O quantificador inverso/transformador inverso 802 gera um sinal diferencial decodificado através da realização da quantificação inversa e da transformação ortogonal inversa das informações diferenciais recebidas do decodificador de informações diferenciais 801 e cede o sinal diferencial decodificado gerado ao adicionador 804.
[0085] O adicionador 804 gera uma imagem decodificada através da adição da imagem prevista e do sinal diferencial decodificado juntos, armazena a imagem decodificada gerada na memória de imagens decodificadas 805, e emite a imagem decodificada gerada.
[0086] O processo de codificação e o processo de decodificação de coeficientes diferenciais de acordo com uma modalidade da presente invenção são respectivamente realizados pelo codificador de informações diferenciais 507 do dispositivo de codificação de imagens com movimento ilustrado na Figura 5 e o decodificador de informações diferenciais 801 do dispositivo de decodificação de imagens com movimento ilustrado na Figura 8. Doravante, o processo de codificação e o processo de decodificação das informações diferenciais de acordo com uma modalidade serão descritos em detalhes.
BLOCO DE CODIFICAÇÃO
26/77 [0087] De acordo com a modalidade, conforme ilustrado na Figura 14, a tela é repartida hierarquicamente em blocos retangulares, e os blocos são processados em ordem de acordo com uma sequência de processamento predeterminada. Cada bloco que for repartido será denominado como um bloco de codificação. Um bloco 1817 ilustrado na Figura 14 é uma unidade máxima da repartição de acordo com a modalidade e será denominado como um bloco de codificação máximo. Além disso, um bloco 1816 ilustrado na Figura 14 é uma unidade mínima da repartição de acordo com a modalidade e será denominado como um bloco de codificação mínimo. Doravante, o bloco de codificação mínimo será descrito como um bloco de 4 x 4 pixels e o bloco de codificação máximo será descrito como um bloco de 16 x 16 pixels. BLOCO DE PREVISÃO [0088] Dentre os blocos de codificação, uma unidade na qual a intraprevisão é realizada será denominada como um bloco de previsão. O bloco de previsão tem diversos tamanhos, conforme abaixo, que são maiores ou iguais aos do bloco de codificação mínimo e são menores ou iguais aos do bloco de codificação máximo. Na Figura 14, os blocos 1802, 1803, e 1804 são blocos 16 x 16, os blocos 1805, 1810, 1811, e 1801 são blocos 8 x 8, e os blocos 1806, 1807, 1808, e 1809 são blocos 4 x 4. Os blocos 1812, 1813, 1814, e 1815 são blocos que não foram processados, e os tamanhos de bloco de codificação dos mesmos não são determinados. Na sequência de codificação, um tamanho de bloco de previsão ideal é determinado, e os blocos do tamanho de bloco de previsão são codificados. Na sequência de codificação, o tamanho de bloco de previsão é derivado do fluxo de bits. Doravante, a descrição será apresentada com o bloco de previsão sendo interpretado como a unidade de processamento.
UNIDADE DE PROCESSAMENTO DE COEFICIENTE DIFERENCIAL [0089] Enquanto a unidade na qual a quantificação e a transfor
27/77 mação ortogonal são realizadas é a mesma que a unidade do bloco de previsão, no processo de codificação e no processo de decodificação, a varredura é realizada com a região do coeficiente diferencial repartida dentro de uma pluralidade de sub-blocos. O tamanho do sub-bloco é um tamanho de 4 x 4. A Figura 12 ilustra uma região de coeficiente diferencial com um tamanho de 16 x 16. Aqui, os numerais de referência 401 a 416 representam sub-blocos. Entretanto, a unidade na qual a quantificação e a transformação ortogonal são realizadas pode ser determinada independentemente da unidade do bloco de previsão. PRIMEIRO EXEMPLO SEQUÊNCIA DE CODIFICAÇÃO [0090] Um primeiro exemplo do método de codificar as informações diferenciais de acordo com uma modalidade da presente invenção será agora descrito. A Figura 15 é um diagrama de blocos que ilustra a configuração detalhada do codificador de informações diferenciais 507, que é ilustrado na Figura 5, de acordo com o primeiro exemplo. O codificador de informações diferenciais 507 de acordo com o primeiro exemplo inclui: um codificador aritmético 701; um armazenamento de coeficientes diferenciais 702; um controlador de codificação 703; uma memória de contexto 704; e um controlador de varredura 705. Além disso, o controlador de codificação 703 inclui: um controlador de codificação de informações de coeficiente significativas 706; um controlador de codificação de valores de coeficiente diferenciais 707; e um controlador de codificação de informações de sub-bloco significativas 708.
[0091] Doravante, a sequência de codificação de coeficientes diferenciais será descrita com referência aos fluxogramas ilustrados nas Figuras 16, 17, 18 e 19.
[0092] O controlador de varredura 705 determina um sub-bloco que deve ser processado (S601). Quando a varredura de todos os
28/77 sub-blocos estiver completa, o processo de decodificação de coeficientes diferenciais termina. O numeral de referência 902 representado na Figura 7 ilustra a sequência de varredura de sub-blocos. Nessa sequência, a varredura é iniciada a partir de um sub-bloco disposto no lado inferior mais à direita da região do coeficiente diferencial, a varredura de acordo com um padrão do lado inferior direito ao lado superior esquerdo e do lado superior direito ao lado superior esquerdo é realizada, e a varredura é completada em um sub-bloco disposto no lado superior mais à esquerda. Conforme descrito acima, o contexto é atualizado em concordância com o processo de codificação. Obtendo-se essa sequência de varredura, um componente da região inferior na qual um coeficiente diferencial pode ocorrer facilmente sofre varredura depois de um componente da região superior, e, consequentemente, há uma vantagem no processo de que a precisão estimada da probabilidade de ocorrência de um coeficiente diferencial do componente da região inferior é aprimorada. O numeral de referência 901 ilustrado na Figura 7 é um diagrama que ilustra a sequência de varredura de sub-blocos com o uso de setas. Em um caso no qual a sequência de varredura ilustrada na Figura 7 é aplicada, a varredura de sub-blocos posicionados espacialmente respectivamente no lado direito e no lado inferior do sub-bloco que deve ser processado está em um estado de completa. O processo de codificação do sub-bloco que deve ser processado é realizado (S602).
SEQUÊNCIA DE CODIFICAÇÃO DE SUB-BLOCO (S602) [0093] O controlador de codificação de informações de sub-bloco significativas 708 deriva um sub-bloco que deve ser processado a partir do armazenamento de coeficientes diferenciais 702. Todos os coeficientes diferenciais do sub-bloco sofrem varredura, e, em um caso no qual todos os valores de coeficiente diferenciais são 0, as informações de sub-bloco significativas são estabelecidas em 0. De outra
29/77 forma (em um caso no qual há pelo menos um valor de coeficiente diferencial diferente de 0), as informações de sub-bloco significativas são estabelecidas em 1 (S701).
[0094] O controlador de codificação de informações de sub-bloco significativas 708 refere-se a coeficientes diferenciais que são próximos ao sub-bloco que deve ser processado e são incluídos no sub-bloco que foi decodificado a partir do armazenamento de coeficientes diferenciais 702 e determina um índice do contexto ctxIdx usado para codificar as informações de sub-bloco significativas. Então, o controlador de codificação de informações de sub-bloco significativas 708 lê um contexto que corresponde ao índice do contexto ctxIdx a partir da memória de contexto 704. Então, as informações de sub-bloco significativas e o contexto são transmitidas para o codificador aritmético 701. Então, o codificador aritmético 701 codifica as informações de sub-bloco significativas com o uso do contexto (S702).
[0095] O controlador de codificação de informações de sub-bloco significativas 708 determina o valor das informações de sub-bloco significativas (S703). Quando as informações de sub-bloco significativas forem 0, o processo de codificação do valor de coeficiente diferencial de sub-bloco termina, e o processo prossegue à etapa S601.
[0096] Quando as informações de sub-bloco significativas forem 1, o processo de codificação de todas as informações de coeficiente diferencial significativas do sub-bloco que deve ser processado é realizado (S704). A sequência de codificação das informações de coeficiente diferencial significativas será descrita posteriormente em detalhes. Após a codificação de todas as informações de coeficiente diferencial significativas do sub-bloco terminar, o processo prossegue à codificação de valores de coeficiente diferenciais da etapa S704.
[0097] O controlador de codificação de valores de coeficiente diferenciais 707 realiza o processo de codificação de todos os valores de
30/77 coeficiente diferenciais do sub-bloco que deve ser processado (S705). A sequência de codificação de valores de coeficiente diferenciais do sub-bloco será descrita posteriormente em detalhes. Após a codificação de todos os valores de coeficiente diferenciais do sub-bloco ser completada, o processo prossegue à etapa S601.
SEQUÊNCIA DE PROCESSO DE CODIFICAÇÃO DE INFORMAÇÕES DE COEFICIENTE DIFERENCIAL SIGNIFICATIVAS (S704) [0098] O controlador de codificação de informações de coeficiente significativas 706 calcula uma soma de coeficientes diferenciais, que têm valores diferentes de 0, próximos ao sub-bloco que deve ser processado, em outras palavras, uma soma de coeficientes significativos próximos countCoeff (S801). Nessa sequência, os coeficientes diferenciais que pertencem a sub-blocos dispostos espacialmente respectivamente no lado direito e no lado inferior do sub-bloco que deve ser processado, e são próximos ao sub-bloco que deve ser processado, são definidos como coeficientes diferenciais próximos.
[0099] A Figura 10 ilustra as posições dos coeficientes diferenciais próximos. O numeral de referência 301 representa um sub-bloco que deve ser processado, e o numeral de referência 302 representa os coeficientes diferenciais próximos. Um coeficiente diferencial próximo que representa o lado de fora da região do coeficiente diferencial é excluído do cálculo da soma de coeficientes significativos próximos countCoeff. Um coeficiente diferencial 303 que pertence a ambos os sub-blocos dispostos no lado direito e no lado esquerdo do sub-bloco que deve ser processado pode ser configurado para ser incluído nos coeficientes diferenciais próximos ou pode ser configurado para não ser incluído nos mesmos. Na configuração na qual o coeficiente diferencial 303 é incluído nos coeficientes diferenciais próximos, o número dos coeficientes diferenciais próximos aumenta, e a probabilidade de ocorrência das informações de coeficiente diferencial significativas pode ser esti
31/77 mada com alta precisão. Por outro lado, na configuração na qual o coeficiente diferencial 303 não é incluído nos coeficientes diferenciais próximos, a quantidade de cálculos e a escala do circuito pode ser diminuída através da redução do processo de adição em relação à soma de coeficientes significativos próximos countCoeff, e redução do processo de determinação de limiares da região do coeficiente diferencial. [00100] O controlador de codificação de informações de coeficiente significativas 706 determina coeficientes diferenciais que são os alvos de processamento (S802). A sequência de varredura de coeficientes diferenciais contidos no sub-bloco, de forma semelhante à sequência de varredura de sub-blocos na região do coeficiente diferencial, segue o padrão representado na Figura 7. Quando a varredura de todos os coeficientes diferenciais significativos do sub-bloco estiver completada, o processo de codificação dos coeficientes diferenciais significativos é completado, e o processo prossegue para a sequência de codificação (S704) de valores de coeficiente diferenciais.
[00101] O controlador de codificação de informações de coeficiente significativas 706 determina se a soma de coeficientes significativos próximos countCoeff é 0 (S803) ou não.
[00102] Em um caso no qual a soma de coeficientes significativos próximos countCoeff é 0, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S804). Aqui, é representado de modo que uma posição de coeficiente diferencial horizontal seja posX, uma posição de coeficiente diferencial vertical seja posY, e a posição do coeficiente diferencial alvo de processamento seja pos = posX + posY. Em um caso no qual a pos <= 2, um índice do contexto ctxIdx usado para codificar as informações de coeficiente significativas é estabelecido em 1 (S805). De outra maneira (pos > 2), o índice do contexto ctxIdx é estabelecido em 0 (S806). A definição do índice do contexto ctxIdx de um caso em que
32/77 countCoeff = 0 é indicada pelo numeral de referência 601 na Figura 11. [00103] Quando a soma de coeficientes significativos próximos countCoeff não for 0, é determinado se a soma de coeficientes significativos próximos countCoeff é menor ou igual a 1 (S807) ou não. Em um caso no qual a soma de coeficientes significativos próximos countCoeff é menor ou igual a 1, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S408). Em um caso no qual a posição do coeficiente diferencial alvo de processamento é pos <= 3, o índice do contexto ctxIdx usado para decodificar as informações de coeficiente significativas é estabelecido em 1 (S809). De outra maneira (pos > 3), o índice do contexto ctxIdx é estabelecido em 0 (S810). A definição do índice do contexto ctxIdx de um caso em que countCoeff = 1 é indicada pelo numeral de referência 602 na Figura 11.
[00104] Quando a soma de coeficientes significativos próximos countCoeff não for menor ou igual a 1, é determinado se a soma de coeficientes significativos próximos countCoeff é menor que 2 (S811) ou não. Em um caso no qual a soma de coeficientes significativos próximos countCoeff é menor ou igual a 2, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S812). Em um caso no qual a posição do coeficiente diferencial alvo de processamento é pos <= 2, o índice do contexto ctxIdx usado para decodificar as informações de coeficiente significativas é estabelecido em 2 (S813). De outra maneira (pos > 2), o índice do contexto ctxIdx é estabelecido em 1 (S814). A definição do índice do contexto ctxIdx de um caso em que a soma de coeficientes significativos próximos countCoeff = 2 é indicada pelo numeral de referência 603 na Figura 11.
[00105] Quando a soma de coeficientes significativos próximos countCoeff não for menor ou igual a 2, o índice do contexto ctxIdx
33/77 usado para decodificar as informações de coeficiente significativas é estabelecido em 2 (S815). A definição do índice do contexto ctxIdx de um caso em que a soma de coeficientes significativos próximos countCoeff > 2 é indicada pelo numeral de referência 605 na Figura 11. [00106] O controlador de codificação de informações de coeficiente significativas 706 deriva o coeficiente diferencial da posição do alvo de processamento a partir do armazenamento de coeficientes diferenciais 702. Em um caso no qual o valor de coeficiente diferencial não é 0, as informações de coeficiente diferencial significativas são estabelecidas em 1. De outra maneira (em um caso no qual o valor de coeficiente diferencial é 0), as informações de coeficiente diferencial significativas são estabelecidas em 0 (S816).
[00107] Após um contexto que corresponde ao índice do contexto ctxIdx determinado ser lido a partir da memória de contexto 704, o controlador de codificação de informações de coeficiente significativas 706 transmite as informações de coeficiente diferencial significativas e o contexto para o codificador aritmético 701. O codificador aritmético 701 codifica as informações de coeficiente diferencial significativas com o uso do contexto (S817).
PROCESSO DE CODIFICAÇÃO DO VALOR DE COEFICIENTE DIFERENCIAL (S705) [00108] O controlador de codificação de valores de coeficiente diferenciais 707 determina um coeficiente diferencial que é o alvo do processamento (S901). A sequência de varredura de coeficientes diferenciais contidos em um sub-bloco, de forma semelhante à sequência de varredura dos coeficientes diferenciais significativos, é tida como seguindo o padrão ilustrado na Figura 7. Quando a varredura de todos os coeficientes diferenciais do sub-bloco for completada, o processo de codificação de valores de coeficiente diferenciais é completado, e o processo prossegue para a sequência (S601) de determinação do pró
34/77 ximo sub-bloco.
[00109] O controlador de codificação de valores de coeficiente diferenciais 707 determina se o valor de coeficiente diferencial da posição do coeficiente diferencial alvo de processamento é 0 (S902) ou não. Em um caso no qual o valor de coeficiente diferencial da posição do coeficiente diferencial alvo de processamento é 0, a codificação do valor de coeficiente diferencial da posição do coeficiente diferencial alvo de processamento é completada, e o processo prossegue à etapa S901.
[00110] Em um caso no qual o valor de coeficiente diferencial da posição do coeficiente diferencial alvo de processamento é diferente de 0, o valor absoluto do coeficiente diferencial codificado da posição do coeficiente diferencial alvo de processamento e o sinal são calculados (S903 e S904). Quando essa sequência é realizada, o valor de coeficiente diferencial é determinado para não ser 0. Consequentemente, o valor absoluto do coeficiente diferencial codificado é estabelecido como um valor derivado pela subtração de um do valor absoluto do coeficiente diferencial. Além disso, em um caso no qual o coeficiente diferencial é positivo, o sinal é estabelecido em 0. Por outro lado, em um caso no qual o coeficiente diferencial é negativo, o sinal é estabelecido em 1.
[00111] Após o contexto ser lido a partir da memória de contexto 704, o controlador de codificação de valores de coeficiente diferenciais 707 transmite um valor absoluto de codificação e o contexto para o codificador aritmético 701. O codificador aritmético 701 codifica o valor absoluto de codificação com o uso do contexto (S905).
[00112] Após o contexto ser lido a partir da memória de contexto 704, o controlador de codificação de valores de coeficiente diferenciais 707 transmite um sinal e o contexto para o codificador aritmético 701. O codificador aritmético 701 codifica o valor absoluto de codificação com
35/77 o uso do contexto (S905).
SEQUÊNCIA DE DECODIFICAÇÃO [00113] Um método para decodificar coeficientes diferenciais de acordo com um primeiro exemplo da modalidade da presente invenção será descrito. A Figura 8 é um diagrama de blocos que ilustra a configuração detalhada do decodificador de informações diferenciais 801, que é ilustrado na Figura 6, de acordo com o primeiro exemplo. O decodificador de informações diferenciais 801 de acordo com o primeiro exemplo inclui: um decodificador aritmético 1001; um armazenamento de coeficientes diferenciais 1002; um controlador de decodificação 1003; uma memória de contexto 1004; e um controlador de varredura 1005. Além disso, o controlador de codificação 1003 inclui: um controlador de decodificação de informações de coeficiente significativas 1006; um controlador de decodificação de valores de coeficiente diferenciais 1007; e um controlador de decodificação de informações de sub-bloco significativas 1008.
[00114] Visto que o processo de decodificação das informações diferenciais realizado pelo decodificador de informações diferenciais 801 ilustrado na Figura 8 corresponde ao processo de codificação das informações diferenciais realizado pelo codificador de informações diferenciais 507 ilustrado na Figura 5, as configurações do armazenamento de coeficientes diferenciais 1002, a memória de contexto 1004 e o controlador de varredura 1005 do codificador de informações diferenciais ilustrados na Figura 8 têm, respectivamente, funções que correspondem às configurações do armazenamento de coeficientes diferenciais 702, à memória de contexto 704, e ao controlador de varredura 705 ilustrados na Figura 15.
[00115] Doravante, a sequência de codificação das informações diferenciais será descrita com referência aos fluxogramas ilustrados nas Figuras 1, 2, 4 e 13.
36/77 [00116] O controlador de varredura 1005 determina um sub-bloco que deve ser processado (S101). Quando a varredura de todos os sub-blocos estiver completa, o processo de decodificação de coeficientes diferenciais termina. O numeral de referência 902 representado na Figura 7 ilustra a sequência de varredura de sub-blocos. Nessa sequência, a varredura é iniciada a partir de um sub-bloco disposto no lado inferior mais à direita da região do coeficiente diferencial, sendo que a varredura de acordo com um padrão do lado inferior direito ao lado superior esquerdo e do lado superior direito ao lado superior esquerdo é realizada, e a varredura é completada em um sub-bloco disposto no lado superior mais à esquerda. O numeral de referência 901 representado na Figura 7 ilustra a sequência de varredura de sub-blocos com o uso de setas. Em um caso no qual a sequência de varredura ilustrada na Figura 7 é aplicada, a varredura de sub-blocos posicionados espacialmente respectivamente no lado direito e no lado inferior do sub-bloco que deve ser processado está em um estado de completa. O processo de decodificação do sub-bloco que deve ser processado é realizado (S102).
DECODIFICAÇÃO DE SUB-BLOCO (S102) [00117] O controlador de decodificação de informações de sub-bloco significativas 1008 refere-se a coeficientes diferenciais que são próximos ao sub-bloco que deve ser processado e são incluídos no sub-bloco que foi decodificado a partir do armazenamento de coeficientes diferenciais 1002, determina um contexto usado para decodificar as informações de sub-bloco significativas, e lê o contexto determinado a partir da memória de contexto 1004. O controlador de decodificação de informações de sub-bloco significativas 1008 transmite um comando de decodificação junto com o contexto para o decodificador aritmético 1001. O decodificador aritmético 1001 realiza o processo de decodificação de um fluxo de bits através do uso do contexto, que decodifica
37/77 dessa forma as informações de sub-bloco significativas (S201).
[00118] O controlador de decodificação de informações de sub-bloco significativas 1008 determina o valor das informações de sub-bloco significativas (S202). Quando as informações de sub-bloco significativas forem 0, todos os valores de coeficiente diferenciais do sub-bloco alvo do processamento armazenado no armazenamento de coeficientes diferenciais 1002 são estabelecidos em 0 (S209), e o processo de decodificação de valores de coeficiente diferenciais do sub-bloco termina.
[00119] Quando as informações de sub-bloco significativas forem 1, o processo de decodificação de todas as informações de coeficiente diferencial significativas do sub-bloco que deve ser processado é realizado (S203). A sequência de decodificação das informações de coeficiente diferencial significativas de um sub-bloco será descrita posteriormente em detalhes. Após a codificação de todas as informações de coeficiente diferencial significativas do sub-bloco ser completada, o processo prossegue para a decodificação de valores de coeficiente diferenciais da etapa S204.
[00120] Subsequentemente, o processo de decodificação de todos os valores de coeficiente diferenciais do sub-bloco que deve ser processado é realizado (S204). A sequência da codificação dos valores de coeficiente diferenciais do sub-bloco será descrita posteriormente em detalhes. Após a codificação de todos os valores de coeficiente diferenciais do sub-bloco ser completada, o processo prossegue à etapa S101.
SEQUÊNCIA DE PROCESSO DE DECODIFICAÇÃO DE INFORMAÇÕES DE COEFICIENTE DIFERENCIAL SIGNIFICATIVAS (S203) [00121] O controlador de decodificação de informações de coeficiente significativas 1006 calcula uma soma countCoeff do número dos coeficientes diferenciais próximos significativos da posição do coefici
38/77 ente diferencial alvo de processamento (S401). Nessa sequência, os coeficientes diferenciais que pertencem a sub-blocos dispostos espacialmente respectivamente no lado direito e no lado inferior do sub-bloco que deve ser processado, e são próximos ao sub-bloco que deve ser processado, são definidos como coeficientes diferenciais próximos.
[00122] A Figura 10 ilustra as posições dos coeficientes diferenciais próximos. O numeral de referência 301 representa um sub-bloco que deve ser processado, e o numeral de referência 302 representa os coeficientes diferenciais próximos. Um coeficiente diferencial próximo que representa o lado de fora da região do coeficiente diferencial é excluído do cálculo da soma de coeficientes significativos próximos countCoeff. Um coeficiente diferencial 303 que pertence a ambos os sub-blocos dispostos no lado direito e no lado inferior do sub-bloco que deve ser processado pode ser configurado para ser incluído nos coeficientes diferenciais próximos ou pode ser configurado para não ser incluído nos mesmos. Na configuração na qual o coeficiente diferencial 303 é incluído nos coeficientes diferenciais próximos, o número dos coeficientes diferenciais próximos aumenta, e a probabilidade de ocorrência das informações de coeficiente diferencial significativas pode ser estimada com alta precisão. Por outro lado, na configuração na qual o coeficiente diferencial 303 não é incluído nos coeficientes diferenciais próximos, a quantidade de cálculos e a escala do circuito pode ser diminuída através da redução do processo de adição em relação à soma de coeficientes significativos próximos countCoeff, e redução do processo de determinação de limiares da região do coeficiente diferencial.
[00123] O controlador de decodificação de informações de coeficiente significativas 1006 determina coeficientes diferenciais que são os alvos de processamento (S402). A sequência de varredura de coeficientes diferenciais contidos no sub-bloco, de forma semelhante à se
39/77 quência de varredura de sub-blocos na região do coeficiente diferencial, segue o padrão representado na Figura 7. Quando a varredura de todos os coeficientes diferenciais significativos do sub-bloco estiver completada, o processo de decodificação dos coeficientes diferenciais significativos é completado, e o processo prossegue para a sequência de codificação (S204) de valores de coeficiente diferenciais.
[00124] O controlador de decodificação de informações de coeficiente significativas 1006 determina se a soma de coeficientes significativos próximos countCoeff é 0 (S403) ou não. Em um caso no qual a soma de coeficientes significativos próximos countCoeff é 0, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S404). Aqui, é representado de modo que uma posição de coeficiente diferencial horizontal seja posX, uma posição de coeficiente diferencial vertical seja posY, e a posição do coeficiente diferencial alvo de processamento seja pos = posX + posY. Em um caso no qual pos <= 2, um índice do contexto ctxIdx usado para decodificar as informações de coeficiente significativas é estabelecido em 1 (S405). De outra maneira (pos > 2), o índice do contexto ctxIdx é estabelecido em 0 (S406). A definição do índice do contexto ctxIdx de um caso em que countCoeff = 0 é indicada pelo numeral de referência 601 na Figura 11. Após o contexto determinado ser lido a partir da memória de contexto 1004, um comando de decodificação é transmitido para o decodificador aritmético 1001 junto com o contexto. O decodificador aritmético 1001 realiza um processo de decodificação de um fluxo de bits com o uso do contexto, que codifica dessa forma as informações de coeficiente diferencial significativas (S416).
[00125] Quando a soma de coeficientes significativos próximos countCoeff não for 0, é determinado se a soma de coeficientes significativos próximos countCoeff é menor ou igual a 1 (S407) ou não. Em
40/77 um caso no qual a soma de coeficientes significativos próximos countCoeff é menor ou igual a 1, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S408). Em um caso no qual a posição do coeficiente diferencial alvo de processamento é pos <= 3, o índice do contexto ctxIdx usado para decodificar as informações de coeficiente significativas é estabelecido em 1 (S409). De outra maneira (pos > 3), o índice do contexto ctxIdx é estabelecido em 0 (S410). O índice do contexto ctxIdx de um caso em que countCoeff = 1 é indicado pelo numeral de referência 602 na Figura 11. Após o contexto determinado ser lido a partir da memória de contexto 1004, um comando de decodificação é transmitido para o decodificador aritmético 1001 junto com o contexto. O decodificador aritmético 1001 realiza um processo de decodificação de um fluxo de bits com o uso do contexto, que codifica dessa forma as informações de coeficiente diferencial significativas (S416).
[00126] Quando a soma de coeficientes significativos próximos countCoeff não for menor ou igual a 1, é determinado se a soma de coeficientes significativos próximos countCoeff é menor ou igual a 2 (S411) ou não. Em um caso no qual a soma de coeficientes significativos próximos countCoeff é menor ou igual a 2, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S412). Em um caso no qual a posição do coeficiente diferencial alvo de processamento é pos <= 2, o índice do contexto ctxIdx usado para decodificar as informações de coeficiente significativas é estabelecido em 2 (S413). De outra maneira (pos > 2), o índice do contexto ctxIdx é estabelecido em 1 (S414). A definição do índice do contexto ctxIdx de um caso em que a soma de coeficientes significativos próximos countCoeff = 2 é indicada pelo numeral de referência 603 na Figura 11. Após o contexto determinado ser lido a partir da memória de contexto 1004, um comando de /77 decodificação é transmitido para o decodificador aritmético 1001 junto com o contexto. O decodificador aritmético 1001 realiza um processo de decodificação de um fluxo de bits com o uso do contexto, que codifica dessa forma as informações de coeficiente diferencial significativas (S416).
[00127] Quando a soma de coeficientes significativos próximos countCoeff não for menor ou igual a 2, o índice do contexto ctxIdx usado para decodificar as informações de coeficiente significativas é estabelecido em 2 (S415). A definição do índice do contexto ctxIdx de um caso em que a soma de coeficientes significativos próximos countCoeff > 2 é indicada pelo numeral de referência 605 na Figura 11. Após o contexto determinado ser lido a partir da memória de contexto 1004, um comando de decodificação é transmitido para o decodificador aritmético 1001 junto com o contexto. O decodificador aritmético 1001 realiza um processo de decodificação de um fluxo de bits com o uso do contexto, que codifica dessa forma as informações de coeficiente diferencial significativas (S416).
[00128] Quando a soma de coeficientes significativos próximos countCoeff for grande, há uma alta possibilidade de que todas as informações de coeficiente significativas contidas no sub-bloco que deve ser processado sejam 1. Consequentemente, na sequência descrita acima, em um caso no qual a soma de coeficientes significativos próximos countCoeff é maior ou igual a 3, o índice do contexto ctxIdx é estabelecido em 2 independentemente do valor da posição do coeficiente diferencial alvo de processamento pos. Além disso, o critério de determinação para a soma de coeficientes significativos próximos countCoeff pode ser subdividido. Por exemplo, em um caso no qual o coeficiente significativo próximo countCoeff é maior ou igual a 3, quando a soma de coeficientes significativos próximos countCoeff for 3, a definição do índice do contexto que é indicada pelo numeral de
42/77 referência 604 ilustrado na Figura 11 é configurada para ser obtida, e, quando a soma de coeficientes significativos próximos countCoeff for maior ou igual a 4, a definição do índice do contexto que é indicada pelo numeral de referência 605 ilustrado na Figura 11 é configurada para ser obtida. Em um caso no qual tal configuração é obtida, a eficácia de uso de correlação das informações próximas é aprimorada, e, consequentemente, a eficácia da codificação pode ser aprimorada. [00129] Nessa sequência, para o cálculo do índice do contexto ctxIdx usado para as informações de coeficiente diferencial significativas, uma soma dos números de partes das informações de coeficiente significativas do sub-bloco próximo decodificado e a posição do coeficiente diferencial alvo de processamento contido no sub-bloco são citadas. Doravante, a razão para obter tal configuração será descrita.
[00130] Geralmente, os coeficientes de transformada ortogonal de uma imagem podem ser facilmente concentrados no componente da região inferior, e há uma alta possibilidade de que as informações de coeficiente significativas sejam 1. Além disso, visto que é difícil para o componente da região superior do coeficiente de transformada ortogonal receber uma influência visual, o componente da região superior é quantificado de uma maneira aproximada em muitos casos, e, consequentemente, há uma alta possibilidade de que o valor de coeficiente do componente da região superior seja 0, e as informações de coeficiente significativas do componente da região superior sejam 0. Tal característica não é limitada a toda a região de coeficiente diferencial mas é a mesma para cada sub-bloco, e pode ser considerado que, para um componente presente no lado da região inferior do sub-bloco, uma probabilidade de que as informações de coeficiente significativas sejam 1 é mais alta do que a de um componente presente no lado da região superior do mesmo sub-bloco. Estabelecer o valor do índice do contexto ctxIdx das informações de coeficiente diferencial significativas
43ΠΊ apresentadas na região inferior contida no sub-bloco como maior do que o valor do índice do contexto ctxIdx das informações de coeficiente diferencial significativas presente na região superior leva ao aprimoramento da precisão da estimativa da probabilidade de ocorrência das informações de coeficiente significativas. Além disso, a soma de coeficientes significativos próximos tende a ser pequena na região superior na qual a probabilidade de que o coeficiente diferencial significativo seja 0 é alta, e a soma de coeficientes significativos próximos tende a aumentar na região inferior na qual a probabilidade de que o coeficiente diferencial significativo seja 1 é alta. Assim, através do uso da soma de coeficientes significativos próximos como um índice que representa o grau de inclusão das informações de coeficiente diferencial significativas no sub-bloco que deve ser processado aprimora a precisão da estimativa da probabilidade de ocorrência das informações de coeficiente significativas.
[00131] Nessa sequência, através do cálculo da soma de coeficientes diferenciais significativos próximos para o sub-bloco uma vez, os índices do contexto de todas as posições de coeficiente contidas no sub-bloco podem ser calculados. Assim, em comparação com um método no qual a soma de coeficientes diferenciais significativos próximos é calculada em cada posição de coeficiente, a quantidade de cálculos da soma de coeficientes diferenciais significativos próximos pode ser reduzida. Além disso, em uma configuração na qual um resultado da decodificação do coeficiente diferencial significativo anterior na sequência de varredura é usado para o cálculo do índice do contexto, é necessário processar sequencialmente o cálculo dos índices do contexto contidos no sub-bloco e a codificação do coeficiente diferencial significativo. Nesse exemplo, enquanto a soma de coeficientes diferenciais significativos próximos e a posição do coeficiente alvo do processamento são designadas para o cálculo de índices do contexto, o
44Π7 coeficiente diferencial que pertence ao sub-bloco alvo do processamento não é escolhido como alvo para a soma de coeficientes diferenciais significativos próximos, e, consequentemente, não há dependência no sub-bloco para o cálculo de índices do contexto. Visto que os índices do contexto para todos os coeficientes diferenciais significativos podem ser calculados a partir do início do sub-bloco, o cálculo dos índices do contexto pode ser realizado em paralelo com o processo de decodificação das informações de coeficiente diferencial significativas. Assim, um atraso do processamento em relação à codificação de informações de coeficiente significativas que têm uma alta frequência de ocorrência no fluxo de bits pode ser diminuído.
[00132] O cálculo do contexto pode ser realizado através da referência às informações de sub-bloco significativas em vez do coeficiente significativo próximo. Além disso, em comparação com uma configuração na qual a soma de coeficientes significativos próximos é obtida, a quantidade de cálculos e a escala do circuito podem ser reduzidas. Além disso, a posição do sub-bloco pode ser refletida no cálculo do contexto. Conforme descrito acima, o componente da região inferior tem uma característica de que tem a probabilidade de ocorrência do coeficiente significativo mais alta do que a da região superior. Através da reflexão da posição do sub-bloco no cálculo do contexto, a estimativa do contexto que tem precisão mais alta pode ser realizada. A Figura 20 ilustra um exemplo no qual a região do coeficiente diferencial é classificada em duas áreas que incluem uma área de região inferior e uma área de região superior. Na Figura 20, as áreas indicadas pelos numerais de referência 1101, 1102, 1103, 1104, 1105, e 1109 são componentes da região inferior, e as áreas indicadas pelos numerais de referência 1106, 1107, 1108, 1110, 1111, 1112, 1113, 1114, 1115, e 1116 são áreas da região inferior. Após os índices do contexto ctxIdx serem calculados na sequência descrita acima para as áreas da região
45/77 inferior, deslocamentos predeterminados que correspondem às posições de sub-blocos podem ser configurados para serem adicionados aos índices do contexto ctxIdx descritos acima para as áreas da região inferior, ou uma ramificação condicional de acordo com a posição do sub-bloco pode ser configurada para ser adicionada durante o cálculo dos índices do contexto ctxIdx descrito acima. Além disso, após os índices do contexto ctxIdx serem calculados na sequência descrita acima para as áreas da região inferior, para a área da região superior, geralmente, há uma alta possibilidade de que o coeficiente diferencial significativo seja 0, e o número dos coeficientes diferenciais próximos significativos pode incluir facilmente um erro na estimativa de probabilidade, e, consequentemente, uma configuração na qual o contexto ctxIdx = 0 é constantemente estabelecido pode ser empregada.
[00133] Além disso, os índices do contexto podem ser calculados com o do uso da soma dos valores absolutos dos coeficientes próximos em vez da soma de coeficientes diferenciais significativos próximos. Geralmente, o valor absoluto do coeficiente diferencial do componente da região inferior é grande, e consequentemente, através do estabelecimento de um contexto no qual a probabilidade de ocorrência das informações de coeficiente diferencial significativas aumenta em um caso no qual a soma dos valores absolutos dos coeficientes diferenciais próximos é grande, a eficácia da codificação pode ser aprimorada.
[00134] Além disso, adicionando-se o modo de previsão usado no momento de calcular os coeficientes diferenciais para a determinação de condições realizada durante a sequência de cálculo dos índices do contexto dos coeficientes diferenciais significativos, a precisão da estimativa do contexto pode ser aprimorada. A razão para isso é que, geralmente, em comparação com uma intraprevisão na qual apenas uma área decodificada de uma imagem alvo de decodificação é estabelecida como um alvo de referência, uma interprevisão com a capa
46/77 cidade de se referir a uma pluralidade de imagens decodificadas tem características de que a precisão de previsão é alta e um diferencial não pode ocorrer facilmente.
PROCESSO DE DECODIFICAÇÃO DE VALOR DE COEFICIENTE DIFERENCIAL (S204) [00135] O controlador de decodificação de informações de coeficiente significativas 1006 determina coeficientes diferenciais que são os alvos de processamento (S501). A sequência de varredura de coeficientes diferenciais contidos no sub-bloco, de forma semelhante à sequência de varredura dos coeficientes diferenciais significativos, segue o padrão representado na Figura 7. Quando a varredura de todos os coeficientes diferenciais do sub-bloco for completada, o processo de decodificação dos coeficientes diferenciais é completado, e o processo prossegue para a sequência (S101) de determinação do próximo sub-bloco.
[00136] O controlador de decodificação de informações de coeficiente significativas 1006 determina se o valor de coeficiente diferencial da posição do coeficiente diferencial alvo de processamento é 0 (S502) ou não. Em um caso no qual o valor de coeficiente diferencial da posição do coeficiente diferencial alvo de processamento é 0, a decodificação do valor de coeficiente diferencial da posição do coeficiente diferencial alvo de processamento é completada, e o processo prossegue à etapa S501.
[00137] Em um caso no qual o valor de coeficiente diferencial da posição do coeficiente diferencial alvo de processamento é 1, o valor absoluto do coeficiente diferencial da posição do coeficiente diferencial alvo de processamento é decodificado (S503). Em um caso no qual essa sequência é realizada, é determinado que o valor de coeficiente diferencial não é 0, e, como um fluxo de bits, uma palavra-código que corresponde a um valor derivado pela subtração de um do valor abso
47/77 luto do coeficiente diferencial é decodificada. Consequentemente, como o valor absoluto do coeficiente diferencial, um valor derivado através da adição de 1 a um valor que é derivado realizando-se decodificação de entropia de uma palavra-código é determinado.
[00138] Subsequentemente, o sinal do coeficiente diferencial da posição do coeficiente diferencial alvo de processamento é decodificado (S504). Um valor de coeficiente diferencial é determinado com base no valor absoluto do coeficiente diferencial e no sinal do coeficiente diferencial.
[00139] Nesse exemplo, enquanto um índice do contexto usado para decodificar as informações de coeficiente diferencial significativas é calculado com base nas informações de coeficiente diferencial significativas do sub-bloco decodificado, uma sequência semelhante pode ser aplicada ao cálculo do índice do contexto do valor de coeficiente diferencial. De forma semelhante às informações de coeficiente diferencial significativas, o valor de coeficiente diferencial tem correlação com os valores de coeficiente próximo e tem concentração no componente da região inferior. Assim, através do estabelecimento de um índice do contexto que representa uma alta probabilidade de ocorrência de um valor de coeficiente diferencial grande quando a soma de coeficientes diferenciais significativos próximos ou a soma dos valores absolutos dos coeficientes diferenciais próximos for grande e estabelecimento de um índice do contexto que representa uma alta probabilidade de ocorrência de um valor de coeficiente diferencial pequeno quando a soma de coeficientes diferenciais significativos próximos ou a soma dos valores absolutos dos coeficientes diferenciais próximos for pequeno, os valores de coeficiente diferenciais podem ser codificados de forma eficaz.
[00140] De acordo com o dispositivo de codificação de imagens e o dispositivo de decodificação de imagens do primeiro exemplo descrito
48/77 acima, as operações e vantagens a seguir são obtidas.
[00141] (1) O índice do contexto do coeficiente diferencial alvo de processamento pode ser calculado com base em coeficientes diferenciais que pertencem a um sub-bloco decodificado próximo ao sub-bloco ao qual o coeficiente diferencial alvo de processamento pertence. Através do estabelecimento de um contexto que estima a probabilidade de ocorrência das informações de coeficiente diferencial significativas de 1 como mais alto quando a soma de coeficientes diferenciais significativos próximos for grande, e estima a probabilidade de ocorrência das informações de coeficiente diferencial significativas de 0 como mais alto quando a soma de coeficientes diferenciais significativos próximos for pequena, um modelo de probabilidade apropriada que é com base na correlação das informações de coeficiente diferencial significativas próximo pode ser estabelecido. Consequentemente, as informações de coeficiente diferencial significativas podem ser codificadas de forma eficaz.
[00142] (2) O índice do contexto é calculado com base na posição do coeficiente diferencial alvo de processamento contido no sub-bloco. Um contexto é estabelecido, o qual estima que o coeficiente diferencial disposto na região inferior contida no sub-bloco tem probabilidade de ocorrência do coeficiente diferencial significativo de 1 maior do que o coeficiente diferencial disposto na região superior contida no sub-bloco. Assim, um modelo de probabilidade, que é com base nas características das informações de coeficiente diferencial significativas no domínio de frequência, pode ser estabelecido e as informações de coeficiente diferencial significativas podem ser codificadas de forma eficaz.
[00143] (3) O cálculo da soma de coeficientes diferenciais significativos próximos e a posição do coeficiente diferencial alvo de processamento contido no sub-bloco não dependem de um resultado da decodificação das informações de coeficiente diferencial significativas
49/77 contidas no sub-bloco. Consequentemente, uma configuração pode ser empregada na qual o cálculo do índice do contexto contido no sub-bloco e a codificação das informações de coeficiente diferencial significativas são processados de uma maneira paralela, e portanto, um atraso do processamento em relação ao processo de decodificação das informações de coeficiente diferencial significativas pode ser reduzido. Consequentemente, os coeficientes diferenciais diminuem um atraso do processamento das informações de coeficiente diferencial significativas que têm uma alta taxa de ocupação no fluxo de bits e que têm um grande número de processos e, portanto, um dispositivo de decodificação que é apropriado para o processamento em tempo real pode ser realizado. Além disso, também no dispositivo de codificação, um atraso do processamento para codificar as informações de coeficiente diferencial significativas pode ser diminuído de forma semelhante.
[00144] (4) A soma do coeficiente diferencial significativo em relação ao cálculo do índice do contexto das informações de coeficiente diferencial significativas não depende da posição do coeficiente diferencial alvo de processamento e, consequentemente, a soma do coeficiente diferencial significativo pode ser calculada uma vez para o sub-bloco. Consequentemente, em comparação com uma configuração na qual cada soma de coeficientes diferenciais significativos próximos é calculada em concordância com a posição do coeficiente diferencial alvo de processamento, a quantidade de cálculos relacionados ao cálculo dos índices do contexto pode ser diminuída.
SEGUNDO EXEMPLO [00145] Um segundo exemplo do método de codificar as informações diferenciais de acordo com uma modalidade da presente invenção será agora descrito. Um codificador de informações diferenciais 507 de acordo com o segundo exemplo, de forma semelhante ao codificador
50/77 de informações diferenciais 507 de acordo com o primeiro exemplo ilustrado na Figura 15, inclui: um codificador aritmético 701; um armazenamento de coeficientes diferenciais 702; um controlador de codificação 703; uma memória de contexto 704; e um controlador de varredura 705. Além disso, o controlador de codificação 703 inclui: um controlador de codificação de informações de coeficiente significativas 706; um controlador de codificação de valores de coeficiente diferenciais 707; e um controlador de codificação de informações de sub-bloco significativas 708.
[00146] A sequência de codificação das informações diferenciais de acordo com esse exemplo é a mesma que a do primeiro exemplo exceto pela sequência (S704 ilustrada na Figura 17) do processo de codificação das informações de coeficiente diferencial significativas, e assim, doravante, a sequência do processo de codificação das informações de coeficiente diferencial significativas de acordo com esse exemplo serão descritas com referência a um fluxograma ilustrado na Figura 21.
SEQUÊNCIA DE PROCESSO DE CODIFICAÇÃO DE INFORMAÇÕES DE COEFICIENTE DIFERENCIAL SIGNIFICATIVAS (S704) [00147] O controlador de codificação de informações de coeficiente significativas 706 deriva as informações de sub-bloco significativas de sub-blocos decodificados que são respectivamente próximos ao lado direito e ao lado inferior de um sub-bloco que deve ser processado. Está estabelecido de modo que as informações de sub-bloco significativas do sub-bloco próximo ao lado direito sejam sigGroupRight, e as informações de sub-bloco significativas do sub-bloco próximo ao lado inferior sejam sigGroupBottom (S1001).
[00148] O controlador de codificação de informações de coeficiente significativas 706 determina coeficientes diferenciais que são os alvos de processamento (S1002). A sequência de varredura de coeficientes
51/77 diferenciais contidos no sub-bloco, de forma semelhante à sequência de varredura de sub-blocos na região do coeficiente diferencial, segue o padrão representado na Figura 7. Quando a varredura de todos os coeficientes diferenciais significativos do sub-bloco estiver completada, o processo de codificação dos coeficientes diferenciais significativos é completado e o processo prossegue para a sequência de codificação (S704) de valores de coeficiente diferenciais.
[00149] O controlador de codificação de informações de coeficiente significativas 706 avalia as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sigGroupBottom (S1003).
[00150] Em um caso no qual ambas as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sigGroupBottom são 0, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S1004). Aqui, está representado de modo que uma posição de coeficiente diferencial horizontal seja posX, uma posição de coeficiente diferencial vertical seja posY, e a posição do coeficiente diferencial alvo de processamento seja pos = posX + posY. Em um caso no qual pos <= 2, um índice do contexto ctxIdx usado para codificar as informações de coeficiente significativas é estabelecido em 1 (S1005). De outra maneira (pos > 2), o índice do contexto ctxIdx é estabelecido em 0 (S1006). A definição do índice do contexto ctxIdx de um caso em que ambas as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sigGroupBottom são 0 é indicada pelo numeral de referência 1201 na Figura
23.
[00151] Em um caso no qual ambas as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sigGroupBottom não são 0, é determinado se as informações de
52/77 sub-bloco significativas sigGroupRight são ou não 1 e as informações de sub-bloco significativas sigGroupBottom são ou não 0 (S1007). Em um caso no qual as informações de sub-bloco significativas sigGroupRight são 1 e as informações de sub-bloco significativas sigGroupBottom são 0, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S1008). Em um caso no qual a posição de coeficiente diferencial vertical posY <= 1, o índice do contexto ctxIdx usado para decodificar as informações de coeficiente significativas é estabelecido em 1 (S1009). De outra maneira (posY > 2), o índice do contexto ctxIdx é estabelecido em 0 (S1010). A definição do índice do contexto ctxIdx de um caso em que as informações de sub-bloco significativas sigGroupRight são 1 e as informações de sub-bloco significativas sigGroupBottom são 0 é indicada pelo numeral de referência 1202 na Figura 23.
[00152] Quando as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sigGroupBottom não são respectivamente 1 e 0, é determinado se as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sigGroupBottom são respectivamente 0 e 1 (S1011). Em um caso no qual as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sigGroupBottom são respectivamente 0 e 1, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S1012). Em um caso no qual a posição de coeficiente diferencial horizontal posX <= 1, o índice do contexto ctxIdx usado para decodificar as informações de coeficiente significativas é estabelecido em 1 (S1013). De outra maneira (posX > 2), o índice do contexto ctxIdx é estabelecido em 0 (S1014). A definição do índice do contexto ctxIdx de um caso em que as informações de sub-bloco signi
53/77 ficativas sigGroupRight são 0 e as informações de sub-bloco significativas sigGroupBottom são 1 é indicada pelo numeral de referência 1203 na Figura 23. Em outras palavras, a sequência para estabelecer o índice do contexto ctxIdx de um caso em que as informações de sub-bloco significativas sigGroupRight são 0 e as informações de sub-bloco significativas sigGroupBottom são 1 é um processo no qual o processo na direção X e o processo na direção Y de um caso em que as informações de sub-bloco significativas sigGroupRight são 1 e as informações de sub-bloco significativas sigGroupBottom são 0 são intercambiados. Por essa razão, o processo pode ser configurado para ser comum, e a escala do circuito do hardware ou a quantidade de codificações do software pode ser reduzida.
[00153] Quando as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sigGroupBottom não são respectivamente 0 e 1, em outras palavras, quando as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sigGroupBottom são respectivamente 1 e 1, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S1015). Em um caso no qual a posição do coeficiente diferencial alvo de processamento pos <= 4, o índice do contexto ctxIdx usado para decodificar as informações de coeficiente significativas é estabelecido em 2 (S1016). De outra maneira (pos > 5), o índice do contexto ctxIdx é estabelecido em 1 (S1017). A definição do índice do contexto ctxIdx de um caso em que as informações de sub-bloco significativas sigGroupRight são 0 e as informações de sub-bloco significativas sigGroupBottom são 1 é indicada pelo numeral de referência 1204 na Figura 23.
[00154] O controlador de codificação de informações de coeficiente significativas 706 deriva o coeficiente diferencial da posição do alvo de
54/77 processamento a partir do armazenamento de coeficientes diferenciais 702. Em um caso no qual o valor de coeficiente diferencial não é 0, as informações de coeficiente diferencial significativas são estabelecidas em 1. De outra maneira (em um caso no qual o valor de coeficiente diferencial é 0), as informações de coeficiente diferencial significativas são estabelecidas em 0 (S1018).
[00155] Após um contexto que corresponde ao índice do contexto ctxIdx determinado ser lido a partir da memória de contexto 704, o controlador de codificação de informações de coeficiente significativas 706 transmite as informações de coeficiente diferencial significativas e o contexto para o codificador aritmético 701. O codificador aritmético 701 codifica as informações de coeficiente diferencial significativas com o uso do contexto (S1019).
SEQUÊNCIA DE DECODIFICAÇÃO [00156] Um método para decodificar coeficientes diferenciais de acordo com o segundo exemplo da modalidade da presente invenção será descrito. O decodificador de informações diferenciais 801 de acordo com o segundo exemplo, de forma semelhante ao decodificador de informações diferenciais 801 de acordo com o primeiro exemplo ilustrado na Figura 8, inclui: um decodificador aritmético 1001; um armazenamento de coeficientes diferenciais 1002; um controlador de decodificação 1003; uma memória de contexto 1004; e um controlador de varredura 1005. Além disso, o controlador de codificação 1003 inclui: um controlador de decodificação de informações de coeficiente significativas 1006; um controlador de decodificação de valores de coeficiente diferenciais 1007; e um controlador de decodificação de informações de sub-bloco significativas 1008.
[00157] Um processo de decodificação das informações diferenciais realizado pelo decodificador de informações diferenciais 801 ilustrado na Figura 8 corresponde ao processo de codificação das informações
55/77 diferenciais realizado pelo codificador de informações diferenciais 507 ilustrado na Figura 5. Assim, as configurações do armazenamento de coeficientes diferenciais 1002, a memória de contexto 1004, e o controlador de varredura 1005 do codificador de informações diferenciais ilustrados na Figura 8 têm, respectivamente, funções que correspondem às configurações do armazenamento de coeficientes diferenciais 702, à memória de contexto 704, e ao controlador de varredura 705 ilustrados na Figura 15.
[00158] Visto que a sequência de codificação das informações diferenciais de acordo com esse exemplo é a mesma que a do primeiro exemplo exceto pela sequência (S203 ilustrada na Figura 2) do processo de codificação das informações de coeficiente diferencial significativas, doravante, a sequência do processo de decodificação das informações de coeficiente diferencial significativas de acordo com esse exemplo será descrita com referência a um fluxograma ilustrado na Figura 22.
SEQUÊNCIA DE PROCESSO DE DECODIFICAÇÃO DE INFORMAÇÕES DE COEFICIENTE DIFERENCIAL SIGNIFICATIVAS (S203) [00159] O controlador de decodificação de informações de coeficiente significativas 1006 deriva as informações de sub-bloco significativas de sub-blocos decodificados que são próximos ao lado direito e ao lado inferior do sub-bloco que deve ser processado. As informações de sub-bloco significativas do sub-bloco próximo ao lado direito serão indicadas pelo sigGroupRight, e as informações de sub-bloco significativas do sub-bloco próximo ao lado inferior serão indicadas pelo sigGroupBottom (S1101).
[00160] O controlador de decodificação de informações de coeficiente significativas 1006 determina coeficientes diferenciais que são os alvos de processamento (S1102). A sequência de varredura de coeficientes diferenciais contidos no sub-bloco, de forma semelhante à se
56/77 quência de varredura de sub-blocos na região do coeficiente diferencial, segue o padrão representado na Figura 7. Quando a varredura de todos os coeficientes diferenciais significativos do sub-bloco estiver completada, o processo de decodificação dos coeficientes diferenciais significativos é completado, e o processo prossegue para a sequência de codificação (S204) de valores de coeficiente diferenciais.
[00161] O controlador de decodificação de informações de coeficiente significativas 1006 avalia as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sigGroupBottom (S1103). Em um caso no qual as informações de sub-bloco significativas sigGroupRight são 0 e as informações de sub-bloco significativas sigGroupBottom são 0, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S1104). Aqui, está representado de modo que uma posição de coeficiente diferencial horizontal seja posX, uma posição de coeficiente diferencial vertical seja posY, e a posição do coeficiente diferencial alvo de processamento seja pos = posX + posY. Em um caso no qual pos <= 2, um índice do contexto ctxIdx usado para decodificar as informações de coeficiente significativas é estabelecido em 1 (S1105). De outra maneira (pos > 2), o índice do contexto ctxIdx é estabelecido em 0 (S1106). A definição do índice do contexto ctxIdx de um caso em que as informações de sub-bloco significativas sigGroupRight são 0 e as informações de sub-bloco significativas sigGroupBottom são 0 é indicada pelo numeral de referência 1201 na Figura 23. Após o contexto determinado ser lido a partir da memória de contexto 1004, um comando de decodificação é transmitido para o decodificador aritmético 1001 junto com o contexto. O decodificador aritmético 1001 realiza um processo de decodificação de um fluxo de bits com o uso do contexto, que codifica dessa forma as informações de coeficiente diferencial significativas (S1116).
57/77 [00162] Em um caso no qual as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sigGroupBottom não são 0, é determinado se as informações de sub-bloco significativas sigGroupRight são ou não 1 e as informações de sub-bloco significativas sigGroupBottom são ou não 0 S1107. Em um caso no qual as informações de sub-bloco significativas sigGroupRight são 1 e as informações de sub-bloco significativas sigGroupBottom são 0, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S1108). Em um caso no qual a posição de coeficiente diferencial vertical posY <= 1, o índice do contexto ctxIdx usado para decodificar as informações de coeficiente significativas é estabelecido em 1 (S1109). De outra maneira (posY > 2), o índice do contexto ctxIdx é estabelecido em 0 (S1110). A definição do índice do contexto ctxIdx de um caso em que as informações de sub-bloco significativas sigGroupRight são 1 e as informações de sub-bloco significativas sigGroupBottom são 0 é indicada pelo numeral de referência 1202 na Figura 23. Após o contexto determinado ser lido a partir da memória de contexto 1004, um comando de decodificação é transmitido para o decodificador aritmético 1001 junto com o contexto. O decodificador aritmético 1001 realiza um processo de decodificação de um fluxo de bits com o uso do contexto, que codifica dessa forma as informações de coeficiente diferencial significativas (S1116).
[00163] Quando as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sigGroupBottom não são respectivamente 1 e 0, é determinado se as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sigGroupBottom são respectivamente 0 e 1 (S1111). Em um caso no qual as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sig
58/77
GroupBottom são respectivamente 0 e 1, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S1112). Em um caso no qual a posição de coeficiente diferencial horizontal posX <= 1, o índice do contexto ctxIdx usado para decodificar as informações de coeficiente significativas é estabelecido em 1 (S1113). De outra maneira (posX > 2), o índice do contexto ctxIdx é estabelecido em 0 (S1114). A definição do índice do contexto ctxIdx de um caso em que as informações de sub-bloco significativas sigGroupRight são 0 e as informações de sub-bloco significativas sigGroupBottom são 1 é indicada pelo numeral de referência 1203 na Figura 23. Após o contexto determinado ser lido a partir da memória de contexto 1004, um comando de decodificação é transmitido para o decodificador aritmético 1001 junto com o contexto. O decodificador aritmético 1001 realiza um processo de decodificação de um fluxo de bits com o uso do contexto, que codifica dessa forma as informações de coeficiente diferencial significativas (S1116).
[00164] Quando as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sigGroupBottom não são respectivamente 0 e 1, em outras palavras, quando ambas as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sigGroupBottom são 1, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S1117). Em um caso no qual a posição do coeficiente diferencial alvo de processamento pos <= 4, o índice do contexto ctxIdx usado para decodificar as informações de coeficiente significativas é estabelecido em 2 (S1118). De outra maneira (pos > 5), o índice do contexto ctxIdx é estabelecido em 1 (S1114). A definição do índice do contexto ctxIdx de um caso em que ambas as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sigGroupBottom são 1 é
59/77 indicada pelo numeral de referência 1204 na Figura 23. Após o contexto determinado ser lido a partir da memória de contexto 1004, um comando de decodificação é transmitido para o decodificador aritmético 1001 junto com o contexto. O decodificador aritmético 1001 realiza um processo de decodificação de um fluxo de bits com o uso do contexto, que codifica dessa forma as informações de coeficiente diferencial significativas (S1116).
[00165] Nessa sequência, para o cálculo do índice do contexto ctxIdx para as informações de coeficiente diferencial significativas, as informações de sub-bloco significativas dos sub-blocos decodificados próximos e a posição do coeficiente diferencial alvo de processamento contido no sub-bloco são citadas, e as informações de sub-bloco significativas do lado direito e as informações de sub-bloco significativas do lado inferior são determinadas individualmente. Doravante, a razão para empregar tal configuração será descrita.
[00166] Geralmente, os coeficientes de transformada ortogonal de uma imagem podem ser facilmente concentrados no componente da região inferior, e há uma alta possibilidade de que as informações de coeficiente significativas sejam 1. Além disso, visto que é difícil para o componente da região superior do coeficiente de transformada ortogonal receber uma influência visual, o componente da região superior é quantificado de uma maneira aproximada em muitos casos, e, consequentemente, há uma alta possibilidade de que o valor de coeficiente do componente da região superior seja 0, e as informações de coeficiente significativas do componente da região superior sejam 0. Tal característica não é limitada a toda a região de coeficiente diferencial mas é a mesma para cada sub-bloco, e pode ser considerado que, para um componente presente no lado da região inferior do sub-bloco, uma probabilidade de que as informações de coeficiente significativas sejam 1 é mais alta do que a de um componente presente no lado da
60/77 região superior do mesmo sub-bloco. Estabelecer o valor do índice do contexto ctxIdx das informações de coeficiente diferencial significativas presente na região inferior contida no sub-bloco para que seja maior do que o valor do índice do contexto ctxIdx das informações de coeficiente diferencial significativas presentes na região superior leva ao aprimoramento da precisão da estimativa da probabilidade de ocorrência das informações de coeficiente significativas. Além disso, as informações de sub-bloco significativas próximo decodificadas tendem a ser pequenas na região superior na qual a probabilidade de que o coeficiente diferencial significativo seja 0 é alta, e as informações de sub-bloco significativas próximo decodificadas tendem a aumentar na região inferior na qual a probabilidade de que o coeficiente diferencial significativo seja 1 é alta. Assim, o uso das informações de sub-bloco significativas próximo decodificadas como um índice que representa o grau de inclusão das informações de coeficiente diferencial significativas no sub-bloco que deve ser processado aprimora a precisão da estimativa da probabilidade de ocorrência das informações de coeficiente significativas.
[00167] No processo de calcular o contexto desse exemplo, em um caso no qual as informações de sub-bloco significativas do lado direito sigGroupRight é 1 e as informações de sub-bloco significativas do lado inferior sigGroupBottom é 0 e em um caso no qual as informações de sub-bloco significativas do lado direito sigGroupRight são 0 e as informações de sub-bloco significativas do lado inferior sigGroupBottom são 1, os índices do contexto mutuamente diferentes podem ser estabelecidos, o que é diferente do primeiro exemplo. Em um caso no qual as informações de sub-bloco significativas do lado direito sigGroupRight são 1 e as informações de sub-bloco significativas do lado inferior sigGroupBottom são 0, um coeficiente diferencial significativo não está presente no lado inferior do sub-bloco que deve ser
61/77 processado, e consequentemente, há uma alta possibilidade de que um coeficiente diferencial significativo não esteja presente na componente da região superior da direção vertical contida no sub-bloco que deve ser processado. Por outro lado, em um caso no qual as informações de sub-bloco significativas do lado direito sigGroupRight são 0 e as informações de sub-bloco significativas do lado inferior sigGroupBottom são 1, um coeficiente diferencial significativo não está presente no lado direito do sub-bloco que deve ser processado, e consequentemente, há uma alta possibilidade de que um coeficiente diferencial significativo não esteja presente na componente da região superior da direção horizontal contida no sub-bloco que deve ser processado. Portanto, através do emprego da configuração desse exemplo no qual um índice do contexto é selecionado apropriadamente em concordância com as probabilidades de ocorrência de coeficientes diferenciais significativos nas direções vertical e horizontal, a precisão da estimativa das probabilidades de ocorrência de coeficientes diferenciais significativos pode ser aprimorada.
[00168] Além disso, nesse exemplo, a partir do ponto de vista de uma diminuição na quantidade de processamento, embora o sub-bloco que é próximo ao lado direito do sub-bloco que deve ser codificado e ao sub-bloco que é próximo ao lado inferior do mesmo sejam citados como os sub-blocos decodificados próximos, os sub-blocos decodificados próximos de acordo com a presente invenção não são limitados aos mesmos. Particularmente, o sub-bloco que é próximo ao lado inferior direito do sub-bloco que deve ser codificado está perto do sub-bloco que deve ser codificado e tem uma alta correlação com o sub-bloco que deve ser codificado. Consequentemente, através da adição das informações de sub-bloco significativas sigGroupBottomRight do sub-bloco que é próximo ao lado inferior direito para o alvo da determinação para o cálculo do índice do contexto ctxIdx, a precisão das
62/77 probabilidades de ocorrência de coeficientes diferenciais significativos pode ser aprimorada. Entretanto, em comparação com o sub-blocos próximos ao lado direito do sub-bloco que deve ser codificado e o sub-bloco próximo ao lado inferior do mesmo, o sub-bloco que é próximo ao lado inferior direito do sub-bloco que deve ser codificado é posicionado longe do sub-bloco que deve ser codificado e tem uma baixa correlação com o sub-bloco que deve ser codificado. Consequentemente, na configuração na qual o índice do contexto do coeficiente diferencial significativo é calculado com base nas informações de sub-bloco significativas do lado direito sigGroupRight, nas informações de sub-bloco significativas do lado inferior sigGroupBottom, e nas informações de sub-bloco significativas sigGroupBottomRight, é preferencial estabelecer o grau de reflexão do coeficiente diferencial significativo das informações de sub-bloco significativas sigGroupBottomRight no índice do contexto para que seja mais baixo do que os das informações de sub-bloco significativas sigGroupBottom e das informações de sub-bloco significativas sigGroupBottomRight. Como um método para estabelecer o grau de reflexão do coeficiente diferencial significativo das informações de sub-bloco significativas sigGroupBottomRight no índice do contexto para que seja baixo, por exemplo, em um caso no qual ambas as informações de sub-bloco significativas do lado inferior sigGroupBottom e as informações de sub-bloco significativas sigGroupBottomRight são 0, a probabilidade de ocorrência do coeficiente diferencial significativo é estabelecida para que seja baixa independentemente do valor das informações de sub-bloco significativas sigGroupBottomRight.
[00169] Nesse exemplo, embora as informações de sub-bloco significativas do lado direito sigGroupRight, as informações de sub-bloco significativas do lado inferior sigGroupBottom e a posição do coeficiente alvo do processamento sejam citadas, o coeficiente diferencial
63/77 que pertence ao sub-bloco alvo do processamento não é escolhido como alvo para as informações de sub-bloco significativas do lado direito sigGroupRight e as informações de sub-bloco significativas do lado inferior sigGroupBottom, e consequentemente, não há dependência contida no sub-bloco para o cálculo de índices do contexto. Visto que os índices do contexto para todos os coeficientes diferenciais significativos podem ser calculados a partir do início do sub-bloco, o cálculo dos índices do contexto pode ser realizado em paralelo com o processo de decodificação das informações de coeficiente diferencial significativas. Assim, um atraso do processamento em relação à codificação de informações de coeficiente significativas que têm uma alta frequência de ocorrência no fluxo de bits pode ser diminuído.
[00170] Nesse exemplo, embora um índice do contexto usado para decodificar as informações de coeficiente diferencial significativas seja calculado com base nas informações de coeficiente diferencial significativas do sub-bloco decodificado, uma sequência semelhante pode ser aplicada ao cálculo do índice do contexto do valor de coeficiente diferencial. De forma semelhante às informações de coeficiente diferencial significativas, o valor de coeficiente diferencial tem correlação com os valores de coeficiente próximo e tem concentração no componente da região inferior. Assim, através do estabelecimento de um índice do contexto que representa uma alta probabilidade de ocorrência de um valor de coeficiente diferencial grande quando a soma de coeficientes diferenciais significativos próximos ou a soma dos valores absolutos dos coeficientes diferenciais próximos for grande e estabelecimento de um índice do contexto que representa uma alta probabilidade de ocorrência de um valor de coeficiente diferencial pequeno quando a soma de coeficientes diferenciais significativos próximos ou a soma dos valores absolutos dos coeficientes diferenciais próximos for pequeno, os valores de coeficiente diferenciais podem ser codificados
64/77 de forma eficaz.
[00171] De acordo com o dispositivo de codificação de imagens e o dispositivo de decodificação de imagens do segundo exemplo descrito acima, as operações e vantagens a seguir são obtidas em adição às operações e vantagens (1) a (4) do primeiro exemplo descrito acima.
[00172] (5) O índice do contexto é calculado com base em uma combinação das informações de sub-bloco significativas do lado direito e das informações de sub-bloco significativas do lado inferior. A probabilidade de ocorrência do coeficiente diferencial significativo do componente da região superior vertical do sub-bloco que deve ser processado é estimada como mais baixa quando um coeficiente diferencial significativo não está presente no lado inferior do sub-bloco que deve ser processado, e a probabilidade de ocorrência do coeficiente diferencial significativo do componente da região superior horizontal do sub-bloco que deve ser processado é estimada como mais baixa quando um coeficiente diferencial significativo não está presente no lado direito do sub-bloco que deve ser processado, através do qual um modelo de probabilidade apropriada das informações de coeficiente diferencial significativas pode ser estabelecido, e as informações de coeficiente diferencial significativas podem ser codificadas de forma eficaz.
TERCEIRO EXEMPLO [00173] Um terceiro exemplo do método de codificar as informações diferenciais de acordo com uma modalidade da presente invenção será agora descrito. Um codificador de informações diferenciais 507 de acordo com o terceiro exemplo, de forma semelhante ao codificador de informações diferenciais 507 de acordo com o primeiro exemplo ilustrado na Figura 15, inclui: um codificador aritmético 701; um armazenamento de coeficientes diferenciais 702; um controlador de codificação 703; uma memória de contexto 704; e um controlador de varredura
65/77
705. Além disso, o controlador de codificação 703 inclui: um controlador de codificação de informações de coeficiente significativas 706; um controlador de codificação de valores de coeficiente diferenciais 707; e um controlador de codificação de informações de sub-bloco significativas 708.
[00174] A sequência de codificação das informações diferenciais de acordo com esse exemplo é a mesma que a do primeiro exemplo exceto pela sequência (S704 ilustrada na Figura 17) do processo de codificação das informações de coeficiente diferencial significativas, e assim, doravante, a sequência do processo de codificação das informações de coeficiente diferencial significativas de acordo com esse exemplo serão descritas com referência a um fluxograma ilustrado na Figura 24.
SEQUÊNCIA DE PROCESSO DE CODIFICAÇÃO DE INFORMAÇÕES DE COEFICIENTE DIFERENCIAL SIGNIFICATIVAS (S704) [00175] O controlador de codificação de informações de coeficiente significativas 706 calcula um índice significativo próximo sigCoeffIndex com base nas informações de sub-bloco significativas dos sub-blocos decodificados próximos ao lado direito e ao lado inferior do sub-bloco que deve ser processado. Está estabelecido de modo que as informações de sub-bloco significativas do sub-bloco próximo ao lado direito sejam sigGroupRight, as informações de sub-bloco significativas do sub-bloco próximo ao lado inferior é sigGroupBottom, e o índice significativo próximo sigCoeffIndex = sigGroupRight + 2 x sigGroupBottom (S1201).
[00176] O controlador de codificação de informações de coeficiente significativas 706 determina coeficientes diferenciais que são os alvos de processamento (S1202). A sequência de varredura de coeficientes diferenciais contidos no sub-bloco, de forma semelhante à sequência de varredura de sub-blocos na região do coeficiente diferencial, segue
66/77 o padrão representado na Figura 7. Quando a varredura de todos os coeficientes diferenciais significativos do sub-bloco estiver completada, o processo de codificação dos coeficientes diferenciais significativos é completado e o processo prossegue para a sequência de codificação (S704) de valores de coeficiente diferenciais.
[00177] O controlador de codificação de informações de coeficiente significativas 706 avalia o índice significativo próximo sigCoeffIndex (S1203).
[00178] Em um caso no qual o índice significativo próximo sigCoeffIndex é 0, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S1204). Em um caso no qual o índice significativo próximo sigCoeffIndex é 0, isso representa que as informações de sub-bloco significativas sigGroupRight são 0 e as informações de sub-bloco significativas sigGroupBottom são 0. Aqui, está representado de modo que uma posição de coeficiente diferencial horizontal seja posX, uma posição de coeficiente diferencial vertical seja posY, e a posição do coeficiente diferencial alvo de processamento seja pos = posX + posY. Em um caso no qual pos <= 2, o índice do contexto ctxIdx usado para codificar as informações de coeficiente significativas é estabelecido em 1 (S1205). De outra maneira (pos > 2), o índice do contexto ctxIdx é estabelecido em 0 (S1206). A definição do índice do contexto ctxIdx de um caso em que o índice significativo próximo sigCoeffIndex é 0 é indicada pelo numeral de referência 1201 na Figura 23.
[00179] Por outro lado, em um caso no qual o índice significativo próximo sigCoeffIndex não é 0, é determinado se o índice significativo próximo sigCoeffIndex é 1 (S1207) ou não. Em um caso no qual o índice significativo próximo sigCoeffIndex é 1, isso representa que as informações de sub-bloco significativas sigGroupRight são 1 e as informações de sub-bloco significativas sigGroupBottom são 0. Em um
67/77 caso no qual o índice significativo próximo sigCoefflndex é 1, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S1208). Em um caso no qual a posição de coeficiente diferencial vertical posY <= 1, o índice do contexto ctxldx usado para decodificar as informações de coeficiente significativas é estabelecido em 1 (S1209). De outra maneira (posY > 2), o índice do contexto ctxldx é estabelecido em 0 (S1210). A definição do índice do contexto ctxIdx de um caso em que o índice significativo próximo sigCoeffIndex é 1 é indicada pelo numeral de referência 1202 na Figura 23.
[00180] Por outro lado, em um caso no qual o índice significativo próximo sigCoeffIndex não é 1, é determinado se o índice significativo próximo sigCoeffIndex é 2 (S1211) ou não. Em um caso no qual o índice significativo próximo sigCoeffIndex é 2, isso representa que as informações de sub-bloco significativas sigGroupRight são 0 e as informações de sub-bloco significativas sigGroupBottom são 1. Em um caso no qual o índice significativo próximo sigCoeffIndex é 2, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S1212). Em um caso no qual a posição de coeficiente diferencial horizontal posX <= 1, o índice do contexto ctxIdx usado para decodificar as informações de coeficiente significativas é estabelecido em 1 (S1213). De outra maneira (posX > 2), o índice do contexto ctxIdx é estabelecido em 0 (S1214). A definição do índice do contexto ctxIdx de um caso em que o índice significativo próximo sigCoeffIndex é 2 é indicada pelo numeral de referência 1203 na Figura 23. Em outras palavras, a sequência para estabelecer o índice do contexto ctxIdx de um caso em que o índice significativo próximo sigCoeffIndex é 2 é um processo no qual o processo na direção X e o processo na direção Y de um caso em que o índice significativo próximo sigCoeffIndex é 1 são intercambiados. Por
68/77 essa razão, o processo pode ser configurado para ser comum, e a escala do circuito do hardware ou a quantidade de codificações do software pode ser reduzida.
[00181] Além disso, em um caso no qual o índice significativo próximo sigCoeffIndex não é 2, em outras palavras, em um caso no qual o índice significativo próximo sigCoeffIndex é 3, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S1215). Em um caso no qual o índice significativo próximo sigCoeffIndex é 3, isso representa que ambas as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sigGroupBottom são 1. Em um caso no qual a posição do coeficiente diferencial alvo de processamento pos <= 4, o índice do contexto ctxIdx usado para decodificar as informações de coeficiente significativas é estabelecido em 2 (S1216). De outra maneira (pos > 5), o índice do contexto ctxIdx é estabelecido em 1 (S1217). A definição do índice do contexto ctxIdx de um caso em que o índice significativo próximo sigCoeffIndex é 3 é indicada pelo numeral de referência 1204 na Figura 23.
[00182] O controlador de codificação de informações de coeficiente significativas 706 deriva o coeficiente diferencial da posição do alvo de processamento a partir do armazenamento de coeficientes diferenciais 702. Em um caso no qual o valor de coeficiente diferencial não é 0, as informações de coeficiente diferencial significativas são estabelecidas em 1. De outra maneira (em um caso no qual o valor de coeficiente diferencial é 0), as informações de coeficiente diferencial significativas são estabelecidas em 0 (S1218).
[00183] Após um contexto que corresponde ao índice do contexto ctxIdx determinado ser lido a partir da memória de contexto 704, o controlador de codificação de informações de coeficiente significativas 706 transmite as informações de coeficiente diferencial significativas e
69/77 o contexto para o codificador aritmético 701. O codificador aritmético 701 codifica as informações de coeficiente diferencial significativas com o uso do contexto (S1219).
SEQUÊNCIA DE DECODIFICAÇÃO [00184] Um método para decodificar coeficientes diferenciais de acordo com o terceiro exemplo da modalidade da presente invenção será descrito. O decodificador de informações diferenciais 801 de acordo com o terceiro exemplo, de forma semelhante ao decodificador de informações diferenciais 801 de acordo com o primeiro exemplo ilustrado na Figura 8, inclui: um decodificador aritmético 1001; um armazenamento de coeficientes diferenciais 1002; um controlador de decodificação 1003; uma memória de contexto 1004; e um controlador de varredura 1005. Além disso, o controlador de codificação 1003 inclui: um controlador de decodificação de informações de coeficiente significativas 1006; um controlador de decodificação de valores de coeficiente diferenciais 1007; e um controlador de decodificação de informações de sub-bloco significativas 1008.
[00185] Um processo de decodificação das informações diferenciais realizado pelo decodificador de informações diferenciais 801 ilustrado na Figura 8 corresponde ao processo de codificação das informações diferenciais realizado pelo codificador de informações diferenciais 507 ilustrado na Figura 5. Assim, as configurações do armazenamento de coeficientes diferenciais 1002, a memória de contexto 1004, e o controlador de varredura 1005 do codificador de informações diferenciais ilustrados na Figura 8 têm, respectivamente, funções que correspondem às configurações do armazenamento de coeficientes diferenciais 702, à memória de contexto 704, e ao controlador de varredura 705 ilustrados na Figura 15.
[00186] Visto que a sequência de codificação das informações diferenciais de acordo com esse exemplo é a mesma que a do primeiro
70/77 exemplo exceto pela sequência (S203 ilustrada na Figura 2) do processo de codificação das informações de coeficiente diferencial significativas, doravante, a sequência do processo de decodificação das informações de coeficiente diferencial significativas de acordo com esse exemplo será descrita com referência a um fluxograma ilustrado na Figura 25.
SEQUÊNCIA DE PROCESSO DE DECODIFICAÇÃO DE INFORMAÇÕES DE COEFICIENTE DIFERENCIAL SIGNIFICATIVAS (S203) [00187] O controlador de decodificação de informações de coeficiente significativas 1006 calcula um índice significativo próximo sigCoeffIndex com base nas informações de sub-bloco significativas dos sub-blocos decodificados próximos ao lado direito e ao lado inferior do sub-bloco que deve ser processado. Está estabelecido de modo que as informações de sub-bloco significativas do sub-bloco próximo ao lado direito sejam sigGroupRight, as informações de sub-bloco significativas do sub-bloco próximo ao lado inferior sejam sigGroupBottom, e o índice significativo próximo sigCoeffIndex = sigGroupRight + 2 x sigGroupBottom (S1301).
[00188] O controlador de decodificação de informações de coeficiente significativas 1006 determina coeficientes diferenciais que são os alvos de processamento (S1302). A sequência de varredura de coeficientes diferenciais contidos no sub-bloco, de forma semelhante à sequência de varredura de sub-blocos na região do coeficiente diferencial, segue o padrão representado na Figura 7. Quando a varredura de todos os coeficientes diferenciais significativos do sub-bloco estiver completada, o processo de decodificação dos coeficientes diferenciais significativos é completado, e o processo prossegue para a sequência de codificação (S204) de valores de coeficiente diferenciais.
[00189] O controlador de decodificação de informações de coeficiente significativas 1006 avalia o índice significativo próximo sigCoef
71/77 fIndex (S1303).
[00190] Em um caso no qual o índice significativo próximo sigCoefflndex é 0, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S1304). Em um caso no qual o índice significativo próximo sigCoeffIndex é 0, isso representa que ambas as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sigGroupBottom são 0. Aqui, está representado de modo que uma posição de coeficiente diferencial horizontal seja posX, uma posição de coeficiente diferencial vertical seja posY, e a posição do coeficiente diferencial alvo de processamento seja pos = posX + posY. Em um caso no qual pos <= 2, o índice do contexto ctxIdx usado para decodificar as informações de coeficiente significativas é estabelecido em 1 (S1305). De outra maneira (pos > 2), o índice do contexto ctxIdx é estabelecido em 0 (S1306). A definição do índice do contexto ctxIdx de um caso em que o índice significativo próximo sigCoeffIndex é 0 é indicada pelo numeral de referência 1201 na Figura 23. Após o contexto determinado ser lido a partir da memória de contexto 1004, um comando de decodificação é transmitido para o decodificador aritmético 1001 junto com o contexto. O decodificador aritmético 1001 realiza um processo de decodificação de um fluxo de bits com o uso do contexto, que codifica dessa forma as informações de coeficiente diferencial significativas (S1316).
[00191] Por outro lado, em um caso no qual o índice significativo próximo sigCoeffIndex não é 0, é determinado se o índice significativo próximo sigCoeffIndex é 1 (S1307). Em um caso no qual o índice significativo próximo sigCoeffIndex é 1, isso representa que as informações de sub-bloco significativas sigGroupRight são 1 e as informações de sub-bloco significativas sigGroupBottom são 0. Em um caso no qual o índice significativo próximo sigCoeffIndex é 1, a posição do coeficiente diferencial alvo de processamento contido no
72/77 sub-bloco que deve ser processado é determinada (S1308). Em um caso no qual a posição de coeficiente diferencial vertical posY <= 1, o índice do contexto ctxIdx usado para decodificar as informações de coeficiente significativas é estabelecido em 1 (S1309). De outra maneira (posY > 2), o índice do contexto ctxIdx é estabelecido em 0 (S1310). A definição do contexto de um caso em que o índice significativo próximo sigCoeffIndex é 1 é indicada pelo numeral de referência 1202 na Figura 23. Após o contexto determinado ser lido a partir da memória de contexto 1004, um comando de decodificação é transmitido para o decodificador aritmético 1001 junto com o contexto. O decodificador aritmético 1001 realiza um processo de decodificação de um fluxo de bits com o uso do contexto, que codifica dessa forma as informações de coeficiente diferencial significativas (S1316).
[00192] Por outro lado, em um caso no qual o índice significativo próximo sigCoeffIndex não é 1, é determinado se o índice significativo próximo sigCoeffIndex é 2 (S1311) ou não. Em um caso no qual o índice significativo próximo sigCoeffIndex é 2, isso representa que as informações de sub-bloco significativas sigGroupRight são 0 e as informações de sub-bloco significativas sigGroupBottom são 1. Em um caso no qual o índice significativo próximo sigCoeffIndex é 2, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S1312). Em um caso no qual a posição de coeficiente diferencial horizontal posX <= 1, o índice do contexto ctxIdx usado para decodificar as informações de coeficiente significativas é estabelecido em 1 (S1313). De outra maneira (posX > 2), o índice do contexto ctxIdx é estabelecido em 0 (S1314). A definição do índice do contexto ctxIdx de um caso em que o índice significativo próximo sigCoeffIndex é 2 é indicada pelo numeral de referência 1203 na Figura 23. Após o contexto determinado ser lido a partir da memória de contexto 1004, um comando de decodificação é
73/77 transmitido para o decodificador aritmético 1001 junto com o contexto. O decodificador aritmético 1001 realiza um processo de decodificação de um fluxo de bits com o uso do contexto, que codifica dessa forma as informações de coeficiente diferencial significativas (S1316).
[00193] Além disso, em um caso no qual o índice significativo próximo sigCoeffIndex não é 2, em outras palavras, em um caso no qual o índice significativo próximo sigCoeffIndex é 3, a posição do coeficiente diferencial alvo de processamento contido no sub-bloco que deve ser processado é determinada (S1317). Em um caso no qual o índice significativo próximo sigCoeffIndex é 3, isso representa que ambas as informações de sub-bloco significativas sigGroupRight e as informações de sub-bloco significativas sigGroupBottom são 1. Em um caso no qual a posição do coeficiente diferencial alvo de processamento pos <= 4, o índice do contexto ctxIdx usado para decodificar as informações de coeficiente significativas é estabelecido em 2 (S1318). De outra maneira (pos > 5), o índice do contexto ctxIdx é estabelecido em 1 (S1314). A definição do índice do contexto ctxIdx de um caso em que o índice significativo próximo sigCoeffIndex é 3 é indicada pelo numeral de referência 1204 na Figura 23. Após o contexto determinado ser lido a partir da memória de contexto 1004, um comando de decodificação é transmitido para o decodificador aritmético 1001 junto com o contexto. O decodificador aritmético 1001 realiza um processo de decodificação de um fluxo de bits com o uso do contexto, que codifica dessa forma as informações de coeficiente diferencial significativas (S1316).
[00194] Nesse exemplo, na sequência para calcular o índice do contexto ctxIdx das informações de coeficiente diferencial significativas, em vez de se referir diretamente às informações de sub-bloco significativas sigGroupRight do sub-bloco próximo ao lado direito e às informações de sub-bloco significativas sigGroupBottom do sub-bloco pró
74/77 ximo ao lado inferior, após o índice significativo próximo sigCoefflndex ser calculado com base nas informações de sub-bloco significativas sigGroupRight e sigGroupBottom, o índice do contexto ctxIdx é calculado referindo-se ao índice significativo próximo sigCoeffIndex, que é diferente do primeiro exemplo. Consequentemente, o número de vezes de realização do processo de determinação em relação ao índice do contexto com base no índice significativo próximo sigCoeffIndex pode ser reduzido.
[00195] De acordo com o dispositivo de codificação de imagens e o dispositivo de decodificação de imagens do terceiro exemplo descrito acima, as operações e vantagens a seguir são obtidas em adição às operações e vantagens (1) a (4) do primeiro exemplo e as operações e as vantagens (5) do segundo exemplo descrito acima.
[00196] (6) Após o índice significativo próximo sigCoeffIndex ser calculado com base nas informações de sub-bloco significativas sigGroupRight do sub-bloco próximo ao lado direito e nas informações de sub-bloco significativas sigGroupBottom do sub-bloco próximo ao lado inferior, o índice do contexto é calculado com base no índice significativo próximo sigCoeffIndex. Em comparação com um método no qual o índice do contexto é calculado com base nas informações de sub-bloco significativas sigGroupRight do sub-bloco próximo ao lado direito e nas informações de sub-bloco significativas sigGroupBottom do sub-bloco próximo ao lado inferior, o número de vezes de realização do processo de determinação em relação ao cálculo de índices do contexto pode ser reduzido.
[00197] Um fluxo de bits de uma imagem que é emitida pelo dispositivo de codificação de imagens de acordo com a modalidade descrita acima tem um formato de dados específico para que seja decodificável em concordância com um método de codificação usado na modalidade, e o dispositivo de decodificação de imagens que corresponde ao dis
75/77 positivo de codificação de imagens pode decodificar o fluxo de bits do formato de dados específico.
[00198] Em um caso no qual uma rede com fio ou sem fio é usada para a troca de um fluxo de bits entre o dispositivo de codificação de imagens e o dispositivo de decodificação de imagens, o fluxo de bits pode ser convertido em um formato de dados que é apropriado para a forma de transmissão em uma trajetória de comunicação e ser transmitido. Em tal caso, um dispositivo de transmissão de imagens é disposto, o qual converte uma emissão de fluxo de bits pelo dispositivo de codificação de imagens em dados de codificação de um formato de dados que é apropriado para a forma de transmissão na trajetória de comunicação e transmite os dados de codificação convertidos para a rede, e um dispositivo de recepção de imagens é disposto, o qual recebe os dados de codificação a partir da rede, restaura o fluxo de bits a dos dados de codificação, e alimenta o fluxo de bits restaurado para o dispositivo de decodificação de imagens.
[00199] O dispositivo de transmissão de imagens inclui: uma memória que armazena uma emissão de fluxo de bits pelo dispositivo de codificação de imagens; uma unidade de processamento de pacotes que empacota o fluxo de bits; e um transmissor que transmite dados de codificação empacotados através de uma rede. O dispositivo de recepção de imagens inclui: uma unidade de recepção que recebe dados de codificação empacotados através de uma rede; uma memória que armazena os dados de codificação recebidos; e uma unidade de processamento de pacotes que constrói um fluxo de bits realizando-se um processo de empacotamento de dados de codificação e alimenta o fluxo de bits construído para o dispositivo de decodificação de imagens. [00200] Os processos em relação à codificação e decodificação descritos acima podem ser realizados não apenas através de um dispositivo para transmissão/armazenamento/recepção com o uso de
76/77 hardware mas também por firmware armazenado em uma memória apenas para leitura (ROM), uma memória flash, ou similares ou software de um computador ou similares. O firmware ou o programa de software podem ser fornecidos através da gravação em um meio de gravação que pode ser lido por um computador ou similares, podem ser fornecidos a partir de um servidor através de uma rede com fio ou sem fio, ou podem ser fornecidos por difusão de dados de onda terrestre ou difusão digital via satélite.
[00201] Conforme acima, a presente invenção foi descrita com base nas modalidades. Entretanto, tais modalidades são meramente exemplos, e é entendido por um versado na técnica que várias modificações podem ser feitas em cada elemento constituinte das mesmas ou uma combinação de cada sequência de processos, e tais exemplos modificados também pertencem ao escopo da presente invenção. DESCRIÇÃO DOS NUMERAIS DE REFERÊNCIA [00202] 501 subtrator, 502 quantificador/transformador ortogonal,
503 quantificador inverso/transformador inverso, 504 adicionador, 505 memória de imagens decodificadas, 506 previsor, 507 codificador de informações diferenciais, 508 codificador de informações de previsão, 509 determinador de modo, 701 codificador aritmético, 702 armazenamento de coeficientes diferenciais, 703 controlador de codificação, 704 memória de contexto, 705 controlador de varredura, 706 controlador de codificação de informações de coeficiente significativas, 707 controlador de codificação de valores de coeficiente diferenciais, 708 controlador de codificação de informações de sub-bloco significativas, 801 decodificador de informações diferenciais, 802 quantificador inverso/transformador inverso, 803 decodificador de informações de previsão, 804 adicionador, 805 memória de imagens decodificadas, 806 previsor, 1001 decodificador aritmético, 1002 armazenamento de coeficientes diferenciais, 1003 controlador de decodificação, 1004
77/77 memória de contexto, 1005 controlador de varredura, 1006 controlador de decodificação de informações de coeficiente significativas, 1007 controlador de decodificação de valores de coeficiente diferenciais, e 1008 controlador de decodificação de informações de sub-bloco significativas.
APLICABILIDADE INDUSTRIAL [00203] A presente invenção pode ser usada para uma tecnologia para codificação/decodificação de imagens.
Claims (3)
- REIVINDICAÇÕES1. Dispositivo de decodificação de imagens que decodifica um fluxo de bits no qual informações diferenciais entre uma imagem que é um alvo de decodificação e uma imagem que é um alvo de previsão são repartidas em uma pluralidade de sub-blocos, e os sub-blocos repartidos são codificados em uma sequência predeterminada, o dispositivo de decodificação de imagens caracterizado pelo fato de que compreende:um decodificador de informações de sub-bloco significativas que decodifica informações de sub-bloco significativas que representam se todos os valores de coeficientes diferenciais que pertencem ao subbloco são zero ou não;um decodificador de informações de coeficiente diferencial significativas que decodifica informações de coeficiente diferencial significativas que representam se o valor do coeficiente diferencial é zero ou não;um decodificador de valor de coeficiente diferencial que decodifica o valor do coeficiente diferencial; e um derivador de contexto (703, 1003) que deriva um índice com base nas informações de sub-bloco significativas de um sub-bloco decodificado que é vizinho ao sub-bloco que é um alvo de decodificação na direção horizontal e nas informações de sub-bloco significativas de um sub-bloco decodificado que é vizinho na direção vertical e deriva um contexto usado para decodificar as informações de coeficiente diferencial significativas do coeficiente diferencial que é um alvo de decodificação com base no índice e na posição do coeficiente diferencial que é o alvo de decodificação no sub-bloco que é o alvo de decodificação.
- 2. Método de decodificação de imagens que decodifica um fluxo de bits no qual informações diferenciais entre uma imagem que éPetição 870190019449, de 26/02/2019, pág. 5/582/3 um alvo de decodificação e uma imagem que é um alvo de previsão são repartidas em uma pluralidade de sub-blocos, e os sub-blocos repartidos são codificados em uma sequência predeterminada, o método de decodificação de imagens caracterizado pelo fato de que compreende:decodificar informações de sub-bloco significativas (S201) que representam se todos os valores de coeficientes diferenciais que pertencem ao sub-bloco são zero ou não;decodificar informações de coeficiente diferencial significativas que representam se o valor de coeficiente diferencial é zero ou não;decodificar o valor do coeficiente diferencial; e derivar um índice com base nas informações de sub-bloco significativas de um sub-bloco decodificado que é vizinho ao sub-bloco que é um alvo de decodificação na direção horizontal e nas informações de sub-bloco significativas de um sub-bloco decodificado que é vizinho na direção vertical e derivar um contexto usado para decodificar as informações de coeficiente diferencial significativas do coeficiente diferencial que é um alvo de decodificação com base no índice e na posição do coeficiente diferencial que é o alvo de decodificação no subbloco que é o alvo de decodificação.
- 3. Dispositivo de recepção que recebe um fluxo de bits no qual uma imagem em movimento é codificada e decodifica o fluxo de bits recebido, o dispositivo de recepção caracterizado pelo fato de que compreende:uma unidade de recepção que recebe dados de codificação obtidos empacotando-se um fluxo de bits no qual informações diferenciais entre uma imagem que é um alvo de decodificação e uma imagem que é um alvo de previsão são repartidas em uma pluralidade de sub-blocos, e os sub-blocos repartidos são codificados em umaPetição 870190019449, de 26/02/2019, pág. 6/583/3 sequência predeterminada;uma unidade de restauração que restaura o fluxo de bits realizando o processamento de pacotes dos dados de codificação empacotados recebidos;um decodificador de informações de sub-bloco significativas que decodifica informações de sub-bloco significativas que representam se todos os valores de coeficientes diferenciais que pertencem ao subbloco são zero ou não, a partir do fluxo de bits restaurado;um decodificador de informações de coeficiente diferencial significativas que decodifica informações de coeficiente diferencial significativas que representam se o valor do coeficiente diferencial é zero ou não, a partir do fluxo de bits restaurado;um decodificador de valor de coeficiente diferencial que decodifica o valor do coeficiente diferencial a partir do fluxo de bits restaurado; e um derivador de contexto (703, 1003) que deriva um índice com base nas informações de sub-bloco significativas de um sub-bloco decodificado que é vizinho ao sub-bloco que é um alvo de decodificação na direção horizontal e nas informações de sub-bloco significativas de um sub-bloco decodificado que é vizinho na direção vertical e deriva um contexto usado para decodificar as informações de coeficiente diferencial significativas do coeficiente diferencial que é um alvo de decodificação com base no índice e na posição do coeficiente diferencial que é o alvo de decodificação no sub-bloco que é o alvo de decodificação.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012092077A JP5696683B2 (ja) | 2012-04-13 | 2012-04-13 | 画像復号装置、画像復号方法、画像復号プログラム、受信装置、受信方法及び受信プログラム |
JP2012092078A JP5696684B2 (ja) | 2012-04-13 | 2012-04-13 | 画像符号化装置、画像符号化方法、画像符号化プログラム、送信装置、送信方法及び送信プログラム |
PCT/JP2013/002514 WO2013153824A1 (ja) | 2012-04-13 | 2013-04-12 | 画像符号化装置、画像符号化方法、画像符号化プログラム、送信装置、送信方法及び送信プログラム、並びに画像復号装置、画像復号方法、画像復号プログラム、受信装置、受信方法及び受信プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
BR112014023933B1 true BR112014023933B1 (pt) | 2020-02-04 |
Family
ID=49327408
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BR112014023933A BR112014023933B1 (pt) | 2012-04-13 | 2013-04-12 | dispositivo de decodificação de imagens, método de decodificação de imagens e dispositivo de recepção |
Country Status (22)
Country | Link |
---|---|
US (5) | US9615109B2 (pt) |
EP (7) | EP2838260B1 (pt) |
CN (6) | CN104247419B (pt) |
AU (5) | AU2013247974B2 (pt) |
BR (1) | BR112014023933B1 (pt) |
CA (5) | CA3191379A1 (pt) |
CL (1) | CL2014002748A1 (pt) |
DK (3) | DK2838260T3 (pt) |
ES (6) | ES2820316T3 (pt) |
HR (1) | HRP20201461T1 (pt) |
HU (6) | HUE050470T2 (pt) |
MX (4) | MX339686B (pt) |
MY (5) | MY166213A (pt) |
PE (2) | PE20150373A1 (pt) |
PH (5) | PH12014502137B1 (pt) |
PL (6) | PL3515080T3 (pt) |
RU (5) | RU2633175C9 (pt) |
SG (4) | SG10201806313VA (pt) |
SI (3) | SI2838260T1 (pt) |
TR (1) | TR201908450T4 (pt) |
TW (5) | TWI642296B (pt) |
WO (1) | WO2013153824A1 (pt) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109076223B (zh) * | 2016-05-13 | 2021-07-09 | 夏普株式会社 | 图像解码装置以及图像编码装置 |
US10827186B2 (en) * | 2016-08-25 | 2020-11-03 | Intel Corporation | Method and system of video coding with context decoding and reconstruction bypass |
EP3553745B1 (en) * | 2018-04-09 | 2021-09-01 | BlackBerry Limited | Methods and devices for binary entropy coding of point clouds |
GB2585044A (en) | 2019-06-25 | 2020-12-30 | Sony Corp | Image data encoding and decoding |
Family Cites Families (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6480537B1 (en) * | 1999-02-25 | 2002-11-12 | Telcordia Technologies, Inc. | Active techniques for video transmission and playback |
KR100627597B1 (ko) * | 2002-04-26 | 2006-09-25 | 가부시키가이샤 엔티티 도코모 | 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법, 화상 복호 방법, 화상 부호화 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 및 화상 복호 프로그램을 기록한 컴퓨터 판독 가능한 기록 매체 |
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 |
JP2007300517A (ja) * | 2006-05-02 | 2007-11-15 | Sony Corp | 動画像処理方法、動画像処理方法のプログラム、動画像処理方法のプログラムを記録した記録媒体及び動画像処理装置 |
US7460725B2 (en) * | 2006-11-09 | 2008-12-02 | Calista Technologies, Inc. | System and method for effectively encoding and decoding electronic information |
KR101356733B1 (ko) * | 2007-03-07 | 2014-02-05 | 삼성전자주식회사 | 컨텍스트 기반 적응적 이진 산술 부호화, 복호화 방법 및장치 |
US7813567B2 (en) * | 2007-04-26 | 2010-10-12 | Texas Instruments Incorporated | Method of CABAC significance MAP decoding suitable for use on VLIW data processors |
US8204327B2 (en) * | 2007-10-01 | 2012-06-19 | Cisco Technology, Inc. | Context adaptive hybrid variable length coding |
KR20090095317A (ko) * | 2008-03-05 | 2009-09-09 | 삼성전자주식회사 | 영상 부호화 및 복호화 방법 및 장치 |
AU2008352118A1 (en) * | 2008-03-07 | 2009-09-11 | Kabushiki Kaisha Toshiba | Dynamic image encoding/decoding method and device |
KR101511082B1 (ko) * | 2008-05-09 | 2015-04-13 | 삼성전자주식회사 | 최하위 비트를 이용한 엔트로피 부호화 방법과 그 장치 및엔트로피 복호화 방법과 그 장치 |
US8138956B2 (en) * | 2008-06-02 | 2012-03-20 | Mediatek Inc. | CABAC encoder and CABAC encoding method |
EP2346256A4 (en) * | 2008-10-07 | 2013-01-02 | Ntt Docomo Inc | IMAGE PROCESSING DEVICE, PROCESS AND PROGRAM, DYNAMIC IMAGE CODING DEVICE, METHOD AND PROGRAM, DYNAMIC IMAGE DECODING DEVICE, METHOD AND PROGRAM AND CODING / DECODING SYSTEM AND METHOD |
CN101394565B (zh) * | 2008-10-20 | 2011-08-17 | 成都九洲电子信息系统有限责任公司 | 一种帧内预测方法 |
US20120020580A1 (en) * | 2009-01-29 | 2012-01-26 | Hisao Sasai | Image coding method and image decoding method |
TW201041405A (en) * | 2009-03-06 | 2010-11-16 | Sony Corp | Image processing device and method |
JP2010258739A (ja) * | 2009-04-24 | 2010-11-11 | Sony Corp | 画像処理装置および方法、並びにプログラム |
JP2010258741A (ja) * | 2009-04-24 | 2010-11-11 | Sony Corp | 画像処理装置および方法、並びにプログラム |
JP5492206B2 (ja) * | 2009-07-27 | 2014-05-14 | 株式会社東芝 | 画像符号化方法および画像復号方法、ならびに、画像符号化装置および画像復号装置 |
WO2011052142A1 (ja) * | 2009-10-29 | 2011-05-05 | パナソニック株式会社 | 画像符号化方法および画像復号方法 |
CN103119849B (zh) * | 2010-04-13 | 2017-06-16 | 弗劳恩霍夫应用研究促进协会 | 概率区间分割编码器和译码器 |
US8908755B2 (en) * | 2010-07-16 | 2014-12-09 | Sony Corporation | Multi-parameter motion for efficient prediction in video compression |
US9154801B2 (en) * | 2010-09-30 | 2015-10-06 | Texas Instruments Incorporated | Method and apparatus for diagonal scan and simplified coding of transform coefficients |
US8902988B2 (en) * | 2010-10-01 | 2014-12-02 | Qualcomm Incorporated | Zero-out of high frequency coefficients and entropy coding retained coefficients using a joint context model |
US9497472B2 (en) * | 2010-11-16 | 2016-11-15 | Qualcomm Incorporated | Parallel context calculation in video coding |
US8976861B2 (en) * | 2010-12-03 | 2015-03-10 | Qualcomm Incorporated | Separately coding the position of a last significant coefficient of a video block in video coding |
US20120163456A1 (en) * | 2010-12-22 | 2012-06-28 | Qualcomm Incorporated | Using a most probable scanning order to efficiently code scanning order information for a video block in video coding |
US20120163448A1 (en) * | 2010-12-22 | 2012-06-28 | Qualcomm Incorporated | Coding the position of a last significant coefficient of a video block in video coding |
US20120207400A1 (en) * | 2011-02-10 | 2012-08-16 | Hisao Sasai | Image coding method, image coding apparatus, image decoding method, image decoding apparatus, and image coding and decoding apparatus |
US20120230418A1 (en) * | 2011-03-08 | 2012-09-13 | Qualcomm Incorporated | Coding of transform coefficients for video coding |
US8446301B2 (en) * | 2011-04-15 | 2013-05-21 | Research In Motion Limited | Methods and devices for coding and decoding the position of the last significant coefficient |
US9807426B2 (en) * | 2011-07-01 | 2017-10-31 | Qualcomm Incorporated | Applying non-square transforms to video data |
US9584812B2 (en) * | 2012-01-20 | 2017-02-28 | Blackberry Limited | Methods and devices for context set selection |
US9008189B2 (en) * | 2012-01-20 | 2015-04-14 | Blackberry Limited | Methods and devices for context modeling to enable modular processing |
US20130195200A1 (en) * | 2012-01-28 | 2013-08-01 | Research In Motion Limited | Methods and devices for context modeling to enable modular processing |
WO2013145709A1 (ja) * | 2012-03-26 | 2013-10-03 | 株式会社Jvcケンウッド | 画像符号化装置、画像符号化方法、画像符号化プログラム、送信装置、送信方法、及び送信プログラム、並びに画像復号装置、画像復号方法、画像復号プログラム、受信装置、受信方法、及び受信プログラム |
-
2013
- 2013-04-12 CN CN201380018023.9A patent/CN104247419B/zh active Active
- 2013-04-12 MY MYPI2017000010A patent/MY166213A/en unknown
- 2013-04-12 TW TW106144428A patent/TWI642296B/zh active
- 2013-04-12 EP EP13775455.2A patent/EP2838260B1/en active Active
- 2013-04-12 RU RU2014145618A patent/RU2633175C9/ru active
- 2013-04-12 MX MX2014012155A patent/MX339686B/es active IP Right Grant
- 2013-04-12 SI SI201331477T patent/SI2838260T1/sl unknown
- 2013-04-12 AU AU2013247974A patent/AU2013247974B2/en active Active
- 2013-04-12 ES ES19161411T patent/ES2820316T3/es active Active
- 2013-04-12 CN CN201510583771.2A patent/CN105187830B/zh active Active
- 2013-04-12 PE PE2014001633A patent/PE20150373A1/es not_active Application Discontinuation
- 2013-04-12 PL PL19161423T patent/PL3515080T3/pl unknown
- 2013-04-12 CA CA3191379A patent/CA3191379A1/en active Pending
- 2013-04-12 HU HUE19161411A patent/HUE050470T2/hu unknown
- 2013-04-12 MY MYPI2016000985A patent/MY177865A/en unknown
- 2013-04-12 WO PCT/JP2013/002514 patent/WO2013153824A1/ja active Application Filing
- 2013-04-12 TW TW107136525A patent/TWI666917B/zh active
- 2013-04-12 ES ES19161423T patent/ES2820322T3/es active Active
- 2013-04-12 PL PL13775455T patent/PL2838260T3/pl unknown
- 2013-04-12 EP EP19161423.9A patent/EP3515080B1/en active Active
- 2013-04-12 SI SI201331783T patent/SI3515079T1/sl unknown
- 2013-04-12 DK DK13775455.2T patent/DK2838260T3/da active
- 2013-04-12 PE PE2019001895A patent/PE20191435A1/es unknown
- 2013-04-12 ES ES20189847T patent/ES2980447T3/es active Active
- 2013-04-12 CA CA2960604A patent/CA2960604C/en active Active
- 2013-04-12 PL PL19161421T patent/PL3515079T3/pl unknown
- 2013-04-12 ES ES19161421T patent/ES2820318T3/es active Active
- 2013-04-12 EP EP19161411.4A patent/EP3515077B1/en active Active
- 2013-04-12 ES ES13775455T patent/ES2733057T3/es active Active
- 2013-04-12 EP EP24167855.6A patent/EP4376413A1/en active Pending
- 2013-04-12 MY MYPI2014002669A patent/MY183790A/en unknown
- 2013-04-12 PL PL20189847.5T patent/PL3754991T3/pl unknown
- 2013-04-12 CN CN201510583247.5A patent/CN105245907B/zh active Active
- 2013-04-12 CA CA3114391A patent/CA3114391C/en active Active
- 2013-04-12 CA CA3191369A patent/CA3191369A1/en active Pending
- 2013-04-12 DK DK19161418.9T patent/DK3515078T3/da active
- 2013-04-12 EP EP19161418.9A patent/EP3515078B1/en active Active
- 2013-04-12 SG SG10201806313VA patent/SG10201806313VA/en unknown
- 2013-04-12 SG SG10201505293UA patent/SG10201505293UA/en unknown
- 2013-04-12 MX MX2017003502A patent/MX363851B/es unknown
- 2013-04-12 SI SI201331784T patent/SI3515078T1/sl unknown
- 2013-04-12 CN CN201510582521.7A patent/CN105245906B/zh active Active
- 2013-04-12 PL PL19161418T patent/PL3515078T3/pl unknown
- 2013-04-12 TR TR2019/08450T patent/TR201908450T4/tr unknown
- 2013-04-12 DK DK19161421.3T patent/DK3515079T3/da active
- 2013-04-12 HU HUE19161418A patent/HUE050469T2/hu unknown
- 2013-04-12 HU HUE20189847A patent/HUE066407T2/hu unknown
- 2013-04-12 SG SG11201405947YA patent/SG11201405947YA/en unknown
- 2013-04-12 CN CN201710085119.7A patent/CN107087202B/zh active Active
- 2013-04-12 CN CN201510583843.3A patent/CN105187843B/zh active Active
- 2013-04-12 MX MX2016007154A patent/MX346521B/es unknown
- 2013-04-12 TW TW106116702A patent/TWI613908B/zh active
- 2013-04-12 MY MYPI2017000009A patent/MY162891A/en unknown
- 2013-04-12 EP EP20189847.5A patent/EP3754991B1/en active Active
- 2013-04-12 EP EP19161421.3A patent/EP3515079B1/en active Active
- 2013-04-12 SG SG10202002472RA patent/SG10202002472RA/en unknown
- 2013-04-12 TW TW102113230A patent/TWI566581B/zh active
- 2013-04-12 PL PL19161411T patent/PL3515077T3/pl unknown
- 2013-04-12 MY MYPI2017000011A patent/MY162892A/en unknown
- 2013-04-12 BR BR112014023933A patent/BR112014023933B1/pt active IP Right Grant
- 2013-04-12 TW TW105133274A patent/TWI592010B/zh active
- 2013-04-12 CA CA2869637A patent/CA2869637C/en active Active
- 2013-04-12 RU RU2017133607A patent/RU2668399C9/ru active
- 2013-04-12 HU HUE19161421A patent/HUE050514T2/hu unknown
- 2013-04-12 HU HUE19161423A patent/HUE050468T2/hu unknown
- 2013-04-12 ES ES19161418T patent/ES2820332T3/es active Active
- 2013-04-12 HU HUE13775455 patent/HUE044347T2/hu unknown
-
2014
- 2014-09-24 US US14/495,430 patent/US9615109B2/en active Active
- 2014-09-24 PH PH12014502137A patent/PH12014502137B1/en unknown
- 2014-10-08 MX MX2019003952A patent/MX2019003952A/es unknown
- 2014-10-13 CL CL2014002748A patent/CL2014002748A1/es unknown
-
2016
- 2016-08-01 AU AU2016210589A patent/AU2016210589B2/en active Active
-
2017
- 2017-02-17 US US15/435,369 patent/US9706211B2/en active Active
- 2017-04-27 PH PH12017500789A patent/PH12017500789B1/en unknown
- 2017-04-27 PH PH12017500788A patent/PH12017500788B1/en unknown
- 2017-04-27 PH PH12017500790A patent/PH12017500790B1/en unknown
- 2017-04-27 PH PH12017500791A patent/PH12017500791A1/en unknown
- 2017-06-05 US US15/613,776 patent/US9872029B2/en active Active
- 2017-06-05 US US15/613,902 patent/US9872031B2/en active Active
- 2017-06-05 US US15/613,864 patent/US9872030B2/en active Active
- 2017-10-11 AU AU2017245338A patent/AU2017245338B2/en active Active
-
2018
- 2018-09-17 RU RU2018132866A patent/RU2689808C9/ru active
-
2019
- 2019-02-04 AU AU2019200733A patent/AU2019200733B2/en active Active
- 2019-02-28 RU RU2019105775A patent/RU2713848C1/ru active
- 2019-02-28 RU RU2019105780A patent/RU2705650C9/ru active
-
2020
- 2020-04-21 AU AU2020202671A patent/AU2020202671B2/en active Active
- 2020-09-14 HR HRP20201461TT patent/HRP20201461T1/hr unknown
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2705650C9 (ru) | Устройство декодирования изображения, способ декодирования изображения и устройство приема | |
JP5696683B2 (ja) | 画像復号装置、画像復号方法、画像復号プログラム、受信装置、受信方法及び受信プログラム | |
JP5696684B2 (ja) | 画像符号化装置、画像符号化方法、画像符号化プログラム、送信装置、送信方法及び送信プログラム | |
JP5835520B1 (ja) | 画像符号化装置、画像符号化方法、及び画像符号化プログラム、並びに、送信装置、送信方法、及び送信プログラム | |
JP5835519B1 (ja) | 画像符号化装置、画像符号化方法、及び画像符号化プログラム、並びに、送信装置、送信方法、及び送信プログラム | |
JP5835518B1 (ja) | 画像符号化装置、画像符号化方法、及び画像符号化プログラム、並びに、送信装置、送信方法、及び送信プログラム | |
JP5696757B2 (ja) | 画像復号装置、画像復号方法、及び画像復号プログラム、並びに、受信装置、受信方法、及び受信プログラム | |
JP5696758B2 (ja) | 画像復号装置、画像復号方法、及び画像復号プログラム、並びに、受信装置、受信方法、及び受信プログラム | |
JP5696760B2 (ja) | 画像復号装置、画像復号方法、及び画像復号プログラム、並びに、受信装置、受信方法、及び受信プログラム | |
JP5696759B2 (ja) | 画像復号装置、画像復号方法、及び画像復号プログラム、並びに、受信装置、受信方法、及び受信プログラム | |
JP5835507B2 (ja) | 画像復号装置、画像復号方法、及び画像符号化プログラム、並びに、受信装置、受信方法、及び受信プログラム | |
JP2016036168A (ja) | 画像符号化装置、画像符号化方法、及び画像符号化プログラム、並びに、送信装置、送信方法、及び送信プログラム | |
JP2013251754A (ja) | 画像復号装置、画像復号方法、画像復号プログラム、受信装置、受信方法及び受信プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
B15K | Others concerning applications: alteration of classification |
Ipc: H04N 7/00 (2011.01) |
|
B06F | Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette] | ||
B09A | Decision: intention to grant [chapter 9.1 patent gazette] | ||
B15K | Others concerning applications: alteration of classification |
Free format text: A CLASSIFICACAO ANTERIOR ERA: H04N 7/00 Ipc: H04N 19/176 (2014.01) |
|
B16A | Patent or certificate of addition of invention granted [chapter 16.1 patent gazette] |
Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 12/04/2013, OBSERVADAS AS CONDICOES LEGAIS. |