BR112013033374B1 - Método de codificação de imagem, método de decodificação de imagem, aparelho de codificação de imagem, aparelho de decodificação de imagem e aparelho de codificação e decodificação de imagem - Google Patents

Método de codificação de imagem, método de decodificação de imagem, aparelho de codificação de imagem, aparelho de decodificação de imagem e aparelho de codificação e decodificação de imagem Download PDF

Info

Publication number
BR112013033374B1
BR112013033374B1 BR112013033374-0A BR112013033374A BR112013033374B1 BR 112013033374 B1 BR112013033374 B1 BR 112013033374B1 BR 112013033374 A BR112013033374 A BR 112013033374A BR 112013033374 B1 BR112013033374 B1 BR 112013033374B1
Authority
BR
Brazil
Prior art keywords
information
processing
unit
sao
decoding
Prior art date
Application number
BR112013033374-0A
Other languages
English (en)
Other versions
BR112013033374A2 (pt
Inventor
Hisao Sasai
Youji Shibahara
Toru Matsunobu
Kyoko Tanikawa
Toshiyasu Sugio
Kengo Terada
Takahiro Nishi
Original Assignee
Sun Patent Trust
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sun Patent Trust filed Critical Sun Patent Trust
Priority claimed from PCT/JP2013/003452 external-priority patent/WO2013183268A1/ja
Publication of BR112013033374A2 publication Critical patent/BR112013033374A2/pt
Publication of BR112013033374B1 publication Critical patent/BR112013033374B1/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/1887Methods 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 variable length codeword
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Abstract

MÉTODO DE CODIFICAÇÃO DE IMAGEM, MÉTODO DE DECODIFICAÇÃO DE IMAGEM, APARELHO DE CODIFICAÇÃO DE IMAGEM, APARELHO DE DECODIFICAÇÃO DE IMAGEM E APARELHO DE CODIFICAÇÃO E DECODIFICAÇÃO DE IMAGEM. A presente invenção refere-se a um método de codificação de imagem que inclui: realizar codificação aritmética adaptativa ao contexto (S511) para codificar consecutivamente (i) primeiras informações que indicam se deve ou não ser realizado processamento de deslocamento adaptativo de amostra (SAO) para uma primeira região de uma imagem e (ii) segundas informações que indicam se devem ser usadas, no processamento de SAO para a primeira região, informações sobre o processamento de SAO para uma região diferente da primeira região, sendo que a codificação aritmética adaptativa ao contexto é uma codificação aritmética que usa uma probabilidade variável e sendo que o processamento de SAO é um processamento de deslocamento em um valor de pixel; e realizar codificação aritmética do tipo bypass (S512) para codificar outras informações que são informações sobre o processamento de SAO para a primeira região e diferentes das primeiras informações ou das segundas informações, após as primeiras informações e as segundas informações terem sido codificadas, sendo que a codificação aritmética do tipo bypass é uma codificação aritmética que usa (...).

Description

Campo da Técnica
[001] A presente invenção refere-se a um método de codificação de imagem com o uso de codificação aritmética.
Antecedentes da Técnica
[002] Há técnicas descritas na Literatura Não Patentária (NPL) 1 e NPL 2 que se referem ao método de codificação de imagem com o uso de codificação aritmética.
Lista de Citação Literatura Não Patentária
[003] NPL 1
[004] ISO/IEC 14496-10 "MPEG-4 Part 10 Advanced Video Cod ing"
[005] NPL 2
[006] Frank Bossen, "Common test conditions and software refer ence configurations", JCTVC-H1100, (Joint Collaborative Team on Video Coding (JCT-VC)) de ITU-T SG16 WP3 e ISO/IEC JTC1/SC29/WG11, 8° Encontro, San Jose, CA, EUA, 1 a 10 de fevereiro de 2012, http://phenix.it- sudpar- is.eu/jct/doc_end_user/documents/8_San%20Jose/wg11/JCTVC- H1100-v1.zip
Sumário da Invenção Problema da Técnica
[007] Entretanto, quando a codificação é realizada com eficácia de processamento pobre, é difícil de suprimir o atraso de processa- mento que ocorre durante a codificação.
[008] Tendo em vista o exposto acima, a presente invenção for nece um método de codificação de imagem que permite a codificação com alta eficácia de codificação.
Solução para o Problema
[009] Um método de codificação de imagem de acordo com um aspecto da presente invenção inclui: realizar codificação aritmética adaptativa ao contexto para codificar consecutivamente (i) primeiras informações que indicam se desempenha processamento de deslocamento adaptativo de amostra (SAO) para a primeira região de uma imagem, ou não, e (ii) segundas informações que indicam se usam, ou não, no processamento de SAO para a primeira região, informações sobre processamento de SAO para a região diferente da primeira região, sendo a codificação aritmética adaptativa ao contexto codificação aritmética com o uso de uma probabilidade variável, sendo o processamento de SAO processamento de deslocamento sobre um valor de pixel; e realizar codificação aritmética do tipo bypass para codificar outras informações que são informações sobre o processamento de SAO para a primeira região e diferente das primeiras informações ou das segundas informações, após as primeiras informações e as segundas informações serem codificadas, sendo a codificação aritmética do tipo bypass codificação aritmética com o uso de uma probabilidade fixa.
[010] Deve ser notado que os aspectos gerais e específicos reve lados acima podem ser implantados com o uso de um sistema, um aparelho, um circuito integrado, um programa de computador, ou um meio de gravação legível em computador não transitório, como um CD-ROM, ou qualquer combinação de sistemas, aparelhos, métodos, circuitos integrados, programas de computador ou meios de gravação.
Efeitos Vantajosos da Invenção
[011] Um método de codificação de imagem de acordo com a presente invenção permite a codificação com alta eficácia de codificação.
Breve Descrição dos Desenhos
[012] A Figura 1 é um diagrama de blocos que ilustra um exemplo de uma configuração de um aparelho de codificação de imagem de acordo com a Modalidade 1.
[013] A Figura 2 é um diagrama de blocos que ilustra um exemplo de uma configuração de um aparelho de decodificação de imagem de acordo com a Modalidade 1.
[014] A Figura 3 é uma vista esquemática que ilustra um exemplo de deslocamento de borda de acordo com a Modalidade 1.
[015] A Figura 4 é uma vista esquemática que ilustra categorias do deslocamento de borda de acordo com a Modalidade 1.
[016] A Figura 5 é uma vista esquemática que ilustra tipos do deslocamento de borda de acordo com a Modalidade 1.
[017] A Figura 6 é uma vista esquemática que ilustra um exemplo de deslocamento de banda de acordo com a Modalidade 1.
[018] A Figura 7 é uma vista esquemática que ilustra categorias do deslocamento de banda de acordo com a Modalidade 1.
[019] A Figura 8 é uma vista esquemática que ilustra informações alvo de codificação do deslocamento de banda de acordo com a Modalidade 1.
[020] A Figura 9A é uma vista esquemática que ilustra um exem plo do processo de dividir uma região de acordo com a Modalidade 1.
[021] A Figura 9B é uma vista esquemática que ilustra um exem plo do resultado de dividir uma região de acordo com a Modalidade 1.
[022] A Figura 10 é um diagrama de blocos que ilustra um exem plo de uma configuração de uma unidade de filtragem de laço no aparelho de codificação de imagem de acordo com a Modalidade 1.
[023] A Figura 11 é um diagrama de blocos que ilustra um exem- plo de uma configuração de uma unidade de filtragem de laço no aparelho de decodificação de imagem de acordo com a Modalidade 1.
[024] A Figura 12 é um fluxograma que ilustra um exemplo de operações da unidade de filtragem de laço no aparelho de codificação de imagem de acordo com a Modalidade 1.
[025] A Figura 13 é um fluxograma que ilustra um exemplo de operações da unidade de filtragem de laço no aparelho de decodifica- ção de imagem de acordo com a Modalidade 1.
[026] A Figura 14 é uma vista esquemática que ilustra um exem plo de alocação de bit para indexar números que indicam, cada um, um método de classificação de pixel de acordo com a Modalidade 1.
[027] A Figura 15 é uma vista esquemática que ilustra um exem plo de um fluxo codificado de acordo com a Modalidade 1.
[028] A Figura 16A é uma vista esquemática que ilustra um exemplo de sintaxe (aps_sao_param) em APS de acordo com a Modalidade 1.
[029] A Figura 16B é uma vista esquemática que ilustra um exemplo de sintaxe (sao_unit_vlc) em APS de acordo com a Modalidade 1.
[030] A Figura 16C é uma vista esquemática que ilustra um exemplo de sintaxe (sao_offset_vlc) em APS de acordo com a Modalidade 1.
[031] A Figura 17A é uma vista esquemática que ilustra um exemplo de sintaxe (slice_data) em dados fatiados de acordo com a Modalidade 1.
[032] Figura 17B é uma vista esquemática que ilustra um exem plo de sintaxe (sao_unit_cabac) em dados fatiados de acordo com a Modalidade 1.
[033] A Figura 17C é uma vista esquemática que ilustra um exemplo de sintaxe (sao_offset_cabac) em dados fatiados de acordo com a Modalidade 1.
[034] A Figura 18 é uma vista esquemática que ilustra um exem plo de regiões entre as quais informações de deslocamento são com-partilhadas de acordo com a Modalidade 1.
[035] A Figura 19 é um fluxograma que ilustra um exemplo de codificação de um número de índice que indica o método de classificação de pixel de acordo com a Modalidade 1.
[036] A Figura 20 é um fluxograma que ilustra um exemplo de decodificação de um número de índice que indica o método de classificação de pixel de acordo com a Modalidade 1.
[037] A Figura 21 é um diagrama de blocos que ilustra um exem plo de uma configuração de uma unidade de filtragem de laço no aparelho de codificação de imagem de acordo com a Modalidade 2.
[038] A Figura 22 é um diagrama de blocos que ilustra um exem plo de uma configuração de uma unidade de filtragem de laço no aparelho de decodificação de imagem de acordo com a Modalidade 2.
[039] A Figura 23 é um fluxograma que ilustra um exemplo de operações da unidade de filtragem de laço no aparelho de codificação de imagem de acordo com a Modalidade 2.
[040] A Figura 24 é um fluxograma que ilustra um exemplo de operações da unidade de filtragem de laço no aparelho de decodifica- ção de imagem de acordo com a Modalidade 2.
[041] A Figura 25 é uma vista esquemática que ilustra um exem plo de alocação de bit para indexar números que indicam, cada um, um método de classificação de pixel de acordo com a Modalidade 2.
[042] A Figura 26 é uma vista esquemática que ilustra outro exemplo de alocação de bit para indexar números que indicam, cada um, um método de classificação de pixel de acordo com a Modalidade 2.
[043] A Figura 27A é uma vista esquemática que ilustra um exemplo de sintaxe (sao_unit_vlc) em APS de acordo com a Modalidade 2.
[044] A Figura 27B é uma vista esquemática que ilustra um exemplo de sintaxe (sao_offset_vlc) em APS de acordo com a Modalidade 2.
[045] A Figura 27C é uma vista esquemática que ilustra um exemplo de alocação de um índice de contexto para informações de deslocamento em APS de acordo com a Modalidade 2.
[046] A Figura 27D é um fluxograma que ilustra um exemplo de codificação de informações de deslocamento em APS de acordo com a Modalidade 2
[047] A Figura 27E é um fluxograma que mostra um exemplo de decodificação de informações de deslocamento em APS de acordo com a Modalidade 2.
[048] A Figura 28A é uma vista esquemática que ilustra um exemplo de sintaxe (sao_unit_cabac) em dados fatiados de acordo com a Modalidade 2.
[049] A Figura 28B é uma vista esquemática que ilustra um exemplo de sintaxe (sao_offset_cabac) em dados fatiados de acordo com a Modalidade 2.
[050] A Figura 28C é uma vista esquemática que ilustra um exemplo de alocação de um índice de contexto para informações de deslocamento em dados fatiados de acordo com a Modalidade 2.
[051] A Figura 28D é um fluxograma que ilustra um exemplo de codificação de informações de deslocamento em dados fatiados de acordo com a Modalidade 2.
[052] A Figura 28E é um fluxograma que mostra um exemplo de decodificação de informações de deslocamento em dados fatiados de acordo com a Modalidade 2.
[053] A Figura 29 é um fluxograma que ilustra um exemplo de codificação de um número de índice que indica um método de classificação de pixel de acordo com a Modalidade 2.
[054] A Figura 30 é um fluxograma que ilustra um exemplo de decodificação um número de índice que indica o método de classificação de pixel de acordo com a Modalidade 2.
[055] A Figura 31A é uma vista esquemática que ilustra um exemplo de alocação de um índice de contexto para informações de deslocamento de acordo com a Modalidade 3.
[056] A Figura 31B é um diagrama que mostra um desempenho objetivo de um aparelho de codificação de imagem e um aparelho de decodificação de imagem de acordo com a Modalidade 3.
[057] A Figura 32 é um diagrama de blocos que ilustra um exem plo de uma configuração de uma unidade de codificação de informações de deslocamento de acordo com a Modalidade 3.
[058] A Figura 33 é um diagrama de blocos que ilustra um exem plo de uma configuração de uma unidade de decodificação de informações de deslocamento de acordo com a Modalidade 3.
[059] A Figura 34 é um fluxograma que ilustra um exemplo de operações da unidade de codificação de informações de deslocamento de acordo com a Modalidade 3.
[060] A Figura 35 é um fluxograma que ilustra um exemplo de operações da unidade de decodificação de informações de deslocamento de acordo com a Modalidade 3.
[061] A Figura 36 é um fluxograma que ilustra um exemplo de um recurso de codificação de acordo com a Modalidade 3.
[062] A Figura 37 é um fluxograma que ilustra um exemplo de um recurso de decodificação de acordo com a Modalidade 3.
[063] A Figura 38 mostra uma configuração em geral de um sis tema de fornecimento de conteúdo para implantar serviços de distribuição de conteúdo.
[064] A Figura 39 mostra uma configuração em geral de um sis tema de difusão digital.
[065] A Figura 40 mostra um diagrama de blocos que ilustra um exemplo de uma configuração de uma televisão.
[066] A Figura 41 mostra um diagrama de blocos que ilustra um exemplo de uma configuração de uma unidade de grava- ção/reprodução de informações que lê e escreve informações de e em um meio de gravação que é um disco óptico.
[067] A Figura 42 mostra um exemplo de uma configuração de um meio de gravação que é um disco óptico.
[068] A Figura 43A mostra um exemplo de um telefone celular.
[069] A Figura 43B é um diagrama de blocos que mostra um exemplo de uma configuração de um telefone celular.
[070] A Figura 44 ilustra uma estrutura de dados multiplexados.
[071] A Figura 45 mostra esquematicamente como cada fluxo é multiplexados em dados multiplexados.
[072] A Figura 46 mostra como um fluxo de vídeo é armazenado em um fluxo de pacotes de PES em maiores detalhes.
[073] A Figura 47 mostra uma estrutura de pacotes de TS e paco tes de fonte nos dados multiplexados.
[074] A Figura 48 mostra uma estrutura de dados de um PMT.
[075] A Figura 49 mostra uma estrutura interna de informações de dados multiplexados.
[076] A Figura 50 mostra uma estrutura interna de informações de atributo de fluxo.
[077] A Figura 51 mostra etapas para identificar dados de vídeo.
[078] A Figura 52 mostra um exemplo de uma configuração de um circuito integrado para implantar o método de codificação por figuração em movimento e o método de decodificação por figuração em movimento de acordo com cada uma das modalidades.
[079] A Figura 53 mostra uma configuração para comutar entre frequências de acionamento.
[080] A Figura 54 mostra etapas para identificar dados de vídeo e comutar entre frequências de acionamento.
[081] A Figura 55 mostra um exemplo de uma tabela de consulta na qual padrões de dados de vídeo são associados a frequências de acionamento.
[082] A Figura 56A é um diagrama que mostra um exemplo de uma configuração para compartilhar um módulo de uma unidade de processamento de sinal.
[083] A Figura 56B é um diagrama que mostra outro exemplo de uma configuração para compartilhar um módulo da unidade de processamento de sinal.
Descrição das Modalidades
[084] (Base de Formação de Conhecimento Subjacente da pre sente invenção)
[085] Os inventores encontraram um problema no método de co dificação de imagem com o uso de codificação aritmética que é descrito em "Antecedentes". Os detalhes são descritos a seguir.
[086] Um aparelho de codificação de imagem de acordo com um sistema de codificação de imagem representado pelo padrão ITU-T denominado H.26x e o padrão ISO/IEC denominado MPEG-x divide uma figuração em unidades predeterminadas e realiza a codificação pela unidade. Por exemplo, um aparelho de codificação de imagem de acordo com o padrão de AVC H.264/MPEG-4 (consulte a Literatura Não Patentária (NPL) 1), realiza um processo por uma unidade denominada um macrobloco que tem 16 pixels horizontais e 16 pixels verticais.
[087] O aparelho de codificação de imagem divide o macrobloco em sub blocos (em que cada um tem pelo menos 4 pixels horizontais e 4 pixels verticais), quando do desempenho da compensação de movimento. O aparelho de codificação de imagem realiza a compensação de movimento com o uso de um vetor de movimento que é diferente para cada um dos sub blocos, realiza transformação de frequência em um sinal diferente entre um sinal original e um sinal de predição, coleta informações sobre o sinal diferente em uma região de baixa frequência, e realiza a quantização, comprimindo, assim, informações.
[088] É sabido que a distorção similar à grade, denominada dis torção de bloco, aparece em um limite de blocos de acordo com um método para a codificação de uma figuração em uma base de bloco- por-bloco com o uso de transformação ortogonal, como DCT, que coleta informações em um sinal diferente em uma região de baixa frequência. O aparelho de codificação de imagem é capaz de reduzir a distorção de bloco desempenhando-se processamento de filtragem de de- sagrupamento de blocos.
[089] Entretanto, com o sistema que processa apenas o limite de bloco como com o filtro de desagrupamento descrito acima, há dificuldade de reduzir a deterioração de codificação diferente da distorção de bloco.
[090] Em vista do exposto acima, um método de codificação de imagem de acordo com um aspecto da presente invenção inclui: realizar codificação aritmética adaptativa de um contexto para codificar consecutivamente (i) primeiras informações que indicam se desempenha processamento de deslocamento adaptativo de amostra (SAO) para uma primeira região de uma imagem, ou não, e (ii) segundas informações que indicam se usa, no processamento de SAO para a primeira região, informações sobre processamento de SAO para a região diferente da primeira região, ou não, sendo a codificação aritmética adaptativa um contexto de codificação aritmética com o uso de uma probabilidade variável, sendo o processamento de SAO processamen- to de deslocamento em um valor de pixel; e realizar codificação aritmética do tipo bypass para codificar outras informações que são informações sobre o processamento de SAO para a primeira região e diferentes das primeiras informações ou das segundas informações, após as primeiras informações e as segundas informações são codificadas, sendo a codificação aritmética do tipo bypass codificação aritmética com o uso de uma probabilidade fixa.
[091] Com isso, a codificação aritmética adaptativa ao contexto é realizada de modo consecutivo sobre as informações em processamento de SAO para aprimorar uma qualidade de imagem. Mais especificamente, a comutação frequente entre a codificação aritmética adaptativa ao contexto e a codificação aritmética do tipo bypass é suprimida e processos do mesmo tipo são realizados de modo consecutivo. Assim, a eficácia de processamento aprimora.
[092] Por exemplo, no desempenho de codificação aritmética do tipo bypass, as outras informações podem ser codificadas que incluem (i) terceiras informações que indicam se o processamento de SAO para a primeira região é processamento de deslocamento de borda ou um processamento de deslocamento de banda e (ii) quartas informações que indicam um valor absoluto de um valor de deslocamento, sendo o processamento de deslocamento de borda realizado de acordo com uma borda, sendo o processamento de deslocamento de banda realizado de acordo com um valor de pixel.
[093] Com isso, uma variedade de itens de informações são codi ficados pela codificação aritmética do tipo bypass após a codificação aritmética adaptativa ao contexto. Em resumo, processos do mesmo tipo são coletivamente realizados. Assim, a eficácia de processamento aprimora.
[094] Além disso, por exemplo, no desempenho de codificação aritmética do tipo bypass, quando o processamento de SAO para a primeira região é o processamento de deslocamento de banda, as outras informações podem ser codificadas, o que inclui (i) quintas informações que indicam se o valor de deslocamento é positivo ou negativo e (ii) sextas informações que indicam um escopo de aplicação do valor de deslocamento.
[095] Com isso, uma variedade adicional de itens de informações são codificadas pela codificação aritmética do tipo bypass de acordo com o estado, após a codificação aritmética adaptativa ao contexto. Assim, a eficácia de processamento aprimora.
[096] Além disso, por exemplo, no desempenho de codificação tica adaptativa ao contexto, as segundas informações podem ser codificadas, o que inclui pelo menos um de (i) informações que indicam se informações sobre processamento de SAO para a região à esquerda são usadas no processamento de SAO para a primeira região, ou não, e (ii) informações que indicam se informações sobre processamento de SAO para uma região superior são usadas no processamento de SAO para a primeira região, ou não, sendo a região à esquerda adjacente à primeira região e sendo à esquerda da primeira região, sendo a região superior adjacente à primeira região e sendo no topo da primeira região.
[097] Com isto, na codificação aritmética adaptativa ao contexto que é realizada de modo consecutivo, informações que indicam a reutilização de cima ou esquerda são adequadamente codificadas.
[098] Além disso, um método de decodificação de imagem de acordo com um aspecto da presente invenção pode ser um método de decodificação de imagem que inclui: realizar decodificação aritmética adaptativa ao contexto para decodificar consecutivamente (i) primeiras informações que indicam se desempenha processamento de deslocamento adaptativo de amostra (SAO) para a primeira região de uma imagem, ou não, e (ii) segundas informações que indicam se usam, ou não, no processamento de SAO para a primeira região, informações sobre processamento de SAO para uma região diferente da primeira região, sendo a decodificação aritmética adaptativa ao contexto deco- dificação aritmética com o uso de uma probabilidade variável, sendo o processamento de SAO processamento de deslocamento sobre um valor de pixel; e realizar decodificação aritmética do tipo bypass para decodificar outras informações que são informações sobre o processamento de SAO para a primeira região e diferente das primeiras informações ou das segundas informações, após as primeiras informações e as segundas informações terem sido decodificadas, sendo a decodificação aritmética do tipo bypass decodificação aritmética com o uso de uma probabilidade fixa.
[099] Com isso, a decodificação aritmética adaptativa ao contexto é realizada de modo consecutivo sobre as informações em processamento de SAO para aprimorar uma qualidade de imagem. Mais especificamente, a comutação frequente entre a decodificação aritmética adaptativa ao contexto e a decodificação aritmética do tipo bypass é suprimida e processos do mesmo tipo são realizados de modo consecutivo. Assim, a eficácia de processamento aprimora.
[0100] Por exemplo, no desempenho de decodificação aritmética do tipo bypass, as outras informações podem ser decodificadas, o que inclui (i) terceiras informações que indicam se o processamento de SAO para a primeira região é processamento de deslocamento de borda ou um processamento de deslocamento de banda e (ii) quartas informações que indicam um valor absoluto de um valor de deslocamento, sendo o processamento de deslocamento de borda realizado de acordo com uma borda, sendo o processamento de deslocamento de banda realizado de acordo com um valor de pixel.
[0101] Com isso, uma variedade de itens de informações são de codificados pela decodificação aritmética do tipo bypass após a deco- dificação aritmética adaptativa ao contexto. Em resumo, processos do mesmo tipo são coletivamente realizados. Assim, a eficácia de processamento aprimora.
[0102] Além disso, por exemplo, no desempenho de decodificação aritmética do tipo bypass, quando o processamento de SAO para a primeira região é o processamento de deslocamento de banda, as outras informações podem ser decodificadas, o que inclui (i) quintas informações que indicam se o valor de deslocamento é positivo ou negativo e (ii) sextas informações que indicam um escopo de aplicação do valor de deslocamento.
[0103] Com isso, uma variedade adicional de itens de informações são decodificados pela decodificação aritmética do tipo bypass de acordo com o estado após a decodificação aritmética adaptativa ao contexto. Assim, a eficácia de processamento aprimora.
[0104] Além disso, por exemplo, no desempenho de decodificação aritmética adaptativa ao contexto, as segundas informações podem ser decodificadas, o que inclui pelo menos um de (i) informações que indicam se informações sobre processamento de SAO para uma região à esquerda é usada no processamento de SAO para a primeira região, ou não, e (ii) informações que indicam se informações sobre processamento de SAO para uma região superior é usada no processamento de SAO para a primeira região, ou não, sendo a região à esquerda adjacente à primeira região e sendo à esquerda da primeira região, sendo a região superior adjacente à primeira região e sendo no topo da primeira região.
[0105] Com isso, na decodificação aritmética adaptativa ao contex to que é realizada de modo consecutivo, informações que indicam a reutilização de cima ou esquerda na decodificação aritmética adaptati- va ao contexto são adequadamente decodificadas.
[0106] Deve ser notado que aspectos gerais e específicos revela- dos acima podem ser implantados com o uso de um sistema, um aparelho, um circuito integrado, um programa de computador, ou um meio de gravação legível em computador não transitório como um CD-ROM, ou qualquer combinação de sistemas, aparelhos, métodos circuitos integrados, programas de computador, ou meios de gravação.
[0107] São descritas a seguir modalidades em detalhes com refe rência aos desenhos. Deve ser notado que cada uma das modalidades descritas abaixo mostra um exemplo geral ou específico. Os valores numéricos, formatos, materiais, elementos estruturais, a disposição e conexão dos elementos estruturais, etapas, a ordem de processamento das etapas, etc. mostrados nas seguintes modalidades são meros exemplos e, portanto, não limitar o escopo da presente invenção. Portanto, entre os elementos estruturais nas seguintes modalidades, elementos estruturais não citados em qualquer uma das reivindicações independentes são descritos como elementos estruturais arbitrários.
[0108] Além disso, o termo "codificação" na descrição a seguir po de ser usada por significar "codificar".
(Modalidade 1)
[0109] A Figura 1 ilustra uma configuração de um aparelho de co dificação de imagem de acordo com a Modalidade 1. Um aparelho de codificação de imagem 100 ilustrado na Figura 1 inclui uma unidade de controle 110 e uma unidade de codificação 120. A unidade de codificação 120 inclui: um subtrator 121; uma unidade de transformação de frequência 122; uma unidade de quantização 123; uma unidade de codificação de entropia 124; uma unidade de quantização inversa 125; uma unidade de transformação de frequência inversa 126; um adicio- nador 127; uma unidade de filtragem de laço 128; uma unidade de armazenamento 129; uma unidade de intrapredição 130; uma unidade de compensação de movimento 131; uma unidade de estimativa de movimento 132; e um comutador 133.
[0110] A unidade de codificação 120 codifica uma imagem 141 em uma base de bloco-por-bloco para gerar um fluxo codificado 142. Nesse momento, o subtrator 121 na unidade de codificação 120 subtrai um bloco de pixel que tem valores de pixel plurais de uma imagem de predição, de um bloco de pixel que tem valores de pixel plurais da imagem 141. A unidade de transformação de frequência 122 transforma um bloco de pixel que resulta da subtração em um bloco de coeficiente que tem coeficientes de frequência plurais. A unidade de quantização 123 quantizar o bloco de coeficiente obtido a partir da unidade de transformação de frequência 122.
[0111] Enquanto isso, a unidade de estimativa de movimento 132 detecta um vetor de movimento com o uso do bloco de pixel da imagem 141. A unidade de compensação de movimento 131 realiza predição interquadro (interpredição) com o uso de uma imagem de referência na unidade de armazenamento 129 e o vetor de movimento detectado pela unidade de estimativa de movimento 132. A unidade de in- trapredição 130 realiza predição intraquadro (intrapredição) com o uso do bloco de pixel obtido a partir do adicionador 127, de acordo com um modo de intrapredição. O comutador 133 insere o bloco de pixel da imagem de predição que resulta da predição intraquadro ou da predição interquadro, para o subtrator 121 e o adicionador 127.
[0112] A unidade de codificação de entropia 124 realiza codifica ção de entropia sobre informações de partição de um bloco, um tipo de predição, um vetor de movimento, um modo de predição (modo de predição intraquadro), um parâmetro de quantização, o bloco de coeficiente quantizado, e assim em diante, para gerar o fluxo codificado 142.
[0113] Além disso, a unidade de quantização inversa 125 realiza quantização inversa no bloco de coeficiente quantizado. Além disso, a unidade de transformação de frequência inversa 126 transforma o blo- co de coeficiente no qual a quantização inversa é realizado em um bloco de pixel. O adicionador 127 adiciona o bloco de pixel da imagem de predição ao bloco de pixel obtido a partir da unidade de transformação de frequência inversa 126. A unidade de filtragem de laço 128 suprime a distorção no bloco de pixel obtido no adicionador 127, e armazena o bloco de pixel como uma imagem de referência na unidade de armazenamento 129.
[0114] Adicionalmente, a unidade de controle 110 controla a uni dade de codificação 120.
[0115] O aparelho de codificação de imagem 100 codifica a ima gem 141 através da operação descrita acima. Além disso, o aparelho de codificação de imagem 100 reduz uma quantidade de dados do fluxo codificado 142 através de uma variedade de processos, como transformação de frequência, quantização, predição intraquadro, predição interquadro, codificação de entropia, filtragem de laço, e assim em diante.
[0116] A Figura 2 ilustra uma configuração de um aparelho de de- codificação de imagem 200 que corresponde ao aparelho de codificação de imagem 100 ilustrado na Figura 1. O aparelho de decodificação de imagem 200 ilustrado na Figura 2 inclui uma unidade de controle 210 e uma unidade de decodificação 220. A unidade de decodificação 220 inclui: uma unidade de decodificação de entropia 224; uma unidade de quantização inversa 225; uma unidade de transformação de frequência inversa 226; um adicionador 227; uma unidade de filtragem de laço 228; uma unidade de armazenamento 229; uma unidade de predição intraquadro 230; uma unidade de compensação de movimento 231; e um comutador 233.
[0117] A unidade de decodificação 220 decodifica, em uma base de bloco-por-bloco, uma imagem 241 incluída em um fluxo codificado 242. Nesse momento, a unidade de decodificação de entropia 224 na unidade de decodificação 220 realiza decodificação de entropia no fluxo codificado 242, obtendo, assim, informações de partição de um bloco, um tipo de predição, um vetor de movimento, um modo de predição intraquadro, um parâmetro de quantização, um bloco de coeficiente quantizado, e assim em diante.
[0118] Então, a unidade de controle 210 controla a operação reali zada pela unidade de decodificação 220.
[0119] A unidade de quantização inversa 225 na unidade de deco- dificação 220 realiza quantização inversa no bloco de coeficiente quantizado. A unidade de transformação de frequência inversa 226 transforma o bloco de coeficiente no qual a quantização inversa é realizada em um bloco de pixel.
[0120] O adicionador 227 adiciona o bloco de pixel da imagem de predição ao bloco de pixel obtido a partir da unidade de transformação de frequência inversa 226. A unidade de filtragem de laço 228 suprime a distorção no bloco de pixel obtido do adicionador 227. Então, a unidade de filtragem de laço 228 armazena uma imagem de referência, incluindo blocos de pixel na unidade de armazenamento 229. Adicionalmente, a unidade de filtragem de laço 228 emite uma imagem 241, incluindo blocos de pixel.
[0121] Quando o tipo de predição é predição intraquadro, a unida de de intrapredição 230 realiza predição intraquadro com o uso do bloco de pixel obtido do adicionador 227, de acordo com um modo de in- trapredição. Quando o tipo de predição é predição interquadro, a unidade de compensação de movimento 231 realiza predição interquadro com o uso do vetor de movimento e a imagem de referência na unidade de armazenamento 229. O comutador 233 insere o bloco de pixel da imagem de predição que resulta da predição intraquadro ou da predição interquadro, ao adicionador 227.
[0122] A imagem unidade de decodificação 200 decodifica, em uma base de bloco-por-bloco, a imagem 241 incluída em um fluxo codificado 242 através da operação que corresponde à operação realizada pelo aparelho de codificação de imagem 100.
[0123] É descrito a seguir filtragem de laço em maiores detalhes. A filtragem de laço está em processamento para reduzir a deterioração de codificação em um sinal reconstruído, e de acordo com o padrão AVC H.264/MPEG-4 (consulte a Literatura Não Patentária (NPL) 1), uma filtragem de desagrupamento de blocos para reduzir a distorção de bloco que ocorre em um limite de macrobloco é realizada.
[0124] Entretanto, a filtragem de desagrupamento de blocos não soluciona a deterioração de codificação que ocorre em um macrobloco. Em vista disso, o processamento de deslocamento é realizado para reduzir a deterioração de codificação de acordo com essa modalidade. O processamento de deslocamento adiciona um valor de deslocamento a um pixel incluído em um bloco atual a ser processado em um sinal reconstruído, reduzindo, assim, a distorção de um sinal original.
[0125] Adicionalmente, no processamento de deslocamento, pixels no bloco atual são classificados em uma pluralidade de categorias e um valor de deslocamento que é comum para cada categoria é usado. Métodos para classificar pixels incluem (i) um método de classificação de pixel de deslocamento de borda que é realizado comparando-se um pixel alvo para a classificação com um pixel adjacente ao mesmo e (ii) um método de classificação de pixel de deslocamento de banda, que é realizado de acordo com um valor de pixel do pixel alvo para classificação. O deslocamento de borda é um deslocamento realizado de acordo com uma borda, e o deslocamento de banda é um deslocamento realizado de acordo com um valor de pixel.
[0126] Na descrição a seguir, o uso do método de classificação de pixel do deslocamento de borda é descrito como aquele em que o método de classificação de pixel é o deslocamento de borda, ou como com o uso do deslocamento de borda para o método de classificação de pixel, em alguns casos. Do mesmo modo, o uso do método de classificação de pixel do deslocamento de banda é descrito como aquele em que o método de classificação de pixel é o deslocamento de banda, ou como com o uso do deslocamento de banda para o método de classificação de pixel, em alguns casos.
[0127] A Figura 3 é uma vista esquemática que ilustra um exemplo do método de classificação de pixel com o uso do deslocamento de borda. No deslocamento de borda, a classificação é realizada com o uso de uma relação de magnitude entre um pixel atual c a ser classificado e pixels adjacentes c1 e c2, localizados à esquerda e à direita, respectivamente, do pixel c.
[0128] A Figura 4 é uma vista esquemática que ilustra um exemplo de classificação de um bloco a ser processado em cinco categorias pelo deslocamento de borda. Por exemplo, quando um valor de pixel de c é maior do que um valor de pixel de c1 e igual a um valor de pixel de c2, o pixel atual é classificado em uma categoria 3 e um valor de deslocamento Offset 3 atribuído à categoria 3 é adicionado.
[0129] Além disso, conforme ilustrado na Figura 5, pixels que são comparados ao pixel alvo a ser classificado no deslocamento de borda são pixels adjacentes de direita e esquerda (EO (0)), pixels adjacentes superior e inferior (EO (1)), pixels adjacentes de modo oblíquo (EO (2) ou EO (3)), uma combinação dos mesmos (EO (4) ou EO (5)), e assim em diante.
[0130] A Figura 6 é uma vista esquemática que ilustra um exemplo do método de classificação de pixel com o uso do deslocamento de banda. Aqui, gradações nas quais o valor de pixel atual a ser processado possivelmente toma são divididos igualmente em M. M é 32, por exemplo. Os segmentos de gradação que resultam da divisão representam categorias. O pixel atual a ser processado é classificado em uma categoria na qual o valor de pixel é incluído.
[0131] A Figura 7 é uma vista esquemática que ilustra um exemplo de classificação de blocos a serem processado em 16 classes pelo deslocamento de banda. Por exemplo, quando um valor de pixel de c é maior do que ou igual a R9 e menor do que R10, o pixel atual a ser processado é classificado em uma categoria 9 e um valor de deslocamento Offset 9 atribuído à categoria 9 é adicionado.
[0132] Além disso, não é necessário alocar um valor de desloca mento para todas as categorias e, conforme ilustrado na Figura 8, o aparelho de codificação de imagem 100 é capaz de codificar apenas o valor de deslocamento para uma categoria que tem um efeito de deslocamento alto. Nesse momento, o aparelho de codificação de imagem 100 codifica juntos um número de índice de categoria que indica uma categoria do valor de deslocamento codificado.
[0133] Além disso, um deslocamento adaptativo de amostra (SAO) determina um método de classificação de pixel ótimo e um valor de deslocamento ótimo para uma unidade de uma região alvo a ser processada que é obtida dividindo-se hierarquicamente um bloco, conforme ilustrado na Figura 9A. a Figura 9B ilustra um exemplo de um padrão de divisão.
[0134] A Figura 10 é um diagrama de blocos que ilustra um exem plo de uma configuração da unidade de filtragem de laço 128 no aparelho de codificação de imagem 100 de acordo com essa modalidade.
[0135] A unidade de filtragem de laço 128 inclui: uma unidade de obtenção de sinal 151; um unidade de cálculo de informações de deslocamento 152; uma unidade de processamento de deslocamento 153; uma unidade de codificação de informações de deslocamento 154; e uma unidade de emissão de sinal 155.
[0136] A unidade de obtenção de sinal 151 obtém um sinal de pixel reconstruído em uma região alvo a ser processada.
[0137] A unidade de cálculo de informações de deslocamento 152 calcula informações de deslocamento para uso em processamento de deslocamento, como um padrão de divisão, um método de classificação de pixel, um valor de deslocamento, e assim em diante.
[0138] A unidade de processamento de deslocamento 153 classifi ca, nas categorias, pixels em uma região alvo a ser processada com o uso das informações de deslocamento, e realiza processamento de deslocamento para cada uma das categorias.
[0139] A unidade de codificação de informações de deslocamento 154 emite as informações de deslocamento para a unidade de codificação de entropia 124 ilustrada na Figura 1. Deve ser notado que a unidade de codificação de informações de deslocamento 154 pode codificar as informações de deslocamento. Além disso, a unidade de codificação de informações de deslocamento 154 pode ser incluída na unidade de codificação de entropia 124.
[0140] A unidade de emissão de sinal 155 emite um sinal de pixel na região alvo, na qual o processamento de deslocamento é realizado.
[0141] A Figura 11 é um diagrama de blocos que ilustra um exem plo de uma configuração da unidade de filtragem de laço 228 no aparelho de decodificação de imagem 200 de acordo com essa modalidade.
[0142] A unidade de filtragem de laço 228 inclui: uma unidade de obtenção de sinal 251; uma unidade de decodificação de informações de deslocamento 252; uma unidade de processamento de deslocamento 253; e uma unidade de emissão de sinal 254.
[0143] A unidade de obtenção de sinal 251 obtém um sinal de pixel reconstruído em uma região alvo a ser processada.
[0144] A unidade de decodificação de informações de desloca mento 252 obtém as informações de deslocamento para uso no processamento de deslocamento, como o padrão de divisão, o método de classificação de pixel, o valor de deslocamento, e assim em diante. Deve ser notado que a unidade de decodificação de informações de deslocamento 252 pode decodificar as informações de deslocamento. Além disso, a unidade de decodificação de informações de deslocamento 252 pode ser incluída na unidade de decodificação de entropia 224.
[0145] A unidade de processamento de deslocamento 253 classifi ca, em categorias, pixels em uma região alvo a ser processada com o uso das informações de deslocamento, e realiza o processamento de deslocamento para cada uma das categorias.
[0146] A unidade de emissão de sinal 254 emite um sinal de pixel na região alvo, na qual o processamento de deslocamento é realizado.
[0147] A Figura 12 é um fluxograma que ilustra operações realiza das principalmente pela unidade de filtragem de laço 128 ilustrada na Figura 10, do aparelho de codificação de imagem 100 ilustrado na Figura 1.
[0148] Primeiro, a unidade de obtenção de sinal 151 obtém, a par tir do adicionador 127, um sinal de pixel reconstruído em uma região alvo a ser processada. A seguir, a unidade de cálculo de informações de deslocamento 152 calcula as informações de deslocamento para uso no processamento de deslocamento, como o padrão de divisão, o método de classificação de pixel, o valor de deslocamento, e assim em diante (S152). A seguir, a unidade de processamento de deslocamento 153 divide a região com base nas informações de deslocamento, classifica pixels na região divisória em categorias, e adiciona um valor de deslocamento para cada uma das categorias (S153).
[0149] A seguir, a unidade de codificação de informações de des locamento 154 emite, para a unidade de codificação de entropia 124, as informações de deslocamento como o padrão de divisão, o método de classificação de pixel, um número de índice de categoria, o valor de deslocamento, e assim em diante. A unidade de codificação de entro- pia 124 codifica as informações de deslocamento, e insere as informações de deslocamento codificadas em um fluxo codificado (S154). Deve ser notado que a unidade de codificação de informações de deslocamento 154 pode codificar as informações de deslocamento e inserir as informações de deslocamento codificadas no fluxo codificado.
[0150] A seguir, a unidade de emissão de sinal 155 emite, para a unidade de armazenamento 129, um sinal de pixel na região alvo, no qual o processamento de deslocamento é realizado (S155).
[0151] A Figura 13 é um fluxograma que ilustra operações realiza das pela unidade de filtragem de laço 228 ilustrada na Figura 11, do aparelho de decodificação de imagem 200 ilustrado na Figura 2.
[0152] Primeiro, a unidade de obtenção de sinal 251 obtém, do adicionador 227, um sinal de pixel reconstruído em uma região alvo a ser processada (S251).
[0153] A seguir, a unidade de decodificação de entropia 224 deco difica, do fluxo codificado, as informações de deslocamento, como o padrão de divisão, o método de classificação de pixel, o número de índice de categoria, o valor de deslocamento, e assim em diante, e a unidade de decodificação de informações de deslocamento 252 obtém as informações de deslocamento decodificadas (S252). Deve ser notado que a unidade de decodificação de informações de deslocamento 252 pode decodificar as informações de deslocamento do fluxo codificado.
[0154] A seguir, a unidade de processamento de deslocamento 253 divide a região com base nas informações de deslocamento, classifica pixels na região divisória em categorias, e adiciona um valor de deslocamento para cada uma das categorias (S253). A seguir, a unidade de emissão de sinal 254 emite, para a unidade de armazenamento 229, um sinal de pixel na região alvo, na qual o processamento de deslocamento é realizado (S254).
[0155] Aqui, a codificação e decodificação das informações de deslocamento na unidade de codificação de informações de deslocamento 154 e na unidade de decodificação de informações de deslocamento 252 serão descritas em maiores detalhes. Os métodos de classificação de pixel no processamento de deslocamento incluem, por exemplo, cinco tipos de métodos de EO(0), EO(1), EO(2), e EO(3) para o deslocamento de borda, e BO(0) para o deslocamento de banda.
[0156] A Figura 14 ilustra um exemplo de alocar números de índice que ilustram os respectivos métodos de classificação de pixel. Na Figura 14, os números de índice são, cada um, binarizados de modo que um pequeno valor tenha uma comprimento de bit pequeno e um grande valor tenha um comprimento de bit grande, e o comprimento de bit máximo é especificado como cinco bits. Entretanto, o método de alocação não é limitado a isso. Por exemplo, o comprimento de bit máximo pode não ser especificado e, ao invés disso, todos os números de índice podem ser atribuídos a bits, de modo que o último bit seja 0.
[0157] Além disso, informações que indicam que o processamento de deslocamento não deve ser realizado em um bloco atual a ser processado é atribuído ao número de índice 0.
[0158] O aparelho de codificação de imagem 100 de acordo com a Modalidade 1 gera um fluxo codificado por codificação de vídeo. Conforme ilustrado na Figura 15, o fluxo codificado inclui uma porção de cabeçalho, como SPS (Conjunto de Parâmetro de Sequência), PPS (Conjunto de Parâmetro de Figuração), e assim em diante, e dados de figuração que são dados de imagem codificados.
[0159] Os dados de figuração incluem ainda um cabeçalho de fatia (SH) e dados fatiados. Os dados fatiados incluem dados de imagem codificados incluídos em uma fatia. Os dados fatiados incluem ainda um cabeçalho de bloco (BH) e dados de bloco. Os dados de bloco incluem dados de imagem codificados incluídos em um bloco.
[0160] Adicionalmente, o fluxo codificado inclui APS (Conjunto de Parâmetro de Adaptação), no qual um parâmetro a ser usado em outra ou mais fatias é armazenado além do citado acima. Um número de índice aps_idx é atribuído a APS, e o aparelho de codificação de imagem 100 pode inserir, no cabeçalho de fatia, o número de índice aps_idx para chamar o APS a ser usado.
[0161] As informações de deslocamento são codificadas pela uni dade de codificação de informações de deslocamento 154 (ou a unidade de codificação de entropia 124), e inseridas em qualquer um de SPS, PPS, SH, dados fatiados, BH, dados de bloco, e APS. Além disso, as informações de deslocamento são obtidas a partir de qualquer um de SPS, PPS, SH, dados fatiados, BH, dados de bloco, e APS, e decodificadas pela unidade de decodificação de informações de deslocamento 252 (ou a unidade de decodificação de entropia 224).
[0162] Exemplos de inserção das informações de deslocamento em APS são mostrados na Figura 16A, Figura 16B, e Figura 16C. O aparelho de codificação de imagem 100 é capaz de inserir coletivamente as informações de deslocamento de todos os blocos em uma fatia, e o aparelho de decodificação de imagem 200 é capaz de obter coletivamente as informações de deslocamento de APS.
[0163] Exemplos de inserção das informações de deslocamento em dados fatiados são mostrados na Figura 17A, Figura 17B, e Figura 17C. O aparelho de codificação de imagem 100 é capaz de inserir as informações de deslocamento em uma base de bloco-por-bloco em dados fatiados, e o aparelho de decodificação de imagem 200 é capaz de obter as informações de deslocamento em uma base de bloco-por- bloco em dados fatiados.
[0164] De acordo com essa modalidade, as informações de deslo camento podem ser compartilhadas entre uma pluralidade de regiões alvo a serem processadas no aparelho de codificação de imagem 100 (o aparelho de decodificação de imagem 200), conforme mostrado na Figura 18. As linhas sólidas na Figura 18 mostram limites de segmento de regiões alvo para o processamento de deslocamento, e as linha pontilhadas mostram limites de segmento de regiões entre as quais as informações de deslocamento são compartilhadas. Aqui, o aparelho de codificação de imagem 100 insere, em um fluxo codificado, não informações de deslocamento que indicam um valor de deslocamento e similares, mas informações que indicam o compartilhamento de um valor de deslocamento e similares, suprimindo, assim, o aumento em uma quantidade de bit causada por processamento de deslocamento.
[0165] Por exemplo, o aparelho de codificação de imagem 100 po de codificar um sinalizador que indica que as informações de deslocamento são compartilhadas entre todos os blocos em uma fatia, como sao_one_lima_unit_flag, sao_one_cr_unit_flag, e sao_one_cb_unit_flag na Figura 16A. Além disso, o aparelho de codificação de imagem 100 pode codificar um sinalizador que indica que as informações de deslocamento para uma única linha devem ser copiadas a partir de uma linha imediatamente acima, como sao_repeat_row_flag na Figura 16A.
[0166] Adicionalmente, o aparelho de codificação de imagem 100 pode codificar um parâmetro que indica o número de regiões alvo a serem processadas entre as quais as informações de deslocamento são compartilhadas, como saoRun e sao_run_diff na Figura 16B. Além disso, o aparelho de codificação de imagem 100 pode codificar sao_merge_left_flag ou sao_merge_up_flag, que indica que informações de deslocamento devem ser copiadas da região localizada à esquerda ou a região localizada acima, como na Figura 16B e Figura 17B.
[0167] A Figura 19 é um fluxograma que indica uma operação de codificação, entre itens das informações de deslocamento, um número de índice que indica um método de classificação de pixel, realizado pela unidade de codificação de informações de deslocamento 154.
[0168] Primeiro, a unidade de codificação de informações de des locamento 154 determina se o processamento de deslocamento é realizado, ou não (S1541). A unidade de cálculo de informações de deslocamento 152 calcula informações de deslocamento, como padrão de divisão, um método de classificação de pixel, um número de índice de categoria, um valor de deslocamento, e assim em diante. A unidade de cálculo de informações de deslocamento 152 determina que o processamento de deslocamento não deve ser realizado quando a quantidade de bit exigida para as informações de deslocamento é maior do que uma quantidade de correção de deterioração de codificação. Nesse caso, a unidade de processamento de deslocamento 153 não desempenha o processamento de deslocamento.
[0169] Aqui, a unidade de codificação de informações de desloca mento 154 obtém informações sobre se o processamento de deslocamento foi realizado, ou não, a partir da unidade de cálculo de informações de deslocamento 152 ou da unidade de processamento de deslocamento 153. Quando o processamento de deslocamento não foi realizado (No in S1541), a unidade de codificação de informações de deslocamento 154 codifica o número de índice 0 que indica o método de classificação de pixel (S1542).
[0170] Quando o processamento de deslocamento é realizado (Sim em S1541), a unidade de codificação de informações de deslocamento 154 determina se o método de classificação de pixel é o deslocamento de borda EO(0), ou não (S1543). Quando o método de classificação de pixel é o deslocamento de borda EO(0) (Sim em S1543), a unidade de codificação de informações de deslocamento 154 codifica o número de índice 1 que indica o método de classificação de pixel (S1544).
[0171] Quando o método de classificação de pixel não é o deslo camento de borda EO(0) (No in S1543), a unidade de codificação de informações de deslocamento 154 determina se o método de classificação de pixel é o deslocamento de borda EO(1), ou não (S1545). Quando o método de classificação de pixel é o deslocamento de borda EO(1) (Sim em S1545), a unidade de codificação de informações de deslocamento 154 codifica o número de índice 2 que indica o método de classificação de pixel (S1546).
[0172] Quando o método de classificação de pixel não é o deslo camento de borda EO(1) (Não em S1545), a unidade de codificação de informações de deslocamento 154 determina se o método de classificação de pixel é o deslocamento de borda EO(2), ou não (S1547). Quando o método de classificação de pixel é o deslocamento de borda EO(2) (Sim em S1547), a unidade de codificação de informações de deslocamento 154 codifica o número de índice 3 que indica o método de classificação de pixel (S1548).
[0173] Quando o método de classificação de pixel não é o deslo camento de borda EO(2) (Não em S1547), a unidade de codificação de informações de deslocamento 154 determina se o método de classificação de pixel é o deslocamento de borda EO(3), ou não (S1549). Quando o método de classificação de pixel é o deslocamento de borda EO(3) (Sim em S1549), a unidade de codificação de informações de deslocamento 154 codifica o número de índice 4 que indica o método de classificação de pixel (S1550).
[0174] Quando o método de classificação de pixel não é o deslo camento de borda EO(3) (Não em S1549), a unidade de codificação de informações de deslocamento 154 codifica o número de índice 5 que indica o método de classificação de pixel (S1551).
[0175] A Figura 20 é um fluxograma que indica uma operação rea lizada pela unidade de decodificação de informações de deslocamento 252 para decodificar, entre itens das informações de deslocamento, um número de índice que indica o método de classificação de pixel, e uma operação realizada pela unidade de processamento de deslocamento 253 para realizar processamento de deslocamento.
[0176] Primeiro, a unidade de processamento de deslocamento 253 determina se o número de índice decodificado pela unidade de decodificação de informações de deslocamento 252 é 0, ou não (S2521). Quando o número de índice é 0 (Sim em S2521), a unidade de processamento de deslocamento 253 não desempenha o processamento de deslocamento (S2522).
[0177] Quando o número de índice não é 0 (Não em S2521), a unidade de processamento de deslocamento 253 determina se o número de índice decodificado pela unidade de decodificação de informações de deslocamento 252 é 1, ou não (S2523). Quando o número de índice é 1 (Sim em S2523), a unidade de processamento de deslocamento 253 realiza o deslocamento de borda EO(0) (S2524).
[0178] Quando o número de índice não é 1 (Não em S2523), a unidade de processamento de deslocamento 253 determina se o número de índice decodificado pela unidade de decodificação de informações de deslocamento 252 é 2, ou não (S2525). Quando o número de índice é 2 (Sim em S2525), a unidade de processamento de deslocamento 253 realiza o deslocamento de borda EO(1) (S2526).
[0179] Quando o número de índice não é 2 (Não em S2525), a unidade de processamento de deslocamento 253 determina se o número de índice decodificado pela unidade de decodificação de informações de deslocamento 252 é 3, ou não (S2527). Quando o número de índice é 3 (Sim em S2527), a unidade de processamento de deslocamento 253 realiza o deslocamento de borda EO(2) (S2528).
[0180] Quando o número de índice não é 3 (Não em S2527), a unidade de processamento de deslocamento 253 determina se o nú- mero de índice decodificado pela unidade de decodificação de informações de deslocamento 252 é 4, ou não (S2529). Quando o número de índice é 4 (Sim em S2529), a unidade de processamento de deslocamento 253 realiza o deslocamento de borda EO(3) (S2530).
[0181] Quando o número de índice não é 4 (Não em S2529), a unidade de processamento de deslocamento 253 realiza o deslocamento de banda BO(0) (S2531).
[0182] Através dos processos descritos acima, o aparelho de codi ficação de imagem 100 e o aparelho de decodificação de imagem 200 adicionam, a um sinal de imagem reconstruída, um valor de deslocamento para compensar a diferença entre um sinal original e o sinal de imagem reconstruída. Isso torna possível gerar um sinal reconstruído similar a um sinal original.
(Modalidade 2)
[0183] De acordo com a Modalidade 1, é possível compartilhar in formações de deslocamento dentre uma pluralidade de regiões. No entanto, tendo em vista a redução do atraso de processamento ou a redução da quantidade de memória, as regiões a serem compartilhadas se limitam àquelas adjacentes. Por exemplo, o atraso de processamento é reduzido limitando-se as regiões a serem compartilhadas às regiões adjacentes à esquerda e acima. Além disso, a quantidade de memória para o armazenamento de informações de deslocamento em uma região processada é reduzida limitando-se as regiões a serem compartilhadas à região adjacente à esquerda.
[0184] Por outro lado, a limitação das regiões a serem compartilha das dificulta o compartilhamento de informações de deslocamento em uma grande região. É por esta razão que a frequência de codificação das informações de deslocamento aumenta e a quantidade de bit aumenta. Aqui, conforme mostrado na Figura 16C ou Figura 17C, no deslocamento de banda, uma categoria de início de codificação de deslo- camento de banda sao_band_position é codificada como um parâmetro. Dessa forma, a quantidade de bits é maior que aquela do deslocamento de borda. Consequentemente, em termos de aumento da quantidade de bits, é mais vantajoso usar o deslocamento de borda.
[0185] Em vista do exposto acima, o aparelho de codificação de imagem de acordo com essa modalidade reduz a quantidade de bits necessária para o uso com o deslocamento de banda, a fim de corrigir desvantagens do deslocamento de banda em comparação ao deslocamento de borda. Deve ser observado que a categoria de início de codificação de deslocamento de banda sao_band_position é um exemplo de informações que indicam um escopo de aplicação do valor de deslocamento.
[0186] O que se segue descreve um aparelho de codificação de imagem de acordo com a presente modalidade e um aparelho de de- codificação de imagem que corresponde ao aparelho de codificação de imagem.
[0187] A Figura 21 é um diagrama de blocos que ilustra uma confi guração de uma unidade de filtragem de laço no aparelho de codificação de imagem de acordo com essa modalidade. Outra configuração do aparelho de codificação de imagem de acordo com essa modalidade é substancialmente equivalente à configuração do aparelho de codificação de imagem 100 ilustrado na Figura 1. A Figura 22 é um diagrama de blocos que ilustra uma configuração de uma unidade de filtragem de laço no aparelho de decodificação de imagem de acordo com essa modalidade. Outra configuração do aparelho de decodifica- ção de imagem de acordo com essa modalidade é substancialmente equivalente à configuração do aparelho de decodificação de imagem 200 ilustrado na Figura 2.
[0188] A Figura 23 é um fluxograma que ilustra as operações reali zadas por uma unidade de filtragem de laço 300 (uma unidade de fil- tragem de laço do aparelho de codificação de imagem) ilustrada na Figura 21. A Figura 24 é um fluxograma que ilustra as operações realizadas por uma unidade de filtragem de laço 400 (ima unidade de filtragem de laço do aparelho de decodificação de imagem) ilustrada na Figura 22.
[0189] Em primeiro lugar, serão descritas a configuração e a ope ração da unidade de filtragem de laço 300 (a unidade de filtragem de laço do aparelho de codificação de imagem) ilustrada na Figura 21. A unidade de filtragem de laço 300 inclui: uma unidade de obtenção de sinal 301; uma unidade de cálculo de informações de deslocamento 302; uma unidade de processamento de deslocamento 303; uma unidade de emissão de sinal 304; uma unidade de codificação de informações de deslocamento 305; e uma unidade de controle 306. A descrição para as porções sobrepostas à Modalidade 1 será omitida e para as diferenças; ou seja, a unidade de controle 306 na Figura 21, a unidade de codificação de informações de deslocamento 305 na Figura 21 e a Etapa S304 na Figura 23 serão descritas.
[0190] A unidade de controle 306 controla a unidade de codifica ção de informações de deslocamento 305 a fim de reduzir a quantidade de bits das informações de deslocamento do deslocamento de banda, quando o método de classificação de pixel é o deslocamento de banda.
[0191] A unidade de codificação de informações de deslocamento 305 realiza a codificação para reduzir o valor numérico do número do índice que indica que o método de classificação de pixel é o deslocamento de banda.
[0192] Na Etapa S304 da Figura 23, a unidade de codificação de informações de deslocamento 305 aloca um número do índice para o método de classificação de pixel e codifica as informações de deslocamento. Neste instante, a unidade de codificação de informações de deslocamento 305 aloca o número do índice de modo que o número do índice que indica o deslocamento de banda BO(0) seja menor que quatro deslocamentos de borda EO(0), EO(1), EO(2) e EO(3). Então, a unidade de codificação de informações de deslocamento 305 insere as informações de deslocamento codificadas no fluxo codificado.
[0193] Posteriormente, serão descritas a configuração e a opera ção da unidade de filtragem de laço 400 (a unidade de filtragem de laço do aparelho de decodificação de imagem) ilustrada na Figura 22. A unidade de filtragem de laço 400 inclui: uma unidade de obtenção de sinal 401; uma unidade de decodificação de informações de deslocamento 402; uma unidade de processamento de deslocamento 403; uma unidade de emissão de sinal 404; e uma unidade de controle 405. A descrição para porções sobrepostas à Modalidade 1 será omitida, e para as diferenças; ou seja, a unidade de controle 405 na Figura 22, a unidade de decodificação de informações de deslocamento 402 na Figura 22 e a Etapa S402 na Figura 24 serão descritas.
[0194] A unidade de controle 405 controla a unidade de decodifi- cação de informações de deslocamento 402 de modo que as informações de deslocamento do deslocamento de banda sejam decodificadas com uma pequena quantidade de bits quando o método de classificação de pixel é o deslocamento de banda.
[0195] A unidade de decodificação de informações de desloca mento 402 decodifica o número do índice com um pequeno valor numérico, conforme um número do índice que indica que o método de classificação de pixel é o deslocamento de banda.
[0196] Na Etapa S402 da Figura 24, a unidade de decodificação de informações de deslocamento 402 atribui um número do índice ao método de classificação de pixel e decodifica as informações de deslocamento. Neste instante, a unidade de decodificação de informações de deslocamento 402 aloca o número do índice de modo que o núme- ro do índice que indica o deslocamento de banda BO(0) seja menor que os quatro deslocamentos de borda EO(0), EO(1), EO(2) e EO(3).
[0197] Aqui, a codificação e a descodificação das informações de deslocamento realizadas pela unidade de codificação de informações de deslocamento 305 e pela unidade de decodificação de informações de deslocamento 402 serão descritas em maiores detalhes. Para os métodos de classificação de pixel no processamento de deslocamento, os deslocamentos de borda EO(0), EO(1), EO(2) e EO(3) e o deslocamento de banda BO(0) são empregados como com a Modalidade 1. Nesse caso, a diferença entre a menor quantidade de bits e a maior quantidade de bits que corresponde ao número do índice que indica o método de classificação de pixel é de três bits, exceto o número do índice 0 para o caso quando o processamento de deslocamento não é realizado.
[0198] Na Modalidade 1, a maior quantidade de bits é atribuída ao deslocamento de banda conforme mostrado na Figura 14. Quando o número de categorias do deslocamento de banda é 32, é gerada uma diferença de no máximo oito bits e pelo menos cinco bits incluindo sao_band_position entre o deslocamento de banda e o deslocamento de borda.
[0199] Por esta razão, de acordo com essa modalidade, um bit menor que aquele no caso do deslocamento de borda é atribuído ao número do índice que indica o deslocamento de banda conforme mostrado na Figura 25. Com isso, a diferença da quantidade de bits entre o deslocamento de banda e o deslocamento de borda é no máximo quatro bits e pelo menos dois bits, corrigindo as desvantagens do deslocamento de banda em comparação ao deslocamento de borda.
[0200] Deve ser observado que, conforme mostrado na Figura 26, um sinalizador de LIGADO/DESLIGADO de processamento de deslocamento (um sinalizador de processamento de deslocamento) pode ser independente, como sao_on_flag, do número do índice sao_type_idx que indica o método de classificação de pixel.
[0201] Na Figura 26, o deslocamento de banda é atribuído ao nú mero do índice 0. Os números do índice são, cada um, binarizados de modo que um pequeno valor tenha um pequeno comprimento de bit e um grande valor tenha um grande comprimento de bit e o comprimento máximo de bit seja especificado como quatro bits. No entanto, o método de atribuição não se limita ao que foi disposto acima. Por exemplo, o comprimento máximo de bit pode não ser especificado e, ao invés disso, todos os números do índice podem ser atribuídos a bits de modo que o último bit seja 0. Subsequentemente, a descrição será dada com base na atribuição de bit mostrada na Figura 26.
[0202] Exemplos de inserção das informações de deslocamento em APS são mostrados nas Figuras 27A e 27B. O sinalizador de LI- GADO/DESLIGADO de processamento de deslocamento sao_on_flag que é independente do índice que indica o método de classificação de pixel é novamente fornecido na sao_unit_vlc mostrada na Figura 27A. Além disso, o menor bit é atribuído ao deslocamento de banda em sao_type_idx de sao_offset_vlc na Figura 27B.
[0203] A Figura 27C é um diagrama que mostra um exemplo a contextos de informações de deslocamento em APS. A Figura 27D é um fluxograma que mostra um exemplo de codificação das informações de deslocamento em APS. A Figura 27E é um fluxograma que mostra um exemplo de decodificação das informações de deslocamento em APS.
[0204] Além disso, os Exemplos de inserção das informações de deslocamento em dados fatiados são mostrados nas Figuras 28A e 28B. O sinalizador de LIGADO/DESLIGADO de processamento de deslocamento sao_on_flag é novamente fornecido em sao_unit_cabac mostrada na Figura 28A. Além disso, o menor bit é atribuído ao deslo- camento de banda em sao_type_idx de sao_offset_cabac mostrada na Figura 28B.
[0205] A Figura 28C é uma vista esquemática que ilustra um exemplo a contextos de informações de deslocamento em dados fatiados. A Figura 28D é um fluxograma que mostra um exemplo de codificação das informações de deslocamento em dados fatiados. A Figura 28E é um fluxograma que mostra um exemplo de decodificação das informações de deslocamento em dados fatiados.
[0206] A Figura 29 é um fluxograma que indica uma operação de codificação, dentre os itens de informações de deslocamento, um número do índice que indica um método de classificação de pixel, realizada pela unidade de codificação de informações de deslocamento 305.
[0207] Em primeiro lugar, a unidade de codificação de informações de deslocamento 305 determina se o processamento de deslocamento é realizado, ou não (S3051). A unidade de cálculo de informações de deslocamento 302 calcula as informações de deslocamento, como o padrão de divisão, o método de classificação de pixel, o número do índice de categoria, o valor de deslocamento, e assim em diante. A unidade de cálculo de informações de deslocamento 302 determina que o processamento de deslocamento não deve ser realizado quando a quantidade de bits necessária para as informações de deslocamento é maior que uma quantidade de correção de deterioração de codificação. Nesse caso, a unidade de processamento de deslocamento 303 não realiza o processamento de deslocamento.
[0208] Aqui, a unidade de codificação de informações de desloca mento 305 obtém informações se o processamento de deslocamento foi realizado ou não, da unidade de cálculo de informações de deslocamento 302 ou da unidade de processamento de deslocamento 303. Quando o processamento de deslocamento não foi realizado (Não em S3051), a unidade de codificação de informações de deslocamento 305 codifica o sinalizador de LIGADO/DESLIGADO de processamento de deslocamento como 0 (S3052).
[0209] Quando o processamento de deslocamento foi realizado (Sim em S3051), a unidade de codificação de informações de deslocamento 305 codifica o sinalizador de LIGADO/DESLIGADO de processamento de deslocamento como 1 (S3053). Então, a unidade de codificação de informações de deslocamento 305 determina se o método de classificação de pixel é, ou não, o deslocamento de banda BO(0) (S3054).
[0210] Quando o método de classificação de pixel é o desloca mento de banda BO(0) (Sim em S3054), a unidade de codificação de informações de deslocamento 305 codifica o número do índice 0 que indica o método de classificação de pixel (S3055). Quando o método de classificação de pixel não é o deslocamento de banda BO(0) (NÃO em S3054), a unidade de codificação de informações de deslocamento 305 determina se o método de classificação de pixel é, ou não, o deslocamento de borda EO(0) (S3056).
[0211] Quando o método de classificação de pixel é o desloca mento de borda EO(0) (Sim em S3056), a unidade de codificação de informações de deslocamento 305 codifica o número do índice 1 que indica o método de classificação de pixel (S3057). Quando o método de classificação de pixel não é o deslocamento de borda EO(0) (NÃO em S3056), a unidade de codificação de informações de deslocamento 305 determina se o método de classificação de pixel é, ou não, o deslocamento de borda EO(1) (S3058).
[0212] Quando o método de classificação de pixel é o desloca mento de borda EO(1) (Sim em S3058), a unidade de codificação de informações de deslocamento 305 codifica o número do índice 2 que indica o método de classificação de pixel (S3059). Quando o método de classificação de pixel não é o deslocamento de borda EO(1) (NÃO em S3058), a unidade de codificação de informações de deslocamento 305 determina se o método de classificação de pixel é, ou não, o deslocamento de borda EO(2) (S3060).
[0213] Quando o método de classificação de pixel é o desloca mento de borda EO(2) (Sim em S3060), a unidade de codificação de informações de deslocamento 305 codifica o número do índice 3 que indica o método de classificação de pixel (S3061). Quando o método de classificação de pixel não é o deslocamento de borda EO(2) (Não em S3060), a unidade de codificação de informações de deslocamento 305 codifica o número do índice 4 que indica o método de classificação de pixel (S3062).
[0214] A Figura 30 é um fluxograma que indica uma operação rea lizada pela unidade de decodificação de informações de deslocamento 402 para decodificar, dentre os itens das informações de deslocamento, o número do índice que indica o método de classificação de pixel e uma operação realizada pela unidade de processamento de deslocamento 403 para realizar o processamento de deslocamento.
[0215] Em primeiro lugar, a unidade de processamento de deslo camento 403 determina se o sinalizador de LIGADO/DESLIGADO de processamento de deslocamento decodificado pela unidade de decodi- ficação de informações de deslocamento 402 é, ou não, 0 (S4021). Quando o sinalizador de LIGADO/DESLIGADO de processamento de deslocamento é 0 (Sim em S4021), a unidade de processamento de deslocamento 403 não realiza o processamento de deslocamento (S4022).
[0216] Quando o sinalizador de LIGADO/DESLIGADO de proces samento de deslocamento não é 0 (Não em S4021), a unidade de de- codificação de informações de deslocamento 402 decodifica o número do índice (S4023). Então, a unidade de processamento de desloca- mento 403 determina se o número do índice decodificado pela unidade de decodificação de informações de deslocamento 402 e, ou não, 0 (S4024).
[0217] Quando o número do índice é 0 (Sim em S4024), a unidade de processamento de deslocamento 403 realiza o deslocamento de banda BO(0) (S4025). Quando o número do índice não é 0 (Não em S4024), a unidade de processamento de deslocamento 403 determina se o número do índice decodificado pela unidade de decodificação de informações de deslocamento 402 é, ou não, 1 (S4026).
[0218] Quando o número do índice é 1 (Sim em S4026), a unidade de processamento de deslocamento 403 realiza o deslocamento de borda EO(0)) (S4027). Quando o número do índice não é 1 (Não em S4026), a unidade de processamento de deslocamento 403 determina se o número do índice decodificado pela unidade de decodificação de informações de deslocamento 402 é, ou não, 2 (S4028).
[0219] Quando o número do índice é 2 (Sim em S4028), a unidade de processamento de deslocamento 403 realiza o deslocamento de borda EO(1) (S4029). Quando o número do índice não é 2 (Não em S4028), a unidade de processamento de deslocamento 403 determina se o número do índice decodificado pela unidade de decodificação de informações de deslocamento 402 é, ou não, 3 (S4030).
[0220] Quando o número do índice é 3 (Sim em S4030), a unidade de processamento de deslocamento 403 realiza o deslocamento de borda EO(2) (S4031). Quando o número do índice não é 3 (Não em S4030), a unidade de processamento de deslocamento 403 realiza o deslocamento de borda EO(3) (S4032).
[0221] Através dos processos descritos acima, o aparelho de codi ficação de imagem e o aparelho de decodificação de imagem reduzem a diferença na quantidade de bits necessária para a codificação das informações de deslocamento entre o deslocamento de banda e o des- locamento de borda. Isso permite que o aparelho de codificação de imagem e o aparelho de decodificação de imagem realizem processamento de deslocamento apropriado para cada uma das regiões-alvo a serem processadas. Portanto, a eficiência de codificação e uma qualidade de imagem subjetiva são aprimoradas.
[0222] Deve ser observado que o aparelho de codificação de ima gem e o aparelho de decodificação de imagem podem atribuir uma pequena quantidade de bits a um número do índice do deslocamento de borda quando o processamento de deslocamento é realizado em um sinal luma. Além disso, o aparelho de codificação de imagem e o aparelho de decodificação de imagem podem atribuir uma pequena quantidade de bits a um número do índice do deslocamento de banda quando o processamento de deslocamento é realizado a um sinal croma. Isso facilita o uso do método de classificação de pixel que é mais adequado ao recurso do sinal a ser processado. Portanto, a eficiência de codificação e a qualidade de imagem subjetiva são adicionalmente aprimoradas.
[0223] Além disso, o aparelho de codificação de imagem e o apa relho de decodificação de imagem podem se referir a um coeficiente de transformação de frequência e atribuir uma pequena quantidade de bits a um número do índice do deslocamento de borda em uma região a ser processada que tem um pequeno componente de baixa frequência. Além disso, o aparelho de codificação de imagem e o aparelho de decodificação de imagem podem atribuir uma pequena quantidade de bits a um número do índice do deslocamento de banda em uma região a ser processada que tem um grande componente de baixa frequência. Isso facilita o uso do método de classificação de pixel que é mais adequado ao recurso do sinal a ser processado. Portanto, a eficiência de codificação e a qualidade de imagem subjetiva são adicionalmente aprimoradas.
[0224] Além disso, para determinar se a quantidade dos compo nentes de baixa frequência descritos acima é grande ou pequena, um limiar pode ser usado, ou o limiar pode ser codificado.
[0225] Aqui, a codificação aritmética será descrita como um méto do para a codificação e a decodificação de informações de deslocamento realizadas pela unidade de codificação de informações de deslocamento 305 e pela unidade de decodificação de informações de deslocamento 402. Na codificação aritmética, o aparelho de codificação de imagem transforma, em primeiro lugar, (binariza) um sinal de fluxo a ser codificado de um sinal com múltiplos valores em um sinal binário (bin, um sinal de 0 ou 1) e realiza a codificação aritmética no sinal binário a fim de gerar um fluxo de bits. Um exemplo da codificação aritmética é a codificação aritmética adaptativa ao contexto (codificação aritmética adaptativa ao contexto) na qual a codificação aritmética é realizada com o uso de uma probabilidade de ocorrência de símbolo adaptativo.
[0226] Na codificação aritmética adaptativa ao contexto, o apare lho de codificação de imagem seleciona um contexto para cada um dos sinais a serem codificados e determina uma probabilidade de ocorrência de símbolo de acordo com o contexto. Mais especificamente, na codificação aritmética adaptativa ao contexto, o aparelho de codificação de imagem carrega, em primeiro lugar, um contexto e realiza a codificação aritmética e um sinal de fluxo a ser codificado com base em uma probabilidade de ocorrência de símbolo para o contexto. Então, o aparelho de codificação de imagem atualiza a probabilidade de ocorrência de símbolo que corresponde ao contexto de acordo com um valor do sinal de fluxo que é codificado.
[0227] Na codificação do sinalizador de LIGADO/DESLIGADO de processamento de deslocamento sao_on_flag em um sinal luma, um sinal croma Cb e um sinal croma Cr, um contexto comum pode ser usado, ou contextos podem ser mudados para cada um dos sinais conforme mostrado na Figura 27C ou 28C.
[0228] A Figura 28D é um fluxograma que mostra um exemplo de uso de três contextos quando a unidade de codificação de informações de deslocamento 305 codifica e insere em dados fatiados, o sinalizador de LIGADO/DESLIGADO de processamento de deslocamento sao_on_flag.
[0229] Em primeiro lugar, a unidade de codificação de informações de deslocamento 305 determina se um sinal de fluxo a ser processado é um sinal luma (S3041). A unidade de codificação de informações de deslocamento 305 usa cIdx ilustrado na Figura 28A para a determinação do sinal luma. Aqui, quando cIdx = 0, o sinal de fluxo é um sinal luma.
[0230] Quando o sinal de fluxo é um sinal luma (Sim em S3041), a unidade de codificação de informações de deslocamento 305 seleciona e carrega o contexto 1 (S3042). Quando o sinal de fluxo não é um sinal luma (Não em S3041), a unidade de codificação de informações de deslocamento 305 determina se o sinal de fluxo é, ou não, um sinal croma Cb (S3043). A unidade de codificação de informações de deslocamento 305 usa cIdx para a determinação do sinal croma Cb da mesma maneira que a determinação do sinal luma (S3041). Aqui, quando cIdx = 1, o sinal de fluxo é um sinal croma Cb.
[0231] Quando o sinal de fluxo é o sinal croma Cb (Sim em S3043), a unidade de codificação de informações de deslocamento 305 seleciona e carrega o contexto 2 (S3044). Quando o sinal de fluxo não é o sinal croma Cb (Não em S3043), a unidade de codificação de informações de deslocamento 305 seleciona e carrega o contexto 3 (S3045).
[0232] Então, a unidade de codificação de informações de deslo camento 305 codifica o sinalizador de LIGADO/DESLIGADO de pro- cessamento de deslocamento sao_on_flag com o uso do contexto que é selecionado e carregado (S3046).
[0233] Deve ser observado que o fluxograma ilustrado na Figura 27D que mostra um exemplo do caso em que o sinalizador de LIGA- DO/DESLIGADO de processamento de deslocamento sao_on_flag é codificado e inserido em APS é o mesmo que ilustra na Figura 28 descrita acima e, dessa forma, a descrição será omitida.
[0234] A Figura 28E é um fluxograma que mostra um exemplo do uso de três contextos quando a unidade de decodificação de informações de deslocamento 402 decodifica o sinalizador de LIGA- DO/DESLIGADO de processamento de deslocamento sao_on_flag que é inserido nos dados fatiados.
[0235] Em primeiro lugar, a unidade de decodificação de informa ções de deslocamento 402 determina se um sinal de fluxo a ser processado é um sinal luma (S4021). A unidade de decodificação de informações de deslocamento 402 usa cIdx ilustrado na Figura 28A para a determinação do sinal luma. Aqui, quando cIdx = 0, o sinal de fluxo é um sinal luma.
[0236] Quando o sinal de fluxo é um sinal luma (Sim em S4021), a unidade de decodificação de informações de deslocamento 402 seleciona e carrega o contexto 1 (S4022). Quando o sinal de fluxo não é um sinal luma (Não em S4021), a unidade de decodificação de informações de deslocamento 402 determina se o sinal de fluxo é, ou não, um sinal croma Cb (S4023). A unidade de decodificação de informações de deslocamento 402 usa cIdx para a determinação do sinal croma Cb da mesma maneira como a determinação do sinal luma (S4021). Aqui, quando cIdx = 1, o sinal de fluxo é um sinal croma Cb.
[0237] Quando o sinal de fluxo é o sinal croma Cb (Sim em S4023), a unidade de decodificação de informações de deslocamento 402 seleciona e carrega o contexto 2 (S4024). Quando o sinal de fluxo não é o sinal croma Cb (Não em S4023), a unidade de decodificação de informações de deslocamento 402 seleciona e carrega o contexto 3 (S4025).
[0238] Então, a unidade de decodificação de informações de des locamento 402 decodifica o sinalizador de LIGADO/DESLIGADO de processamento de deslocamento sao_on_flag com o uso do contexto que é selecionado e carregado (S4026).
[0239] Deve ser observado que o fluxograma ilustrado na Figura 27E que mostra um exemplo do caso em que o sinalizador de LIGA- DO/DESLIGADO de processamento de deslocamento sao_on_flag que é inserido no APS é decodificado da mesma forma conforme ilustrado na Figura 28E descrita acima e, dessa forma, a descrição será omitida.
[0240] Ao longo do processes descrito acima, o aparelho de codifi cação de imagem e o aparelho de decodificação de imagem usam um contexto diferente para cada um dentre o sinal luma, o sinal croma Cb e o sinal croma Cr, atribuindo assim a probabilidade de ocorrência de símbolo de acordo com o recurso de cada um dos sinais. Dessa forma, o aparelho de codificação de imagem e o aparelho de decodificação de imagem têm a capacidade de suprimir a quantidade de código do sinalizador de LIGADO/DESLIGADO de processamento de deslocamento sao_on_flag.
[0241] Deve ser observado que o aparelho de codificação de ima gem e o aparelho de decodificação de imagem podem reduzir o número dos contextos a serem usados para a codificação e a decodificação em dois (um sinal luma e um sinal croma) compartilhando um contexto entre os sinais croma Cb e Cr.
(Modalidade 3)
[0242] De acordo com a Modalidade 2, o aparelho de codificação de imagem codifica informações que indicam a realização, ou não, do processamento de deslocamento para cada uma das regiões a serem processadas, como o sinalizador de LIGADO/DESLIGADO de processamento de deslocamento sao_on_flag, no topo das informações de deslocamento independentemente do método de classificação de pixel sao_type_idx. Quando o processamento de deslocamento não deve ser realizado, o aparelho de codificação de imagem não realiza a codificação no sao_merge_left_flag ou no sao_merge_up_flag que indica a cópia, ou não, de informações de deslocamento de uma região à esquerda ou acima, respectivamente.
[0243] Com isso, é possível suprimir a quantidade de bits. Adicio nalmente, é possível que um aparelho de codificação de imagem de acordo com essa modalidade aprimore o rendimento através da integração ou da simplificação da codificação aritmética em cada item das informações de deslocamento.
[0244] Exemplos da codificação aritmética incluem codificação aritmética de desvio além da codificação aritmética adaptativa ao contexto descrita na Modalidade 2. A codificação aritmética adaptativa ao contexto usa a probabilidade de ocorrência de símbolo adaptativo. Por outro lado, na codificação aritmética de desvio, a codificação aritmética é realizada com o uso da probabilidade de ocorrência de símbolo que é de 50%. Com isso, o aparelho de codificação de imagem não tem que carregar e atualizar um contexto na codificação aritmética de desvio e, dessa forma, é possível acelerar os processos.
[0245] A Figura 31A ilustra um exemplo de uma combinação de tipos de codificação aritmética para o uso em cada elemento de sintaxe de informações de deslocamento.
[0246] Aqui, as sintaxes para a codificação e a decodificação de informações de deslocamento são iguais às sintaxes na Modalidade 2 ilustrada nas Figuras 28A e 28B. Além disso, a atribuição de bits ao sinalizador de LIGADO/DESLIGADO de processamento de desloca- mento sao_on_flag e ao método de classificação de pixel sao_type_idx é equivalente à atribuição de acordo com a Modalidade 2 ilustrada na Figura 26. No entanto, a atribuição de sintaxe ou um bit não se limita a isso.
[0247] Por exemplo, na Figura 28B, o sinal ± de valor de desloca mento sao_offset_sign e a categoria de início de codificação de deslocamento de banda sao_band_position são consecutivamente codificados (decodificados) a fim de suprimir o número de ramificações condicionais que correspondem a frases. No entanto, a ordem de codificação (decodificação) não se limita a isso. Além disso, na atribuição de um bit ao método de classificação de pixel sao_type_idx ilustrado na Figura 26, uma maior quantidade de bits pode ser atribuída ao deslocamento de banda.
[0248] Existe uma forte tendência na probabilidade de ocorrência de símbolo do sinalizador de LIGADO/DESLIGADO de processamento de deslocamento sao_on_flag, no sinalizador de cópia de informações de deslocamento esquerdo sao_merge_left_flag e no sinalizador de cópia de informações de deslocamento superior sao_merge_up_flag. Por esta razão, é usada a codificação aritmética adaptativa ao contexto.
[0249] Por outro lado, existe pequena tendência na probabilidade de ocorrência de símbolo do método de classificação de pixel sao_type_idx, do valor absoluto de deslocamento sao_offset, do sinal de ± valor de deslocamento sao_offset_sign e na categoria de início de codificação de deslocamento de banda sao_band_position. Por esta razão, é usada a codificação aritmética de desvio.
[0250] Deve ser observado que o aparelho de codificação de ima gem de acordo com a Modalidade 2 usa um contexto diferente de cada um dentre o sinal luma, o sinal croma Cb e o sinal croma Cr no sinalizador de LIGADO/DESLIGADO de processamento de deslocamento sao_on_flag e no sinalizador de cópia de informações de deslocamen- to esquerdo sao_merge_left_flag. Com isso, o aparelho de codificação de imagem aprimora a eficiência de codificação.
[0251] Por outro lado, conforme as informações de deslocamento descritas acima, o aparelho de codificação de imagem de acordo com essa modalidade pode compartilhar um contexto dentre o sinal luma, o sinal croma Cb e o sinal croma Cr da mesma maneira que o sinalizador de cópia de informações de deslocamento superior sao_merge_up_flag. Com isso, é possível reduzir o número de contextos e o tamanho de memória.
[0252] A Figura 31B é uma tabela que mostra um desempenho objetivo do aparelho de codificação de imagem e do aparelho de de- codificação de imagem de acordo com essa modalidade. A Figura 31B é um índice baseado em NPL 2 e mostra que há pouca deterioração no desempenho objetivo. Os detalhes do desempenho objetivo serão descritos posteriormente.
[0253] Nessa modalidade, as operações realizadas pela unidade de codificação de informações de deslocamento 305 e pela unidade de decodificação de informações de deslocamento 402 são diferentes em comparação ao aparelho de codificação de imagem e ao aparelho de decodificação de imagem descritos na Modalidade 2. Outras operações são iguais àquelas na Modalidade 2. O que segue descreve as diferenças.
[0254] A Figura 32 ilustra uma configuração de uma unidade de codificação de informações de deslocamento 307 que codifica informações de deslocamento no aparelho de codificação de imagem de acordo com essa modalidade. A unidade de codificação de informações de deslocamento 307 inclui: uma unidade de controle de codificação aritmética 3071; uma unidade de codificação aritmética adapta- tiva ao contexto 3072; e uma unidade de codificação aritmética de desvio 3073.
[0255] A unidade de controle de codificação aritmética 3071 comu ta entre a codificação aritmética adaptativa ao contexto e a codificação aritmética de desvio a ser usada de acordo com as informações de deslocamento. Deve ser observado que a unidade de controle de codificação aritmética 3071 pode ser incluída na unidade de controle 110 do aparelho de codificação de imagem 100 ilustrado na Figura 1. A unidade de codificação aritmética adaptativa ao contexto 3072 carrega um contexto de acordo com as informações de deslocamento para a realização de codificação. A unidade de codificação aritmética de desvio 3073 realiza a codificação com o uso da probabilidade de ocorrência de símbolo que é de 50%.
[0256] A Figura 33 ilustra uma configuração de uma unidade de decodificação de informações de deslocamento 406 que decodifica as informações de deslocamento no aparelho de decodificação de imagem de acordo com essa modalidade. A unidade de decodificação de informações de deslocamento 406 inclui: uma unidade de controle de decodificação aritmética 4061; uma unidade de decodificação aritmética adaptativa ao contexto 4062; e uma unidade de decodificação aritmética de desvio 4063.
[0257] A unidade de controle de decodificação aritmética 4061 comuta entre a decodificação aritmética adaptativa ao contexto (deco- dificação aritmética adaptativa ao contexto) e a decodificação aritmética de desvio a ser usada de acordo com as informações de deslocamento. Deve ser observado que a unidade de controle de decodifica- ção aritmética 4061 pode ser incluída na unidade de controle 210 do aparelho de decodificação de imagem 200 ilustrado na Figura 2. A unidade de decodificação aritmética adaptativa ao contexto 4062 carrega um contexto de acordo com as informações de deslocamento para a realização de decodificação. A unidade de decodificação aritmética de desvio 4063 realiza a decodificação com o uso da probabilidade de ocorrência de símbolo que é de 50%.
[0258] A Figura 34 é um fluxograma que ilustra um exemplo de codificação de informações de deslocamento com o uso de codificação aritmética, realizada pela unidade de codificação de informações de deslocamento 307.
[0259] Em primeiro lugar, mediante início do processamento pela unidade de codificação de informações de deslocamento 307, a unidade de controle de codificação aritmética 3071 define a codificação aritmética adaptativa ao contexto como o método de codificação (S3070).
[0260] Então, a unidade de codificação aritmética adaptativa ao contexto 3072 carrega um contexto para o sinalizador de LIGA- DO/DESLIGADO de processamento de deslocamento sao_on_flag e codifica o sinalizador de LIGADO/DESLIGADO de processamento de deslocamento sao_on_flag com o uso do contexto (S3071).
[0261] Posteriormente, a unidade de controle de codificação arit mética 3071 determina se o sinalizador de LIGADO/DESLIGADO de processamento de deslocamento sao_on_flag indica, ou não, 1 (S3072). Aqui, indica que o processamento de deslocamento não deve ser realizado na região-alvo a ser processada quando o sao_on_flag indica 0 e indica que o processamento de deslocamento deve ser realizado na região-alvo quando o sao_on_flag indica 1.
[0262] Quando o sinalizador de LIGADO/DESLIGADO de proces samento de deslocamento sao_on_flag indica 1 (Sim em S3072), a unidade de controle de codificação aritmética 3071 determina se a região-alvo está, ou não, posicionada na extremidade esquerda de uma fatia ou uma telha (S3073). As informações de deslocamento são copiadas apenas de uma região da mesma fatia e da mesma telha. Por esta razão, a determinação descrita acima é realizada antes da codificação do sinalizador de cópia de informações de deslocamento es- querdo sao_merge_left_flag.
[0263] Quando a região-alvo não está posicionada na extremidade esquerda (Não em S3073), a unidade de codificação aritmética adap- tativa ao contexto 3072 carrega um contexto para o sinalizador de cópia de informações de deslocamento esquerdo sao_merge_left_flag. Então, a unidade de codificação aritmética adaptativa ao contexto 3072 codifica o sinalizador de cópia de informações de deslocamento esquerdo sao_merge_left_flag (S3074).
[0264] Quando a região-alvo está posicionada na extremidade es querda (Sim em S3073) ou subsequentemente à codificação do sao_merge_left_flag (S3074), a unidade de controle de codificação aritmética 3071 determina se o sao_merge_left_flag é, ou não, 0 (S3075). Aqui, o sao_merge_left_flag sendo 0 indica que as informações de deslocamento não são copiadas da região esquerda e o sao_merge_left_flag sendo 1 indica que as informações de deslocamento são copiadas da região esquerda.
[0265] Deve ser observado que, quando a codificação do sao_merge_left_flag (S3074) não é realizada, um valor do sao_merge_left_flag não existe. Nesse caso, os valores do sao_merge_left_flag são processados como 0. Além disso, a unidade de codificação de informações de deslocamento 307 pode assegurar uma memória para o sao_merge_left_flag no instante de início de um processo e definir um valor inicial 0.
[0266] Posteriormente, quando o sao_merge_left_flag indica 0 (Sim em S3075), a unidade de controle de codificação aritmética 3071 determina se a região-alvo está, ou não, posicionada na extremidade superior de uma fatia ou uma telha (S3076). Visto que as informações de deslocamento são copiadas apenas de uma região na mesma fatia e na mesma telha como com a determinação da extremidade esquerda (S3073), a determinação descrita acima é realizada antes da codifi- cação do sinalizador de cópia de informações de deslocamento superior sao_merge_up_flag.
[0267] Quando a região-alvo não está posicionada na extremidade superior (Não em S3076), a unidade de codificação aritmética adapta- tiva ao contexto 3072 carrega um contexto para o sinalizador de cópia de informações de deslocamento superior sao_merge_up_flag. Então, a unidade de codificação aritmética adaptativa ao contexto 3072 codifica o sinalizador de cópia de informações de deslocamento superior sao_merge_up_flag (S3077).
[0268] Quando a região-alvo está posicionada na extremidade su perior (Sim em S3076) ou subsequentemente à codificação do sao_merge_up_flag (S3077), a unidade de controle de codificação aritmética 3071 determina se o sao_merge_up_flag é, ou não, 0 (S3078). Aqui, o sao_merge_up_flag sendo 0 indica que as informações de deslocamento não são copiadas da região superior e o sao_merge_up_flag sendo 1 indica que as informações de deslocamento são copiadas da região superior.
[0269] Deve ser observado que, quando a codificação do sao_merge_up_flag (S3077) não é realizada, um valor do sao_merge_up_flag não existe. Nesse caso, o valor do sao_merge_up_flag é processado como 0. Além disso, a unidade de codificação de informações de deslocamento 307 pode assegurar uma memória para o sao_merge_up_flag no instante de início de um processo e definir um valor inicial 0.
[0270] Posteriormente, quando o sao_merge_up_flag indica 0 (Sim em S3078), a unidade de controle de codificação aritmética 3071 comuta o método de codificação para a codificação aritmética de desvio (S3079). Com isso, a codificação aritmética de desvio é usada ao longo das etapas de codificação subsequentes.
[0271] Posteriormente, a unidade de codificação aritmética de desvio 3073 codifica o método de classificação de pixel sao_type_idx e o valor absoluto de deslocamento sao_offset (S3080). Aqui, nessa modalidade, o número de valores absolutos de deslocamento sao_offset é quatro em qualquer um dos métodos de classificação de pixel. No entanto, a unidade de codificação aritmética de desvio 3073 pode codificar os valores absolutos de deslocamento que têm números diferentes para cada um dos métodos de classificação de pixel.
[0272] Então, a unidade de controle de codificação aritmética 3071 determina se o método de classificação de pixel é, ou não, o deslocamento de banda (S3081). Aqui, a unidade de controle de codificação aritmética 3071 usa o método de classificação de pixel sao_type_idx para determinação.
[0273] De acordo com essa modalidade, o deslocamento de banda é atribuído a 0 como um valor de sao_type_idx. Por esta razão, a unidade de controle de codificação aritmética 3071 determina que o método de classificação de pixel é o deslocamento de banda quando sao_type_idx é 0 e que o método de classificação de pixel não é o deslocamento de banda quando sao_type_idx é diferente de 0.
[0274] Quando o método de classificação de pixel é o desloca mento de banda (Sim em S30841), a unidade de codificação aritmética de desvio 3073 codifica o sinal de ± de valor de deslocamento sao_offset_sign e a categoria de início de codificação de deslocamento de banda sao_band_position (S3082).
[0275] Deve ser observado que, nessa modalidade, a unidade de codificação aritmética de desvio 3073 codifica o sinal ± de valor de deslocamento sao_offset_sign apenas no caso case do deslocamento de banda. No entanto, a unidade de codificação aritmética de desvio 3073 também pode codificar o sinal ± de valor de deslocamento sao_offset_sign no caso do deslocamento de borda. Nesse caso, o sinal ± de valor de deslocamento sao_offset_sign é codificado na Eta- pa S3080.
[0276] Adicionalmente nesse caso, na Etapa S3080, o valor abso luto de deslocamento sao_offset e o sinal ± de valor de deslocamento sao_offset_sign podem ser integrados e codificados como um valor de deslocamento.
[0277] A Figura 35 é um fluxograma que mostra um exemplo de decodificação das informações de deslocamento com o uso da decodi- ficação aritmética realizada pela unidade de decodificação de informações de deslocamento 406.
[0278] Em primeiro lugar, mediante o início do processamento pela unidade de decodificação de informações de deslocamento 406, a unidade de controle de decodificação aritmética 4061 define a decodifica- ção aritmética adaptativa ao contexto como um método de decodifica- ção (S4060).
[0279] Então, a unidade de decodificação aritmética adaptativa ao contexto 4062 carrega um contexto para o sinalizador de LIGA- DO/DESLIGADO de processamento de deslocamento sao_on_flag e decodifica o sinalizador de LIGADO/DESLIGADO de processamento de deslocamento sao_on_flag com o uso do contexto (S4061).
[0280] Posteriormente, a unidade de controle de decodificação aritmética 4061 determina se o sinalizador de LIGADO/DESLIGADO de processamento de deslocamento sao_on_flag indica, ou não, 1 (S4062). Aqui, indica que o processamento de deslocamento não deve ser realizado na região-alvo a ser processada quando o sao_on_flag indica 0 e indica que o processamento de deslocamento deve ser realizado na região-alvo quando o sao_on_flag indica 1.
[0281] Posteriormente, quando sao_on_flag indica 1 (Sim em S4062), a unidade de controle de decodificação aritmética 4061 determina se a região-alvo está, ou não, posicionada na extremidade esquerda de uma fatia ou uma telha (S4063). As informações de deslo- camento são copiadas apenas de uma região na mesma fatia e na mesma telha. Por esta razão, a determinação descrita acima é realizada antes da decodificação do sinalizador de cópia de informações de deslocamento esquerdo sao_merge_left_flag.
[0282] Quando a região-alvo não está posicionada na extremidade esquerda (Não em S4063), a unidade de decodificação aritmética adaptativa ao contexto 4062 carrega um contexto para o sinalizador de cópia de informações de deslocamento esquerdo sao_merge_left_flag. Então, a unidade de decodificação aritmética adaptativa ao contexto 4062 decodifica a sinalizador de cópia de informações de deslocamento esquerdo sao_merge_left_flag (S4064).
[0283] Quando a região-alvo está posicionada na extremidade es querda (Sim em S4063) ou subsequentemente à decodificação do sao_merge_left_flag (S4064), a unidade de controle de decodificação aritmética 4061 determina se o sao_merge_left_flag é, ou não, 0 (S4065). Aqui, o sao_merge_left_flag sendo 0 indica que as informações de deslocamento não são copiadas da região esquerda e o sao_merge_left_flag sendo 1 indica que as informações de deslocamento são copiadas da região esquerda.
[0284] Deve ser observado que, quando a decodificação do sao_merge_left_flag (S4064) não é realizada, um valor do sao_merge_left_flag não existe. Nesse caso, os valores do sao_merge_left_flag são processados como 0. Além disso, a unidade de decodificação de informações de deslocamento 406 pode assegurar uma memória para sao_merge_left_flag no instante de início de um processo e definir um valor inicial 0.
[0285] Posteriormente, quando sao_merge_left_flag indica 0 (Sim em S4065), a unidade de controle de decodificação aritmética 4061 determina se a região-alvo está, ou não, posicionada na extremidade superior de uma fatia ou uma telha (S4066). Visto que as informações de deslocamento são copiadas apenas de uma região na mesma fatia e na mesma telha como com a determinação da extremidade esquerda (S4063), a determinação descrita acima é realizada antes d decodi- ficação do sinalizador de cópia de informações de deslocamento superior sao_merge_up_flag.
[0286] Quando a região-alvo não está posicionada na extremidade superior (Não em S4066), a unidade de decodificação aritmética adap- tativa ao contexto 4062 carrega um contexto para o sinalizador de cópia de informações de deslocamento superior sao_merge_up_flag. Então, a unidade de decodificação aritmética adaptativa ao contexto 4062 decodifica o sinalizador de cópia de informações de deslocamento superior sao_merge_up_flag (S4067).
[0287] Quando a região-alvo está posicionada na extremidade su perior (Sim em S4066) ou subsequentemente à decodificação do sao_merge_up_flag (S4067), a unidade de controle de decodificação aritmética 4061 determina se o sao_merge_up_flag é, ou não, 0 (S4068). Aqui, o sao_merge_up_flag sendo 0 indica que as informações de deslocamento não são copiadas da região superior e o sao_merge_up_flag sendo 1 indica que as informações de deslocamento são copiadas da região superior.
[0288] Deve ser observado que, quando a codificação do sao_merge_up_flag (S4067) não é realizada, um valor do sao_merge_up_flag não existe. Nesse caso, o valor do sao_merge_up_flag é processado como 0. Além disso, a unidade de decodificação de informações de deslocamento 406 pode assegurar uma memória para sao_merge_up_flag no instante de início de um processo e definir um valor inicial 0.
[0289] Posteriormente, quando sao_merge_up_flag indica 0 (Sim em S4068), a unidade de controle de decodificação aritmética 4061 comuta o método de decodificação para a decodificação aritmética de desvio (S4069). Com isso, a decodificação aritmética de desvio é usada ao longo das etapas de decodificação subsequentes.
[0290] Posteriormente, a unidade de decodificação aritmética de desvio 4063 decodifica o método de classificação de pixel sao_type_idx e o valor absoluto de deslocamento sao_offset (S4070). Aqui, nessa modalidade, o número de valores absolutos de deslocamento sao_offset é quatro em qualquer um dos métodos de classificação de pixel. No entanto, a unidade de decodificação aritmética de desvio 4063 pode decodificar valores absolutos de deslocamento que têm números diferentes para cada um dos métodos de classificação de pixel.
[0291] Então, a unidade de controle de decodificação aritmética 4061 determina se o método de classificação de pixel é, ou não, o des-locamento de banda (S4071). Aqui, a unidade de controle de decodifi- cação aritmética 4061 usa o método de classificação de pixel sao_type_idx para determinação.
[0292] De acordo com essa modalidade, o deslocamento de banda é atribuído a 0 como um valor de sao_type_idx. Por esta razão, a unidade de controle de decodificação aritmética 4061 determina que o método de classificação de pixel é o deslocamento de banda quando sao_type_idx é 0 e que o método de classificação de pixel não é o deslocamento de banda quando sao_type_idx é diferente de 0.
[0293] Quando o método de classificação de pixel é o desloca mento de banda (Sim em S4071), a unidade de decodificação aritmética de desvio 4063 decodifica o sinal de ± de valor de deslocamento sao_offset_sign e a categoria de início de codificação de deslocamento de banda sao_band_position (S4072).
[0294] Deve ser observado que, nessa modalidade, a unidade de decodificação aritmética de desvio 4063 decodifica o sinal de ± de valor de deslocamento sao_offset_sign apenas no caso do deslocamento de banda. No entanto, a unidade de decodificação aritmética de desvio 4063 também pode decodificar o sinal de ± de valor de deslocamento sao_offset_sign no caso do deslocamento de borda. Nesse caso, o sinal de ± de valor de deslocamento sao_offset_sign é decodificado na Etapa S4070.
[0295] Adicionalmente nesse caso, na Etapa S4070, o valor abso luto de deslocamento sao_offset e o sinal de ± de valor de deslocamento sao_offset_sign podem ser integrados e decodificados como um valor de deslocamento.
[0296] Conforme descrito acima, a codificação aritmética de desvio e a decodificação aritmética de desvio são usadas para a codificação e a decodificação de todos os parâmetros dos três parâmetros superiores seguintes do sinalizador de LIGADO/DESLIGADO de processamento de deslocamento sao_on_flag, do sinalizador de cópia de informações de deslocamento esquerdo sao_merge_left_flag e do sinalizador de cópia de informações de deslocamento superior sao_merge_up_flag. Isso elimina a necessidade que o aparelho de codificação de imagem e o aparelho de decodificação de imagem carreguem e atualizem contextos em qualquer lugar. Portanto, o rendimento é aprimorado.
[0297] A Figura 36 é um fluxograma que mostra um exemplo do recurso da codificação descrita acima. Em primeiro lugar, a unidade de codificação aritmética adaptativa ao contexto 3072 codifica consecutivamente as primeiras informações e as segundas informações pela codificação aritmética adaptativa ao contexto (S511). A codificação aritmética adaptativa ao contexto é codificação aritmética que usa uma probabilidade variável. As primeiras informações indicam a realização, ou não, para a primeira região de uma imagem, de um processamento de deslocamento adaptativo de amostra (SAO) que é o processamento de deslocamento em um valor de pixel. As segundas informações indi cam a utilização ou não, no processamento de SAO para a primeira região, de informações do processamento de SAO para uma região diferente da primeira região.
[0298] Posteriormente, a unidade de codificação aritmética de desvio 3073, após as primeiras informações e as segundas informações serem codificadas, codifica outras informações pela codificação aritmética de desvio (S512). A codificação aritmética de desvio é codificação aritmética que usa uma probabilidade fixa. Outras informações são informações sobre o processamento de SAO para a primeira região e diferentes das primeiras informações ou das segundas informações.
[0299] A Figura 37 é um fluxograma que mostra um exemplo do recurso da decodificação descrita acima. Em primeiro lugar, a unidade de decodificação aritmética adaptativa ao contexto 4062 decodifica consecutivamente as primeiras informações e as segundas informações pela decodificação aritmética adaptativa ao contexto (S521). A decodificação aritmética adaptativa ao contexto é decodificação aritmética que usa uma probabilidade variável. As primeiras informações indicam a realização, ou não, para a primeira região de uma imagem, do processamento de deslocamento adaptativo de amostra (SAO) que é um processamento de deslocamento em um valor de pixel. As segundas informações indicam a utilização, ou não no processamento de SAO para a primeira região, de informações do processamento de SAO para uma região diferente da primeira região.
[0300] Posteriormente, a unidade de decodificação aritmética de desvio 4063, após as primeiras informações e as segundas informações terem sido decodificadas, decodifica outras informações pela de- codificação aritmética de desvio (S522). A decodificação aritmética de desvio é decodificação aritmética que usa uma probabilidade fixa. Outras informações são informações sobre o processamento de SAO pa ra a primeira região e diferentes das primeiras informações ou das segundas informações.
[0301] Deve ser observado que as primeiras informações ou as segundas informações podem ser codificadas em primeiro lugar. Da mesma forma, as primeiras informações ou as segundas informações podem ser decodificadas em primeiro lugar.
[0302] Além disso, a ordem de codificação é uma ordem na qual as informações são escritas em um fluxo codificado como um sinal (código) e a ordem de decodificação é uma ordem na qual um sinal (código) é lido de um fluxo codificado as informações. Dessa forma, a ordem de codificação e decodificação exemplificada acima com referência a diversos diagramas corresponde à ordem de informações em um fluxo codificado. Além disso, a ordem de elementos de sintaxe exemplificada acima com referência a diversos diagramas corresponde à ordem de informações em um fluxo codificado e à ordem de codificação e de decodificação.
[0303] Além disso, o aparelho de codificação de imagem pode ser um aparelho que realiza apenas os processos ilustrados na Figura 36. Da mesma forma, o aparelho de decodificação de imagem pode ser um aparelho que realiza apenas os processos ilustrados na Figura 37. Outros processos podem ser realizados por outros aparelhos.
[0304] A Figura 31B ilustra um resultado com base em condições de teste especificadas no padrão HEVC (vide NPL 2) como um desempenho objetivo.
[0305] Na Figura 31B, Configuração indica condições de definição de parâmetro de codificação. Taxa BD indica um índice objetivo calculado a partir de uma razão entre sinal e ruído de pico (PSNR) de uma imagem reconstruída e uma quantidade de código de um fluxo codificado. Uma taxa BD negativa indica aprimoramento no desempenho objetivo e uma taxa BD positiva indica deterioração no desempenho objetivo. Deve ser observado que a taxa BD na Figura 31B indica aprimoramento ou deterioração no desempenho objetivo dessa modalidade com base na comparação com a Modalidade 1.
[0306] Conforme ilustrado na Figura 31B, a taxa BD está dentro da faixa de ±0,1. Isso indica que o desempenho objetivo dessa modalidade é substancialmente equivalente ao desempenho objetivo da Modalidade 1. Mais especificamente, nessa modalidade, há pouca deterioração no desempenho objetivo e o rendimento é aprimorado.
[0307] Conforme descrito acima, o aparelho de codificação de imagem de acordo com essa modalidade tem a capacidade de codificar uma imagem com elevada eficiência de processamento. Além disso, o aparelho de decodificação de imagem de acordo com essa modalidade tem a capacidade de decodificar uma imagem com elevada eficiência de processamento.
[0308] Cada um dos elementos estruturais em cada uma das mo dalidades descritas acima pode ser configurado sob a forma de um produto de hardware exclusivo, ou pode ser concretizado através da execução de um programa de software adequado ao elemento estrutural. Cada um dos elementos estruturais pode ser concretizado por meio de uma unidade de execução de programa, como uma CPU e um processador, da leitura e execução do programa de software gravado em um meio de gravação como um disco rígido ou uma memória semicondutora.
[0309] Em outras palavras, o aparelho de codificação de imagem e o aparelho de decodificação de imagem incluem conjunto de circuitos de controle e armazenamento que está eletricamente conectado ao conjunto de circuitos de controle (que é acessível do conjunto de circuitos de controle). O conjunto de circuitos de controle inclui pelo menos um do produto de hardware exclusivo e da unidade de execução de programa. Além disso, quando o conjunto de circuitos de controle inclui a unidade de execução de programa, o armazenamento armazena um programa de software que é executado pela unidade de execução de programa.
[0310] Aqui, o software que realiza o aparelho de codificação de imagem de acordo com cada uma das modalidades descritas acima é um programa conforme definido abaixo.
[0311] Mais especificamente, esse programa faz com que um computador execute um método de codificação de imagem que inclui: realizar a codificação aritmética adaptativa ao contexto para codificar consecutivamente (i) primeiras informações que indicam a realização, ou não, de processamento de deslocamento adaptativo de amostra (SAO) para uma primeira região de uma imagem e (ii) segundas informações que indicam a utilização, ou não, no processamento de SAO para a primeira região, de informações sobre o processamento de SAO para uma região diferente da primeira região, em que a codificação aritmética adaptativa ao contexto é codificação aritmética que usa uma probabilidade variável, em que o processamento de SAO é processamento de deslocamento em um valor de pixel; e realizar codificação aritmética de desvio para codificar outras informações que são informações sobre o processamento de SAO para a primeira região e diferentes das primeiras informações ou das segundas informações, após as primeiras informações e as segundas informações serem codificadas, em que a codificação aritmética de desvio é codificação aritmética que usa uma probabilidade fixa.
[0312] Adicionalmente, esse programa pode fazer com que um computador execute um método de decodificação de imagem que inclui: realizar decodificação aritmética adaptativa ao contexto para decodificar consecutivamente (i) primeiras informações que indicam se, ou não, deve realizar processamento de deslocamento adaptativo de amostra (SAO) para uma primeira região de uma imagem e (ii) segun- das informações que indicam se, ou não, deve usar, no processamento de SAO para uma primeira região, as informações sobre o processamento de SAO para uma região diferente da primeira região, sendo que a decodificação aritmética adaptativa ao contexto é a decodifica- ção aritmética que usa uma probabilidade variável, sendo que o processamento de SAO é o processamento de deslocamento em um valor de pixel; e realizar a decodificação aritmética do tipo bypass para decodificar outras informações que são informações sobre o processamento de SAO para uma primeira região e diferente das primeiras informações ou as segundas informações, após as primeiras informações e as segundas informações terem sido decodificadas, sendo que a decodificação aritmética do tipo bypass é a decodificação aritmética que usa uma probabilidade fixa.
[0313] Adicionalmente, cada um dos elementos estruturais pode ser um circuito. Os conjuntos de circuitos podem ser configurados como um único circuito como um todo ou podem ser mutuamente circuitos diferentes. Adicionalmente, cada um dos elementos estruturais pode ser implantado como um processador de propósito geral ou como um processador dedicado.
[0314] O aparelho de codificação de imagem e similares de acordo com um ou mais aspectos foram descritos acima com base em Modalidades. No entanto, a presente invenção não é limitada a essas Modalidades. Aqueles versados na técnica irão apreciar prontamente que várias modificações podem ser feitas na modalidade, e outras modalidades podem ser feitas combinando-se arbitrariamente alguns dos elementos estruturais de diferentes modalidades sem desviar materialmente dos princípios e do espírito da presente invenção.
[0315] Por exemplo, um aparelho de codificação e decodificação de imagem pode incluir o aparelho de codificação de imagem e o aparelho de decodificação de imagem. Adicionalmente, os processos exe- cutados por uma unidade de processamento específica podem ser realizados em uma unidade de processamento diferente. Adicionalmente, a ordem na qual os processos são realizados pode ser mudada, ou uma pluralidade de processos pode ser realizada em paralelo. Adicionalmente, uma unidade de armazenamento comum ou uma dedicada para armazenar uma variedade de itens de informações pode ser adicionada à configuração.
(Modalidade 4)
[0316] O processamento descrito em cada uma das modalidades pode ser simplesmente implantado em um sistema de computador in-dependente, gravando-se, em um meio de gravação, um programa para implantar as configurações do método de codificação de figuração em movimento (método de codificação de imagem) e do método de decodificação de figuração em movimento (método de decodifica- ção de imagem) descritos em cada uma das modalidades. A mídia de gravação pode ser qualquer mídia de gravação contanto que o programa possa ser gravado, tal como um disco magnético, um disco óptico, um disco óptico magnético, um cartão de IC, e uma memória de semicondutor.
[0317] Doravante no presente documento, as aplicações ao méto do de codificação de figuração em movimento (método de codificação de imagem) e ao método de decodificação de figuração em movimento (método de decodificação de imagem) descritos em cada uma das modalidades e sistemas com o uso dos mesmos serão descritas. O sistema tem um atributo de ter um aparelho de codificação e decodifi- cação de imagem que inclui um aparelho de codificação de imagem com o uso do método de codificação de imagem e um aparelho de de- codificação de imagem com o uso do método de decodificação de imagem. Outras configurações no sistema podem ser mudadas conforme apropriado dependendo dos casos.
[0318] A Figura 38 ilustra uma configuração em geral de um siste ma de fornecimento de conteúdo ex100 para implantar serviços de distribuição de conteúdo. A área para fornecer serviços de comunicação é dividida em células de tamanho desejado, e estações bases ex106, ex107, ex108, ex109, e ex110, que são estações sem fio fixas, são colocadas em cada uma das células.
[0319] O sistema de fornecimento de conteúdo ex100 é conectado a dispositivos, tal como um computador ex111, um assistente digital pessoal (PDA) ex112, um câmera ex113, um telefone celular ex114 e uma máquina de jogos ex115, por meio da Internet ex101, um provedor de serviço da Internet ex102, uma rede de telefone ex104, assim como as estações bases ex106 a ex110, respectivamente.
[0320] No entanto, a configuração do sistema de fornecimento de conteúdo ex100 não é limitada à configuração mostrada na Figura 38, e uma combinação na qual qualquer um dos elementos é conectado é aceitável. Adicionalmente, cada dispositivo pode ser diretamente conectado à rede de telefone ex104, ao invés de por meio das estações bases ex106 a ex110 que são as estações sem fio fixas. Adicionalmente, os dispositivos podem ser interconectados entre si por meio de uma comunicação sem fio a curta distância e outros.
[0321] A câmera ex113, tal como uma câmera de vídeo digital, é capaz de capturar vídeo. Uma câmera ex116, tal como uma câmera digital, é capaz de capturar ambos as imagens estáveis e o vídeo. Adicionalmente, o telefone celular ex114 pode ser aquele que atende aos padrões tais como Sistema Global para Comunicações Móveis (GSM) (nome comercial registrado), Acesso Múltiplo de Divisão de Código (CDMA), Acesso Múltiplo de Divisão de Código de Banda Larga (W- CDMA), Evolução a Longo Prazo (LTE), e Acesso a Pacote em Alta Velocidade (HSPA). Alternativamente, o telefone celular ex114 pode ser um Sistema de Telefone de mão Pessoal (PHS).
[0322] No sistema de fornecimento de conteúdo ex100, um servi dor de fluxo contínuo ex103 é conectado à câmera ex113 e outros por meio da rede de telefone ex104 e da estação base ex109, que permite a distribuição de imagens de uma apresentação ao vivo e outros. Em tal distribuição, um conteúdo (por exemplo, vídeo de uma apresentação ao vivo de música) capturado pelo usuário que usa a câmera ex113 é codificado como descrito acima em cada uma das modalidades (isto é, a câmera funciona como o aparelho de codificação de imagem de acordo com um aspecto da presente invenção), e o conteúdo codificado é transmitido ao servidor de fluxo contínuo ex103. Por outro lado, o servidor de fluxo contínuo ex103 efetua distribuição de fluxo dos dados de conteúdo transmitido aos clientes mediante as suas solicitações. Os clientes incluem o computador ex111, o PDA ex112, a câmera ex113, o telefone celular ex114, e a máquina de jogos ex115 que são capazes de decodificar os dados codificados mencionados acima. Cada um dos dispositivos que receberam os dados distribuídos decodifica e reproduz os dados codificados (isto é, funciona como o aparelho de decodificação de imagem de acordo com um aspecto da presente invenção).
[0323] Os dados capturados podem ser codificados pela câmera ex113 ou pelo servidor de fluxo contínuo ex103 que transmite os dados, ou os processos de codificação podem ser compartilhados entre a câmera ex113 e o servidor de fluxo contínuo ex103. Similarmente, os dados distribuídos podem ser decodificados pelos clientes ou pelo servidor de fluxo contínuo ex103, ou os processos de decodificação podem ser compartilhados entre os clientes e o servidor de fluxo contínuo ex103. Adicionalmente, os dados das imagens estáveis e vídeo capturados não somente pela câmera ex113, mas também pela câmera ex116 podem ser transmitidos ao servidor de fluxo contínuo ex103 através do computador ex111. Os processos de codificação podem ser realizados pela câmera ex116, pelo computador ex111, ou pelo servidor de fluxo contínuo ex103, ou compartilhados entre os mesmos.
[0324] Adicionalmente, os processos de codificação e decodifica- ção podem ser realizados por um LSI ex500 geralmente incluídos em cada um do computador ex111 e dos dispositivos. O LSI ex500 pode ser configurado de um único chip ou uma pluralidade de chips. O software para codificar e decodificar vídeo pode ser integrado em algum tipo de um meio de gravação (tal como um CD-ROM, um disco flexível, e um disco rígido) que é legível pelo computador ex111 e outros, e os processos de codificação e decodificação podem ser realizados com o uso do software. Adicionalmente, quando o telefone celular ex114 é equipado com uma câmera, os dados de vídeo obtidos pela câmera podem ser transmitidos. Os dados de vídeo são dados codificados pelo LSI ex500 incluído no telefone celular ex114.
[0325] Adicionalmente, o servidor de fluxo contínuo ex103 pode ser composto de servidores e computadores, e pode descentralizar os dados e processar os dados descentralizados, gravar, ou distribuir dados.
[0326] Conforme descrito acima, os clientes podem receber e re produzir os dados codificados no sistema de fornecimento de conteúdo ex100. Em outras palavras, os clientes podem receber e decodificar informações transmitidas pelo usuário, e reproduzir os dados decodificados em tempo real no sistema de fornecimento de conteúdo ex100, de modo que o usuário que não tenha qualquer equipamento e direito em particular possa implantar difusão pessoal.
[0327] Além do exemplo do sistema de fornecimento de conteúdo ex100, pelo menos um do aparelho de codificação de figuração em movimento (aparelho de codificação de imagem) e do aparelho de de- codificação de figuração em movimento (aparelho de decodificação de imagem) descritos em cada uma das modalidades podem ser implan- tados em um sistema de difusão digital ex200 ilustrado na Figura 39. Mais especificamente, uma estação de difusão ex201 comunica ou transmite, por meio de ondas de rádio a um satélite de difusão ex202, os dados multiplexados obtidos multiplexando-se dados de áudio e outros em dados de vídeo. Os dados de vídeo são dados codificados pelo método de codificação de figuração em movimento descrito em cada uma das modalidades (isto é, dados codificado pelo aparelho de codificação de imagem de acordo com um aspecto da presente invenção). Mediante a recepção dos dados multiplexados, o satélite de difusão ex202 transmite ondas de rádio para difusão. Então, uma antena de uso domiciliar ex204 com uma função de recepção de difusão de satélite recebe as ondas de rádio. A seguir, um dispositivo tal como uma televisão (receptor) ex300 e um decodificador de sinais (STB) ex217 decodifica os dados multiplexados recebidos, e reproduz os dados decodificados (isto é, funciona como o aparelho de decodificação de imagem de acordo com um aspecto da presente invenção).
[0328] Adicionalmente, um leitor/gravador ex218 (i) lê e decodifica os dados multiplexados gravados em um meio de gravação ex215, tal como um DVD e um BD, ou (i) codifica sinais de vídeo no meio de gravação ex215, e em alguns casos, escreve os dados obtidos multiple- xando-se um sinal de áudio nos dados codificados. O leitor/gravador ex218 pode incluir o aparelho de decodificação de figuração em movimento ou o aparelho de codificação de figuração em movimento conforme mostrado em cada uma das modalidades. Nesse caso, os sinais de vídeo reproduzidos são exibidos no monitor ex219, e pode ser reproduzido por outro dispositivo ou sistema com o uso do meio de gravação ex215 no qual os dados multiplexados são gravados. Também é possível implantar o aparelho de decodificação de figuração em movimento no decodificador de sinais ex217 conectado ao cabo ex203 para uma televisão a cabo ou à antena ex204 para difusão terrestre e/ou por satélite, de modo a exibir os sinais de vídeo no monitor ex219 da televisão ex300. O aparelho de decodificação de figuração em movimento pode ser implantado não no decodificador de sinais, mas na televisão ex300.
[0329] A Figura 40 ilustra a televisão (receptor) ex300 que usa o método de codificação de figuração em movimento e o método de de- codificação de figuração em movimento descrito em cada uma das modalidades. A televisão ex300 inclui: um sintonizador ex301 que obtém ou fornece dados multiplexados obtidos multiplexando-se dados de áudio em dados de vídeo, através da antena ex204 ou do cabo ex203, etc. que recebe uma difusão; uma unidade de modula- ção/demodulação ex302 que demodula os dados multiplexados recebidos ou modula os dados em dados multiplexados a serem supridos no lado de fora; e uma unidade de multiplexação/demultiplexação ex303 que demultiplexa os dados multiplexados modulados em dados de vídeo e dados de áudio, ou multiplexa dados de vídeo e dados de áudio codificados por uma unidade de processamento de sinal ex306 em dados.
[0330] A televisão ex300 inclui adicionalmente: uma unidade de processamento de sinal ex306 que inclui uma unidade de processamento de sinal de áudio ex304 e uma unidade de processamento de sinal de vídeo ex305 que decodifica os dados de áudio e os dados de vídeo e codifica os dados de áudio e os dados de vídeo, respectivamente (que funciona como o aparelho de codificação de imagem e o aparelho de decodificação de imagem de acordo com os aspectos da presente invenção); e uma unidade de saída ex309 que inclui um alto- falante ex307 que fornece o sinal de áudio decodificado, e uma unidade de exibição ex308 que exibe o sinal de vídeo decodificado, tal como um visor. Adicionalmente, a televisão ex300 inclui uma unidade de interface ex317 que inclui uma unidade de entrada de operação ex312 que recebe uma entrada de uma operação de usuário. Adicionalmente, a televisão ex300 inclui uma unidade de controle ex310 que controla, em geral, cada elemento constituinte da televisão ex300, e uma unidade de circuito de fonte de alimentação ex311 que supre energia a cada um dos elementos. Diferente da unidade de entrada de operação ex312, a unidade de interface ex317 pode incluir: uma ponte ex313 que é conectada a um dispositivo externo, tal como o leitor/gravador ex218; uma unidade de fenda ex314 para permitir a fixação do meio de gravação ex216, tal como um cartão de SD; um acionador ex315 a ser conectado a um meio de gravação externo, tal como um disco rígido; e um modem ex316 a ser conectado a uma rede de telefone. Aqui, o meio de gravação ex216 pode gravar eletricamente as informações com o uso de um elemento de memória de semicondutor não volá- til/volátil para armazenamento. Os elementos constituintes da televisão ex300 são conectados entre si através de um barramento síncrono.
[0331] Primeiramente, a configuração em que a televisão ex300 decodifica dados multiplexados obtidos do lado de fora através da antena ex204 e outros e reproduz os dados decodificados será descrita. Na televisão ex300, mediante a uma operação de usuário através de um controlador remoto ex220 e outros, a unidade de multiplexa- ção/demultiplexação ex303 demultiplexa os dados multiplexados de- modulados pela unidade de modulação/demodulação ex302, sob controle da unidade de controle ex310 que inclui uma CPU. Adicionalmente, a unidade de processamento de sinal de áudio ex304 decodifica os dados de áudio demultiplexados, e a unidade de processamento de sinal de vídeo ex305 decodifica os dados de vídeo demultiplexados, com o uso do método de decodificação descrito em cada uma das modalidades, na televisão ex300. A unidade de saída ex309 fornece o sinal de vídeo decodificado e o sinal de áudio do lado de fora, respectivamente. Quando a unidade de saída ex309 fornece o sinal de vídeo e o sinal de áudio, os sinais podem ser temporariamente armazenados em armazenamentos temporários ex318 e ex319, e outros de modo que os sinais são reproduzidos em sincronização entre si. Adicionalmente, a televisão ex300 pode ler dados multiplexados não através de uma difusão e outros, mas da mídia de gravação ex215 e ex216, tal como um disco magnético, um disco óptico, e um cartão de SD. A seguir, uma configuração na qual a televisão ex300 codifica um sinal de áudio e um sinal de vídeo, e transmite os dados para o lado de fora ou escreve os dados em um meio de gravação será descrita. Na televisão ex300, mediante a uma operação de usuário através do controlador remoto ex220 e de outros, a unidade de processamento de sinal de áudio ex304 codifica um sinal de áudio, e a unidade de processamento de sinal de vídeo ex305 codifica um sinal de vídeo, sob controle da unidade de controle ex310 com o uso do método de codificação descrito em cada uma das modalidades. A unidade de multiplexa- ção/demultiplexação ex303 multiplexa a codificado sinal de vídeo e sinal de áudio, e fornece o sinal resultante para o lado de fora. Quando a unidade de multiplexação/demultiplexação ex303 multiplexa o sinal de vídeo e o sinal de áudio, os sinais podem ser temporariamente armazenados nos armazenamentos temporários ex320 e ex321, e outros de modo que os sinais sejam reproduzidos em sincronização entre si. Aqui, os armazenamentos temporários ex318, ex319, ex320, e ex321 podem estar no plural conforme ilustrado, ou pelo menos um armazenamento temporário pode ser compartilhado na televisão ex300. Adicionalmente, os dados podem ser armazenados em um armazenamento temporário de modo que o estouro e estouro negativo de sistema possam ser evitados entre a unidade de modula- ção/demodulação ex302 e a unidade de multiplexa- ção/demultiplexação ex303, por exemplo.
[0332] Adicionalmente, a televisão ex300 pode incluir uma configu- ração para receber uma entrada de AV de um microfone ou uma câmera diferente da configuração para obter dados de áudio e vídeo de um meio de gravação ou um de difusão, e pode codificar os dados obtidos. Embora a televisão ex300 possa codificar, multiplexar, e fornecer dados do lado de fora na descrição, a mesma pode ser capaz de somente receber, decodificar, e fornecer dados do lado de fora, mas não a codificação, multiplexação, e o fornecido dos dados para o lado de fora.
[0333] Adicionalmente, quando o leitor/gravador ex218 lê ou es creve dados multiplexados de ou em um meio de gravação, um da televisão ex300 e do leitor/gravador ex218 pode decodificar ou codificar os dados multiplexados, e a televisão ex300 e o leitor/gravador ex218 podem compartilhar a decodificação ou a codificação.
[0334] Como um exemplo, a Figura 41 ilustra uma configuração de uma unidade de reprodução/gravação de informações ex400 quando os dados são lidos ou escritos de ou em um disco óptico. A unidade de reprodução/gravação de informações ex400 inclui os elementos constituintes ex401, ex402, ex403, ex404, ex405, ex406, e ex407 a serem descritos doravante no presente documento. A cabeça óptica ex401 irradia um ponto de laser em uma superfície de gravação do meio de gravação ex215 que é um disco óptico para escrever informações, e detecta luz refletida da superfície de gravação do meio de gravação ex215 para ler as informações. A unidade de gravação de modulação ex402 aciona eletricamente um laser de semicondutor incluído na cabeça óptica ex401, e modula a luz de laser de acordo com dados gravados. A unidade demoduladora de reprodução ex403 amplifica um sinal de reprodução obtido detectando-se eletricamente a luz refletida da superfície de gravação com o uso de um detector de foto incluído na cabeça óptica ex401, e demodula o sinal de reprodução separando- se um componente de sinal gravado no meio de gravação ex215 para reproduzir as informações necessárias. O armazenamento temporário ex404 retém temporariamente as informações a serem gravadas no meio de gravação ex215 e as informações reproduzidas do meio de gravação ex215. O motor de disco ex405 gira o meio de gravação ex215. A unidade de controle servo ex406 mova a cabeça óptica ex401 a uma faixa de informações predeterminada enquanto controla a unidade de rotação do motor de disco ex405 de modo a seguir o ponto de laser. A unidade de controle de sistema ex407 controla, em geral, a unidade de reprodução/gravação de informações ex400. Os processos de leitura e escrita podem ser implantados pela unidade de controle de sistema ex407 com o uso de várias informações armazenadas no armazenamento temporário ex404 e gerar e adicionar novas informações conforme necessário, e pela unidade de gravação de modulação ex402, a unidade demoduladora de reprodução ex403, e a unidade de controle servo ex406 que grava e reproduz informações através da cabeça óptica ex401 enquanto é operada de uma maneira coordenada. A unidade de controle de sistema ex407 inclui, por exemplo, um microprocessador, e executa o processamento fazendo com que um computador execute um programa para ler e escrever.
[0335] Embora a cabeça óptica ex401 irradie um ponto de laser na descrição, a mesma pode realizar gravação de alta densidade com o uso de luz de campo próximo.
[0336] A Figura 42 ilustra o meio de gravação ex215 que é o disco óptico. Na superfície de gravação do meio de gravação ex215, as ranhuras de orientação são formadas em espiral, e uma faixa de informações ex230 grava, antecipadamente, informações de endereço que indicam uma posição absoluta no disco de acordo com a mudança em um formato das ranhuras de orientação. As informações de endereço incluem informações para determinar posições de gravar blocos ex231 que são uma unidade para gravar dados. Reproduzir a faixa de infor- mações ex230 e ler as informações de endereço em um aparelho que grava e reproduz os dados pode levar à determinação das posições dos blocos de gravação. Adicionalmente, o meio de gravação ex215 inclui uma área de gravação de dados ex233, uma área de circunferência interna ex232, e uma área de circunferência externa ex234. A área de gravação de dados ex233 é uma área para uso na gravação dos dados de usuário. A área de circunferência interna ex232 e a área de circunferência externa ex234 que estão dentro e fora da área de gravação de dados ex233, respectivamente, são para uso específico, exceto para gravar os dados de usuário. A unidade de reprodu- ção/gravação de informações 400 lê e escreve dados de áudio codifi-cados, dados de vídeo codificados, ou dados multiplexados obtidos multiplexando-se os dados de áudio e vídeo codificados, da e na área de gravação de dados ex233 do meio de gravação ex215.
[0337] Embora um disco óptico tenha uma camada, tal como um DVD e um BD seja descrito como um exemplo na descrição, o disco óptico não é limitado a tal, e pode ser um disco óptico que tem uma estrutura de camadas múltiplas e capaz de ser gravada em uma parte diferente da superfície. Adicionalmente, o disco óptico pode ter uma estrutura para gravação/reprodução multidimensional, tal como gravação das informações com o uso de luz de cores com comprimentos de onda diferentes na mesma porção do disco óptico e para gravar informações que têm camadas diferentes de vários ângulos.
[0338] Adicionalmente, um carro ex210 que tem uma antena ex205 pode receber dados do satélite ex202 e outros, e reproduz vídeo em um dispositivo de exibição tal como um sistema de navegação de carro ex211 definido no carro ex210, no sistema de difusão digital ex200. Aqui, uma configuração do sistema de navegação de carro ex211 será uma configuração, por exemplo, que inclui uma unidade de recepção de GPS da configuração ilustrada na Figura 40. O mesmo será verdade para a configuração do computador ex111, do telefone celular ex114, e outros.
[0339] A Figura 43A ilustra o telefone celular ex114 que usa o mé todo de codificação de figuração em movimento e o método de decodi- ficação de figuração em movimento descritos nas modalidades. O telefone celular ex114 inclui: uma antena ex350 para transmitir e receber ondas de rádio através da estação base ex110; uma unidade de câmera ex365 capaz de capturar imagens estáveis em movimento; e uma unidade de exibição ex358 tal como um visor de cristal líquido para exibir os dados, tal como vídeo decodificado capturado pela unidade de câmera ex365 ou recebido pela antena ex350. O telefone celular ex114 inclui adicionalmente: uma unidade de corpo principal que inclui uma unidade de chave de operação ex366; uma unidade de saída de áudio ex357 tal como um alto-falante para saída de áudio; uma unida-de de entrada de áudio ex356 tal como um microfone para entrada de áudio; uma unidade de memória ex367 para armazenar figurações estáveis ou vídeos capturados, áudio gravado, dados codificados ou decodificados do vídeo recebido, as figurações estáveis, correio eletrônicos, ou outros; e uma unidade de fenda ex364 que é uma unidade de interface para um meio de gravação que armazena dados da mesma maneira que a unidade de memória ex367.
[0340] A seguir, um exemplo de uma configuração do telefone ce lular ex114 será descrito com referência à Figura 43B. No telefone celular ex114, uma unidade de controle principal ex360 projetada para controlar, em geral, cada unidade do corpo principal que inclui a unidade de exibição ex358 assim como a unidade de chave de operação ex366 é conectada mutuamente, por meio de um barramento síncrono ex370, a uma unidade de circuito de fonte de alimentação ex361, uma unidade de controle de entrada de operação ex362, uma unidade de processamento de sinal de vídeo ex355, uma unidade de interface de câmera ex363, uma unidade de controle de visor de cristal líquido (LCD) ex359, uma unidade de modulação/demodulação ex352, uma unidade de multiplexação/demultiplexação ex353, uma unidade de processamento de sinal de áudio ex354, a unidade de fenda ex364, e a unidade de memória ex367.
[0341] Quando uma tecla de encerramento de chamada ou uma chave de energia é LIGADO por uma operação de usuário, a unidade de circuito de fonte de alimentação ex361 supre as respectivas unidades com energia de um pacote de bateria de modo a ativar o telefone celular ex114.
[0342] No telefone celular ex114, a unidade de processamento de sinal de áudio ex354 converte os sinais de áudio coletados pela unidade de entrada de áudio ex356 em modo de conversação de voz em sinais de áudio digitais sob o controle da unidade de controle principal ex360 que inclui uma CPU, ROM, e RAM. Então, a unidade de modu- lação/demodulação ex352 realiza processamento de espectro amplo nos sinais de áudio digitais, e a unidade de transmissão e recepção ex351 realiza conversão de digital para analógico e conversão de frequência nos dados, de modo a transmitir os dados resultantes por meio da antena ex350. Do mesmo modo, no telefone celular ex114, a unidade de transmissão e recepção ex351 amplifica os dados recebidos pela antena ex350 em modo de conversação de voz e realiza con-versão de frequência e a conversão de analógico para digital nos dados. Então, a unidade de modulação/demodulação ex352 realiza processamento de espectro amplo inverso nos dados, e a unidade de processamento de sinal de áudio ex354 converte o mesmo em sinais de áudio analógicos, de modo a emitir os mesmos por meio da unidade de saída de áudio ex357.
[0343] Adicionalmente, quando um correio eletrônico em modo de comunicação de dados é transmitido, os dados de texto do correio ele- trônico inserido pela operação da unidade de chave de operação ex366 e outros do corpo principal são enviados para fora para a unidade de controle principal ex360 por meio da unidade de controle de entrada de operação ex362. A unidade de controle principal ex360 faz com que a unidade de modulação/demodulação ex352 realize processamento de espectro amplo nos dados de texto, e a unidade de transmissão e recepção ex351 realiza a conversão de digital para analógico e a conversão de frequência nos dados resultantes para transmitir os dados à estação base ex110 por meio da antena ex350. Quando um correio eletrônico é recebido, o processamento que é aproximadamente inverso ao processamento para transmitir um correio eletrônico é realizado nos dados recebidos, e os dados resultantes são fornecidos à unidade de exibição ex358.
[0344] Quando vídeo, imagens estáveis, ou vídeo e áudio em mo do de comunicação de dados é ou são transmitidos, a unidade de pro-cessamento de sinal de vídeo ex355 comprimi e codifica sinais de vídeo supridos da unidade de câmera ex365 com o uso do método de codificação de figuração em movimento mostrado em cada uma das modalidades (isto é, funciona como o aparelho de codificação de imagem de acordo com o aspecto da presente invenção), e transmite os dados de vídeo codificados à unidade de multiplexa- ção/demultiplexação ex353. Em contraste, durante quando a unidade de câmera ex365 captura vídeo, imagens estáveis, e outros, a unidade de processamento de sinal de áudio ex354 codifica sinais de áudio coletados pela unidade de entrada de áudio ex356, e transmite os dados de áudio codificados à unidade de multiplexação/demultiplexação ex353.
[0345] A unidade de multiplexação/demultiplexação ex353 multi- plexa os dados de vídeo codificados supridos da unidade de processamento de sinal de vídeo ex355 e os dados de áudio codificados su- pridos da unidade de processamento de sinal de áudio ex354, com o uso de um método predeterminado. Então, a unidade de modula- ção/demodulação (unidade de circuito de modulação/demodulação) ex352 realiza processamento de espectro amplo nos dados multiple- xados, e a unidade de transmissão e recepção ex351 realiza conversão de digital para analógico e conversão de frequência nos dados de modo a transmitir os dados resultantes por meio da antena ex350.
[0346] Quando receber os dados de um arquivo de vídeo que é ligado a uma página da Web e outros em modo de comunicação de dados ou quando receber um correio eletrônico com vídeo e/ou áudio fixado, no intuito de decodificar os dados multiplexados recebidos por meio da antena ex350, a unidade de multiplexação/demultiplexação ex353 demultiplexa os dados multiplexados em um fluxo de vídeo de dados de vídeo e um fluxo de vídeo de dados de áudio, e supre a unidade de processamento de sinal de vídeo ex355 com os dados de vídeo codificados e a unidade de processamento de sinal de áudio ex354 com os dados de áudio codificados, através do barramento sín-crono ex370. A unidade de processamento de sinal de vídeo ex355 decodifica o sinal de vídeo com o uso de um método de decodificação de figuração em movimento que corresponde ao método de codificação de figuração em movimento mostrado em cada uma das modalidades (isto é, funciona como o aparelho de decodificação de imagem de acordo com o aspecto da presente invenção), e, então, a unidade de exibição ex358 exibe, por exemplo, o vídeo e as imagens estáveis incluídos no arquivo de vídeo ligado à página da Web por meio da unidade de controle de LCD ex359. Adicionalmente, a unidade de processamento de sinal de áudio ex354 decodifica o sinal de áudio, e a uni-dade de saída de áudio ex357 fornece o áudio.
[0347] Adicionalmente, similarmente à televisão ex300, um termi nal tal como o telefone celular ex114 provavelmente tem 3 tipos de configurações de implantação que incluem não somente (i) um terminal de transmissão e recepção que inclui ambos um aparelho de codificação e um aparelho de decodificação, mas também (ii) um terminal de transmissão que inclui somente um aparelho de codificação e (iii) um terminal de recepção que inclui somente um aparelho de decodifi- cação. Embora o sistema de difusão digital ex200 receba e transmita os dados multiplexados obtidos multiplexando-se os dados de áudio em dados de vídeo na descrição, os dados multiplexados podem ser os dados obtidos multiplexando-se não os dados de áudio, mas os dados de caracteres relacionados a vídeo em dados de vídeo, e podem não ser dados multiplexados, mas dados de vídeo em si.
[0348] Como tal, o método de codificação de figuração em movi mento e o método de decodificação de figuração em movimento em cada uma das modalidades podem ser usados em qualquer um dos dispositivos e sistemas descritos. Assim, as vantagens descritas em cada uma das modalidades podem ser obtidas.
[0349] Adicionalmente, a presente invenção não é limitada às Mo dalidades descritas acima, e várias modificações e revisões podem ser feitas em qualquer uma das modalidades na presente invenção sem desviar materialmente do escopo da presente invenção.
(Modalidade 5)
[0350] Os dados de vídeo podem ser gerados comutando-se, con forme necessário, entre (i) o método de codificação de figuração em movimento ou o aparelho de codificação de figuração em movimento mostrado em cada uma das modalidades e (ii) um método de codificação de figuração em movimento ou um aparelho de codificação de figuração em movimento em conformidade com um padrão diferente, tal como MPEG-2, MPEG-4 AVC, e VC-1.
[0351] Aqui, quando uma pluralidade de dados de vídeo que se conforme aos padrões diferentes é gerada e é, então, decodificada, os métodos de decodificação precisam ser selecionados para se conformarem aos padrões diferentes. No entanto, como para qual padrão cada um da pluralidade dos dados de vídeo a serem decodificados se conformam não pode ser detectado, um método de decodificação apropriado não pode ser selecionado.
[0352] Em vista disso, os dados multiplexados obtidos multiple- xando-se os dados de áudio e outros em dados de vídeo têm uma estrutura que inclui informações de identificação que indicam para qual padrão os dados de vídeo se conformam. A estrutura específica dos dados multiplexados que incluem os dados de vídeo gerados no método de codificação de figuração em movimento e pelo aparelho de codificação de figuração em movimento mostrado em cada uma das modalidades será descrita doravante no presente documento. Os dados multiplexados são um fluxo digital no formato de Fluxo de Transporte MPEG-2.
[0353] A Figura 44 ilustra uma estrutura dos dados multiplexados. Conforme ilustrado na Figura 44, os dados multiplexados podem ser obtidos multiplexando-se pelo menos um de um fluxo de vídeo, um fluxo de áudio, um fluxo de gráficos de apresentação (PG), e um fluxo de gráficos interativos. O fluxo de vídeo representa vídeo primário e vídeo secundário de um filme, o fluxo de áudio (IG) representa uma parte de áudio primária e uma parte de áudio secundária a ser misturada com a parte de áudio primária, e o fluxo de gráficos de apresentação representa as legendas do filme. Aqui, o vídeo primário é o vídeo normal a ser exibido em uma tela, e o vídeo secundário é o vídeo a ser exibido em uma janela menor no vídeo primário. Adicionalmente, o fluxo de gráficos interativos representa uma tela interativa a ser gerada arran-jando-se os componentes de GUI em uma tela. O fluxo de vídeo é codificado no método de codificação de figuração em movimento ou pelo aparelho de codificação de figuração em movimento mostrado em ca- da uma das modalidades, ou em um método de codificação de figuração em movimento ou por um aparelho de codificação de figuração em movimento em conformidade com um padrão convencional, tal como MPEG-2, MPEG-4 AVC, e VC-1. O fluxo de áudio é codificado de acordo com um padrão, tal como Dolby-AC-3, Dolby Digital Plus, MLP, DTS, DTS-HD, e PCM linear.
[0354] Cada fluxo incluído nos dados multiplexados é identificado por PID. Por exemplo, 0x1011 é alocado ao fluxo de vídeo a ser usado para o vídeo de um filme, 0x1100 a 0x111F são alocados aos fluxos de áudio, 0x1200 a 0x121F são alocados aos fluxos de gráficos de apresentação, 0x1400 a 0x141F são alocados aos fluxos de gráficos interativos, 0x1B00 a 0x1B1F são alocados aos fluxos de vídeo a serem usados para o vídeo secundário do filme, e 0x1A00 a 0x1A1F são alocados aos fluxos de áudio a serem usados para o áudio secundário a ser misturado com o áudio primário.
[0355] A Figura 45 ilustra esquematicamente como os dados são multiplexados. Primeiramente, um fluxo de vídeo ex235 composto de quatros de vídeo e um fluxo de áudio ex238 composto de quatros de áudio são transformados em um fluxo de pacotes de PES ex236 e um fluxo de pacotes de PES ex239, e adicionalmente em pacotes de TS ex237 e pacotes de TS ex240, respectivamente. Similarmente, os dados de um fluxo de gráficos de apresentação ex241 e os dados de um fluxo de gráficos interativos ex244 são transformados em um fluxo de pacotes de PES ex242 e um fluxo de pacotes de PES ex245, e adicionalmente em pacotes de TS ex243 e pacotes de TS ex246, respectivamente. Esses pacotes de TS são multiplexados em um fluxo para obter dados multiplexados ex247.
[0356] A Figura 46 ilustra como um fluxo de vídeo é armazenado em um fluxo de pacotes de PES em mais detalhes. A primeira barra na Figura 46 mostra um fluxo de quadro de vídeo em um fluxo de vídeo. A segunda barra mostra o fluxo de pacotes de PES. Conforme indicado por setas denotadas como yy1, yy2, yy3, e yy4 na Figura 46, o fluxo de vídeo é dividido em figurações como figurações I, figurações B, e figurações P, cada uma das quais é uma unidade de apresentação de vídeo, e as figurações são armazenadas em uma carga de cada um dos pacotes de PES. Cada um dos pacotes de PES tem um cabeçalho de PES, e o cabeçalho de PES armazena um Carimbo de Data/Hora de Apresentação (PTS) que indica um tempo de exibição da figuração, e um Carimbo de Data/Hora de Decodificação (DTS) que indica um tempo de decodificação da figuração.
[0357] A Figura 47 ilustra um formato de pacotes de TS a serem finalmente escritos nos dados multiplexados. Cada um dos pacotes de TS é um pacote de comprimento fixo de 188-byte que inclui um cabeçalho de TS de 4-byte que tem informações, tal como um PID para identificar um fluxo e uma carga de TS de 184-byte para armazenar os dados. Os pacotes de PES são divididos, e armazenados nas cargas de TS, respectivamente. Quando um BD ROM é usado, a cada um dos pacotes de TS é proporcionado um TP_Extra_Header de 4-byte, que resulta, assim, em pacotes de fonte de 192-byte. Os pacotes de fonte são escritos nos dados multiplexados. O TP_Extra_Header armazena informações tais como um Arrival_Time_Stamp (ATS). O ATS mostra um tempo de início de transferência no qual cada um dos pacotes de TS está para ser transferido a um filtro de PID. Os pacotes de fonte são arranjados nos dados multiplexados conforme mostrado no fundo da Figura 47. Os números que incrementam do cabeçalho dos dados multiplexados são chamados de números de pacote de fonte (SPNs).
[0358] Cada um dos pacotes TS incluídos nos dados multiplexa- dos inclui não somente fluxos de áudio, vídeo, legendas e outros, mas também uma Tabela de Associação de Programa (PAT), uma tabela de Mapa de Programa (PMT) e uma Referência de relógio de programa (PCR). A PAT mostra que um PID em um PMT usado nos dados multi- plexados indica e um PID da própria PAT é registrado como zero. A PMT armazena PIDs dos fluxos de vídeo, áudio, legendas e outros incluídos nos dados multiplexados e atribuem as informações dos fluxos correspondentes aos PIDs. A PMT também tem vários descritores relacionados aos dados multiplexados. Os descritores têm informações tais como informações de controle de cópia que mostram se a cópia dos dados multiplexados é permitida ou não. A PCR armazena STC informações de tempo correspondentes a um ATS que mostra quando o pacote de PCR é transferido a um decodificador, de modo a alcançar a sincronização entre um Relógio de Tempo de Chegada (ATC) que é um eixo geométrico de tempo dos ATSs e um Relógio de Tempo de Sistema (STC) que é um eixo geométrico de tempo de PTSs e DTSs.
[0359] A Figura 48 ilustra a estrutura de dados do PMT em deta lhes. Um cabeçalho de PMT é disposto no topo da PMT. O cabeçalho de PMT descreve o comprimento de dados incluídos no PMT e outros. Uma pluralidade de descritores relacionados aos dados multiplexados é disposta após o cabeçalho de PMT. As informações tais como as informações de controle de cópia são descritas nos descritores. Depois dos descritores, uma pluralidade de pedaços de informações de fluxo relacionados aos fluxos incluídos nos dados multiplexados é disposta. Cada pedaço de informações de fluxo inclui descritores de fluxo em que cada um descreve informações, tais como um tipo de fluxo para identificar um codec de compressão de um fluxo, um fluxo PID e informações de atributo de fluxo (tais como uma taxa de quadro ou um razão de aspecto). Os descritores de fluxo são iguais no número ao número de fluxos nos dados multiplexados.
[0360] Quando os dados multiplexados são gravados em um meio de gravação e outros, os mesmos são gravados junto aos arquivos de informações de dados multiplexados.
[0361] Cada um dos arquivos de informações de dados multiple- xados são informações de gerenciamento dos dados multiplexados conforme mostrado na Figura 49. Os arquivos de informações de dados multiplexados estão em correspondência de um para um com os dados multiplexados e cada um dos arquivos inclui informações de dados multiplexados, informações de atributo de fluxo e um mapa de entrada.
[0362] Conforme ilustrado na Figura 49, as informações de dados multiplexados incluem uma taxa de sistema, um tempo de início de reprodução e um tempo de fim de reprodução. A taxa de sistema indica a taxa máxima de transferência na qual um decodificador alvo de sistema a ser descrito posteriormente transfere os dados multiplexa- dos a um filtro PID. Os intervalos das ATSs incluídos nos dados multi- plexados são definidos para não maiores do que uma taxa de sistema. O tempo de início de reprodução indica um PTS em um quadro de vídeo na cabeça dos dados multiplexados. Um intervalo de um quadro é adicionado a um PTS em um quadro de vídeo no fim dos dados multi- plexados e o PTS é definido ao tempo de fim de reprodução.
[0363] Conforme mostrado na Figura 50, um pedaço de informa ções de atributo é registrado nas informações de atributo de fluxo, para cada PID de cada fluxo incluído nos dados multiplexados. Cada pedaço de informações de atributo tem diferentes informações dependendo se o fluxo correspondente é um fluxo de vídeo, um fluxo de áudio, um fluxo de gráfico de apresentação, ou um fluxo de gráfico interativo. Cada pedaço de informações de atributo de fluxo de vídeo carrega informações que incluem qual tipo de codec de compressão para comprimir o fluxo de vídeo e a resolução, razão de aspecto e taxa de quadro dos pedaços de dados de figuração que é incluído no fluxo de vídeo. Cada pedaço de informações de áudio de atributo de fluxo car-rega informações que incluem qual tipo de codec de compressão é usado para comprimir o fluxo de áudio, Quantos canais são incluídos no fluxo de áudio, Qual idioma o fluxo de áudio suporta e quão alta a frequência de amostragem é. As informações de atributo de fluxo de vídeo e as informações de áudio de atributo de fluxo são usadas para inicialização de um decodificador antes que o reprodutor reproduza as informações.
[0364] Na presente modalidade, os dados multiplexados a serem usados são de um tipo de fluxo incluído na PMT. Ademais, quando os dados multiplexados são gravados em um meio de gravação, as informações de atributo de fluxo de vídeo incluídas nas informações de dados multiplexados são usadas. Mais especificamente, o método de codificação de figuração em movimento ou o aparelho de codificação de figuração em movimento descrito em cada uma das modalidades inclui uma etapa ou uma unidade para alocar informações únicas que indicam dados de vídeo gerados pelo método de codificação de figuração em movimento ou polo aparelho de codificação de figuração em movimento em cada uma das modalidades, ao tipo de fluxo incluído na PMT ou as informações de atributo de fluxo de vídeo. Com a configuração, os dados de vídeo gerados pelo método de codificação de figu-ração em movimento ou pelo aparelho de codificação de figuração em movimento descritos em cada uma das modalidades podem ser distinguidos a partir dos dados de vídeo que conforma a outro padrão.
[0365] Ademais, a Figura 51 ilustra etapas do método de decodifi- cação de figuração em movimento de acordo com a presente modalidade. Na Etapa exS100, o tipo de fluxo incluído na PMT ou as informações de atributo de fluxo de vídeo incluídas nas informações de dados multiplexados é obtido a partir dos dados multiplexados. Em seguida, na Etapa exS101, é determinado se o tipo de fluxo ou as informações de atributo de fluxo de vídeo indica ou não que os dados mul- tiplexados são gerados pelo método de codificação de figuração em movimento ou pelo aparelho de codificação de figuração em movimento em cada uma das modalidades. Quando é determinado que o tipo de fluxo ou as informações de atributo de fluxo de vídeo indica que os dados multiplexados são gerados pelo método de codificação de figuração em movimento ou pelo aparelho de codificação de figuração em movimento em cada uma das modalidades, na Etapa exS102, a deco- dificação é realizada pelo método de decodificação de figuração em movimento em cada uma das modalidades. Ademais, quando o tipo de fluxo ou as informações de atributo de fluxo de vídeo indica conformidade com os padrões convencionais, tais como MPEG-2, MPEG-4 AVC e VC-1, na Etapa exS103, a decodificação é realizada por um método de decodificação de figuração em movimento em conformidade com os padrões convencionais.
[0366] Como tal, alocar um novo valor único ao tipo de fluxo ou as informações de atributo de fluxo de vídeo permite a determinação se o método de decodificação de figuração em movimento ou o aparelho de decodificação de figuração em movimento que é descrito em cada uma das modalidades pode realizar decodificação ou não. Mesmo quando os dados multiplexados que se conformam a um diferente padrão são inseridos, um método ou aparelho de decodificação apropriado pode ser selecionado. Desse modo, torna-se possível decodificar informações sem nenhum erro. Ademais, o método ou aparelho de codificação de figuração em movimento, ou o método ou aparelho de de- codificação de figuração em movimento na presente modalidade pode ser usado nos dispositivos e sistemas descritos acima.
(Modalidade 6)
[0367] Cada um dentre os métodos de codificação de figuração em movimento, do aparelho de codificação de figuração em movimento, do método de decodificação de figuração em movimento e do aparelho de decodificação de figuração em movimento em cada uma das modalidades é tipicamente alcançado na forma de um circuito integrado ou um circuito Integrado em Larga Escala (LSI). Como um exemplo da LSI, A Figura 52 ilustra uma configuração da LSI ex500 que é feita em um chip. O LSI ex500 inclui elementos ex501, ex502, ex503, ex504, ex505, ex506, ex507, ex508 e ex509 a ser descrito abaixo e os elementos são conectados um ao outro através de um barramento ex510. A unidade de circuito de fonte de alimentação ex505 é ativada abastecendo cada um dos elementos com potência quando a unidade de circuito de fonte de alimentação ex505 é ligada.
[0368] Por exemplo, quando a codificação é realizada, o LSI ex500 recebe um sinal AV de um microfone ex117, uma câmera ex113 e outros através de um IO AV ex509 sob controle de uma unidade de controle ex501 que inclui um CPU ex502, um controlador de memória ex503, um controlador de fluxo ex504 e uma unidade de controle de frequência de acionamento ex512. O sinal AV recebido é temporariamente armazenado em uma memória externa ex511, tal como um SDRAM. Sob controle da unidade de controle ex501, os dados armazenados são segmentados nas porções de dados de acordo com a quantidade de processamento e velocidade a ser transmitida a uma unidade de processamento de sinal ex507. Então, a unidade de processamento de sinal ex507 codifica um sinal de áudio e/ou um sinal de vídeo. Aqui, a codificação do sinal de vídeo é a codificação descrita em cada uma das modalidades. Ademais, a unidade de processamento de sinal ex507 algumas vezes multiplexa os dados de áudio codificados e os dados de vídeo codificados e um fluxo IO ex506 fornece os dados multiplexados para fora. Os dados multiplexados fornecidos são transmitidos à estação de base ex107, ou escritas no meio de gravação ex215. Quando conjuntos de dados são multiplexados, os dados devem ser temporariamente armazenados no armazenamento temporário ex508 de modo que os conjuntos de dados são sincronizados um com o outro.
[0369] Embora a memória ex511 seja um elemento fora do LSI ex500, o mesmo pode ser incluído na LSI ex500. O armazenamento temporário ex508 não é limitado a um armazenamento temporário, mas pode ser composto de armazenamentos temporários. Ademais, o LSI ex500 pode ser feito em um chip ou uma pluralidade de chips.
[0370] Ademais, embora a unidade de controle ex501 inclua o CPU ex502, o controlador de memória ex503, o controlador de fluxo ex504, a unidade de controle de frequência de acionamento ex512, a configuração da unidade de controle ex501 não é limitado a tal. Por exemplo, a unidade de processamento de sinal ex507 pode incluir adicionalmente um CPU. A inclusão de outro CPU na unidade de processamento de sinal ex507 pode aprimorar a velocidade de processamento. Ademais, conforme outro exemplo, o CPU ex502 pode servir como a unidade de processamento de sinal ex507 ou ser uma parte da mesma, e, por exemplo, pode incluir uma unidade de processamento de sinal de áudio. Em tal um caso, a unidade de controle ex501 inclui a unidade de processamento de sinal ex507 ou o CPU ex502 que inclui uma parte da unidade de processamento de sinal ex507.
[0371] O nome usado aqui é LSI, mas também pode ser chamado IC, sistema LSI, super LSI, ou ultra LSI dependendo do grau de integração.
[0372] Ademais, os modos para alcançar integração não são limi tados ao LSI e um circuito especial ou um processador de propósito geral e assim por diante também pode alcançar a integração. Arranjo de portas programável de campo (FPGA) que pode ser programado após a fabricação de LSIs ou um processor reconfígurável que permite a reconfiguração da conexão ou configuração de um LSI que pode ser usado para o mesmo propósito. Tal um dispositivo lógico programável pode executar tipicamente o método de codificação de figuração em movimento e/ou o método de decodificação de figuração em movimen- to de acordo com qualquer uma das modalidades acima, carregando ou lendo a partir de uma memória ou os mesmos um ou more programas que são incluídos no software ou firmware.
[0373] No futuro, com o avanço da tecnologia de semicondutor, uma tecnologia recém-criada pode substituir o LSI. Os blocos funcionais podem ser integrados com o uso de tal uma tecnologia. A possibilidade é que a presente invenção é aplicada à biotecnologia.
(Modalidade 7)
[0374] Quando os dados de vídeo gerados no método de codifica ção de figuração em movimento ou pelo aparelho de codificação de figuração em movimento descrito em cada uma das modalidades é decodificado, em comparação a quando os dados de vídeo que se conformam a um padrão convencional, tal como MPEG-2, MPEG-4 AVC e VC-1 são decodificados, a quantidade de processamento provavelmente aumenta. Desse modo, o LSI ex500 precisa ser definido a uma frequência de acionamento maior do que a do CPU ex502 a ser usada quando os dados de vídeo em conformidade com o padrão convencional são decodificados. No entanto, quando a frequência de acionamento é definida maior, o consumo de potência aumenta.
[0375] Em vista disso, o aparelho de decodificação de figuração em movimento, tal como a televisão ex300 e o LSI ex500 é configurado para determinar a qual padrão os dados de vídeo se conforma e comutar entre as frequências de acionamento de acordo com o padrão determinado. A Figura 53 ilustra uma configuração ex800 na presente modalidade. Uma unidade de comutação de frequência de acionamento ex803 sets uma frequência de acionamento a uma frequência de acionamento maior quando os dados de vídeo são gerados pelo método de codificação de figuração em movimento ou pelo aparelho de codificação de figuração em movimento descrito em cada uma das modalidades. Então, a unidade de comutação de frequência de aciona- mento ex803 instrui uma unidade de processamento de decodificação ex801 que executa o método de decodificação de figuração em movimento descrito em cada uma das modalidades para decodificar os dados de vídeo. Quando os dados de vídeo se conformam ao padrão convencional, a unidade de comutação de frequência de acionamento ex803 define uma frequência de acionamento a uma frequência de acionamento menor do que a dos dados de vídeo gerados pelo método de codificação de figuração em movimento ou pelo aparelho de codificação de figuração em movimento descrito em cada uma das modalidades. Então, a unidade de comutação de frequência de acionamento ex803 instrui a unidade de processamento de decodificação ex802 que conforma ao padrão convencional para decodificar os dados de vídeo.
[0376] Mais especificamente, a unidade de comutação de frequên cia de acionamento ex803 inclui o CPU ex502 e a unidade de controle de frequência de acionamento ex512 na Figura 52. Aqui, cada uma da unidade de processamento de decodificação ex801 que executa o método de decodificação de figuração em movimento descrito em cada uma das modalidades e a unidade de processamento de decodificação ex802 que se conforma ao padrão convencional corresponde à unidade de processamento de sinal ex507 na Figura 52. O CPU ex502 determina a qual padrão os dados de vídeo se conformam. Então, a unidade de controle de frequência de acionamento ex512 determina uma frequência de acionamento com base em um sinal do CPU ex502. Ademais, a unidade de processamento de sinal ex507 decodifica os dados de vídeo com base no sinal do CPU ex502. Por exemplo, as informações de identificação descritas na Modalidade 5 provavelmente são usadas para identificar os dados de vídeo. As informações de identificação não são limitadas à descrita na Modalidade 5, mas podem ser quaisquer informações desde que as informações indiquem a qual padrão os dados de vídeo se conformam. Por exemplo, quando a qual padrão os dados de vídeo se conforma pode ser determinado com base em um sinal externo para determinar que os dados de vídeo são usados para uma televisão ou um disco, etc., a determinação pode ser feita com base em tal um sinal externo. Ademais, o CPU ex502 seleciona uma frequência de acionamento com base em, por exemplo, uma tabela de consulta na qual os padrões dos dados de vídeo são associados às frequências de acionamento conforme mostrado na Figura 55. A frequência de acionamento pode ser selecionada armazenando-se a tabela de consulta no armazenamento temporário ex508 e em uma memória interna de um LSI e em referência à tabela de consulta pelo CPU ex502.
[0377] A Figura 54 ilustra etapas para executar um método na pre sente modalidade. Primeiro, na Etapa exS200, a unidade de processamento de sinal ex507 obtém informações de identificação dos dados multiplexados. Em seguida, na Etapa exS201, o CPU ex502 determina se ou não os dados de vídeo são gerados pelo método de codificação e pelo aparelho de codificação descrito em cada uma das modalidades, com base nas informações de identificação. Quando os dados de vídeo são gerados pelo método de codificação de figuração em movimento e o aparelho de codificação de figuração em movimento descrito em cada uma das modalidades, na Etapa exS202, o CPU ex502 transmite um sinal para definir a frequência de acionamento a uma frequência de acionamento maior à unidade de controle de frequência de acionamento ex512. Então, a unidade de controle de frequência de acionamento ex512 define a frequência de acionamento à frequência de acionamento maior. Por outro lado, quando as informações de identificação indicam que os dados de vídeo se conformam ao padrão convencional, tal como MPEG-2, MPEG-4 AVC e VC-1, na Etapa exS203, o CPU ex502 transmite um sinal para definir a frequência de aciona- mento a uma frequência de acionamento menor à unidade de controle de frequência de acionamento ex512. Então, a unidade de controle de frequência de acionamento ex512 define a frequência de acionamento à frequência de acionamento menor do que o do caso em que os dados de vídeo são gerados pelo método de codificação de figuração em movimento e o aparelho de codificação de figuração em movimento descrito em cada uma das modalidades.
[0378] Ademais, junto à comutação das frequências de aciona mento, o efeito de conservação de potência pode ser aprimorado mudando-se a tensão à aplicada ao LSI ex500 ou um aparelho que inclui o LSI ex500. Por exemplo, quando a frequência de acionamento é definida menor, a tensão a ser aplicada ao LSI ex500 ou o aparelho que inclui o LSI ex500 é provavelmente definida a uma tensão menor do que o do caso em que a frequência de acionamento é definida maior.
[0379] Ademais, quando a quantidade de processamento para de- codificação é maior, a frequência de acionamento pode ser definida maior e quando a quantidade de processamento para decodificação é menor, a frequência de acionamento pode ser definida menor conforme o método para definir a frequência de acionamento. Desse modo, o método de definição não é limitado àqueles descritos acima. Por exemplo, quando a quantidade de processamento para decodificar dados de vídeo em conformidade com MPEG-4 AVC é maior do que a quantidade de processamento para decodificar dados de vídeo gerados pelo método de codificação de figuração em movimento e pelo aparelho de codificação de figuração em movimento descrito em cada uma das modalidades, a frequência de acionamento é provavelmente definida em ordem reversa à definição descrita acima.
[0380] Ademais, o método para definir a frequência de acionamen to não é limitado ao método para definir a frequência de acionamento menor. Por exemplo, quando as informações de identificação indicam que os dados de vídeo são gerados pelo método de codificação de figuração em movimento e o aparelho de codificação de figuração em movimento descrito em cada uma das modalidades, a tensão a ser aplicada ao LSI ex500 ou ao aparelho que inclui o LSI ex500 é provavelmente definida maior. Quando as informações de identificação indicam que os dados de vídeo se conformam ao padrão convencional, tal como MPEG-2, MPEG-4 AVC e VC-1, a tensão a ser aplicada ao LSI ex500 ou ao aparelho que incluem o LSI ex500 é provavelmente definida menor. Conforme outro exemplo, quando as informações de identificação indicam que os dados de vídeo são gerados pelo método de codificação de figuração em movimento e o aparelho de codificação de figuração em movimento descrito em cada uma das modalidades, o acionamento do CPU ex502 provavelmente não tem de ser suspenso. Quando as informações de identificação indicam que os dados de vídeo se conformam ao padrão convencional, tal como MPEG-2, MPEG- 4 AVC e VC-1, o acionamento do CPU ex502 é provavelmente suspenso em um dado tempo devido ao fato de que o CPU ex502 tem capacidade de processamento extra. Mesmo quando as informações de identificação indicam que os dados de vídeo são gerados pelo método de codificação de figuração em movimento e o aparelho de codificação de figuração em movimento descrito em cada uma das modalidades, no caso em que o CPU ex502 tem capacidade de processamento extra, o acionamento do CPU ex502 é provavelmente suspenso em um dado tempo. Em tal um caso, o tempo de suspensão é provavelmente definido mais curto do que o do caso em que quando as informações de identificação indicam que os dados de vídeo se conformam ao padrão convencional, tal como MPEG-2, MPEG-4 AVC e VC-1.
[0381] Consequentemente, o efeito de conservação de potência pode ser aprimorado comutando-se entre as frequências de acionamento em concordância com o padrão ao qual os dados de vídeo se conformam. Ademais, quando o LSI ex500 ou o aparelho que inclui o LSI ex500 é acionado com o uso de uma bateria, a vida útil da bateria pode ser estendida com o efeito de conservação de potência.
(Modalidade 7)
[0382] Há casos em que uma pluralidade de dados de vídeo que conformam aos diferentes padrões é fornecida aos dispositivos e sistemas, tal como uma televisão e um telefone celular. De modo a permitir a decodificação da pluralidade de dados de vídeo que conformam aos diferentes padrões, a unidade de processamento de sinal ex507 do LSI ex500 precisa se conformar aos diferentes padrões. No entanto, o aumento na escala do circuito do LSI ex500 e aumento de custos se elevam com o uso individual da unidade de processamento de sinais ex507 que se conformam aos respectivos padrões.
[0383] Em vista disso, o que é concebido é uma configuração na qual a unidade de processamento de decodificação para implantar o método de decodificação de figuração em movimento descrito em cada uma das modalidades e a unidade de processamento de decodifi- cação que se conforma ao padrão convencional, tal como MPEG-2, MPEG-4 AVC e VC-1 são parcialmente compartilhadas. Ex900 na Figura 56A mostra um exemplo da configuração. Por exemplo, o método de decodificação de figuração em movimento descrito em cada uma das modalidades e o método de decodificação de figuração em movimento que conforma ao MPEG-4 AVC têm, parcialmente em comum, os detalhes de processamento, tal como codificação de entropia, quantização inversa, filtragem de desbloqueio e previsão compensada de movimento. Os detalhes de processamento a serem compartilhados provavelmente incluem o uso de uma unidade de processamento de decodificação ex902 que conforma ao MPEG-4 AVC. Em contraste, uma unidade de processamento de decodificação dedicada ex901 é provavelmente usada para outro processamento que é único a um as- pecto da presente invenção e não se conforma ao MPEG-4 AVC. Visto que o aspecto da presente invenção é caracterizado por decodificação de entropia em particular, por exemplo, a unidade de processamento de decodificação dedicada ex901 é usada para decodificação de entropia. De outro modo, a unidade de processamento de decodificação é provavelmente compartilhada para um dentre quantização inversa, filtragem de desbloqueio e compensação de movimento, ou todo o processamento. A unidade de processamento de decodificação para implantar o método de decodificação de figuração em movimento descrito em cada uma das modalidades pode ser compartilhada para o processamento a ser compartilhado e uma unidade de processamento de decodificação dedicada pode ser usada para processamento único ao do MPEG-4 AVC.
[0384] Ademais, ex1000 na Figura 56B mostra que outro exemplo nesse processamento é parcialmente compartilhado. Esse exemplo usa uma configuração que inclui uma unidade de processamento de decodificação dedicada ex1001 que suporta o processamento único a um aspecto da presente invenção, uma unidade de processamento de decodificação dedicada ex1002 que suporta o processamento único a outro padrão convencional e uma unidade de processamento de deco- dificação ex1003 que suporta o processamento a ser compartilhado entre o método de decodificação de figuração em movimento de acordo com o aspecto da presente invenção e o método de decodificação convencional de figuração em movimento. Aqui, a unidades de processamento de decodificação dedicadas ex1001 e ex1002 não são necessariamente especializadas para o processamento de acordo com o aspecto da presente invenção e o processamento do padrão convencional, respectivamente e podem ser aquelas com capacidade de implantar processamento geral. Ademais, a configuração da presente modalidade pode ser implantada pelo LSI ex500.
[0385] Como tal, a redução da escala do circuito de um LSI e a redução dos custos são possíveis compartilhando-se a unidade de processamento de decodificação para o processamento a ser compartilhado entre o método de decodificação de figuração em movimento de acordo com o aspecto da presente invenção e o método de decodi- ficação de figuração em movimento em conformidade com o padrão convencional.
APLICABILIDADE INDUSTRIAL
[0386] O método de codificação de imagem e o método de decodi- ficação de imagem de acordo com a presente invenção produzem efeitos vantajosos de evitar a deterioração em uma qualidade de imagem e aprimorar a eficiência de processamento e são aplicáveis a uma variedade de propósitos tal como acúmulo, transmissão e comunicação de uma imagem. O método de codificação de imagem e o método de decodificação de imagem de acordo com a presente invenção que podem ser usados para, por exemplo, um dispositivo de exibição de informações de alta resolução ou dispositivo de captura, tal como uma televisão, um gravador de vídeo digital, uma navegação de carro, um telefone celular, uma câmera digital, uma câmera de vídeo digital e assim por diante e são úteis. LISTA DE SINAIS DE REFERÊNCIA 100 aparelho de codificação de imagem 110, 210, 306, 405 unidade de controle 120 unidade de codificação 121 subtrator 122, unidade de transformação de frequência 123, unidade de quantização 124, unidade de codificação de entropia 125, 225 unidade de quantização inversa 126, 226 unidade de transformação de frequência inversa 127, 227 adicionador 128, 228, 300, 400 unidade de filtragem de laço 129, 229 unidade de armazenamento 130, 230 unidade de intraprevisão 131, 231 unidade de compensação de movimento 132, unidade de estimativa de movimento 133, 233 comutador 141, 241 imagem 142, 242 codificado fluxo 151, 251, 301, 401 unidade de obtenção de sinal 152, 302 unidade de cálculo de informações de deslocamento 153, 253, 303, 403 unidade de processamento de deslocamento 154, 305, 307 unidade de codificação de informações de deslocamento 155, 254, 304, 404 unidade de emissão de sinal 200 aparelho de decodificação de imagem 220 unidade de decodificação 224 unidade de decodificação de entropia 252, 402, 406 unidade de decodificação de informações de deslocamento 3071 codificação aritmética unidade de controle 3072 unidade de codificação aritmética de contexto 3073 unidade de codificação aritmética de bypass 4061 unidade de controle de decodificação aritmética 4062 unidade de decodificação aritmética de contexto 4063 unidade de decodificação aritmética de by-pass

Claims (5)

1. Método de codificação de imagem, compreendendo: codificar (S511, S512) uma pluralidade de elementos de sintaxe relacionados a processamento de deslocamento adaptativo de amostra (SAO) que é processamento de deslocamento em um valor de pixel, caracterizado pelo fato de que a codificação (S511, S512) inclui: realizar codificação aritmética de contexto (S511) para codificar consecutivamente (i) um primeiro elemento de sintaxe indicando se deve ou não realizar o processamento de SAO para uma primeira região de uma imagem, (ii) um segundo elemento de sintaxe indicando se deve ou não usar, no processamento de SAO para a primeira região, informação sobre processamento de SAO para uma região esquerda que é adjacente à primeira região e está à esquerda da primeira região, e (iii) um terceiro elemento de sintaxe indicando se deve usar, no processamento de SAO para a primeira região, informação sobre processamento de SAO para uma região superior que é adjacente à primeira região e está no topo da primeira região, a codificação aritmética de contexto sendo uma codificação aritmética usando uma probabilidade variável; e realizar codificação aritmética de bypass (S512) para codificar outra informação que é informação sobre o processamento de SAO para a primeira região e diferente do primeiro elemento de sintaxe, do segundo elemento de sintaxe, ou do terceiro elemento de sintaxe, após o primeiro elemento de sintaxe, o segundo elemento de sintaxe e o terceiro elemento de sintaxe serem codificados, a codificação aritmética de bypass sendo uma codificação aritmética usando uma probabilidade fixa; em que na realização de codificação aritmética de bypass (S512), a outra informação é codificada, a qual inclui (i) um quarto elemento de sintaxe que indica se o processamento de SAO para a primeira região é um processamento de deslocamento de borda ou processamento de deslocamento de banda e (ii) um quinto elemento de sintaxe indicando um valor absoluto de um valor de deslocamento, o processamento de deslocamento de borda sendo executado de acordo com uma borda, o processamento de deslocamento de banda sendo executado de acordo com um valor de pixel; e em que na realização de codificação aritmética de bypass (S512), quando o processamento de SAO para a primeira região é o processamento de deslocamento de banda, a outra informação é codificada que inclui (i) um sexto elemento de sintaxe indicando se o valor de deslocamento é positivo ou negativo e (ii) um sétimo elemento de sintaxe indicando um escopo de aplicação do valor de deslocamento.
2. Método de decodificação de imagem, compreendendo: decodificar (S521, S522) uma pluralidade de elementos de sintaxe relacionados a processamento de deslocamento adaptativo de amostra (SAO) que é processamento de deslocamento em um valor de pixel, caracterizado pelo fato de que a decodificação (S521, S522) inclui: realizar decodificação aritmética de contexto (S521) para decodificar consecutivamente (i) um primeiro elemento de sintaxe indicando se deve realizar o processamento de SAO para uma primeira região de uma imagem, (ii) um segundo elemento de sintaxe indicando se deve usar, no processamento de SAO para a primeira região, informação sobre processamento de SAO para uma região esquerda que é adjacente à primeira região e está à esquerda da primeira região, e (iii) um terceiro elemento de sintaxe indicando se deve usar, no processamento de SAO para a primeira região, informação sobre pro- cessamento de SAO para uma região superior que é adjacente à primeira região e está no topo da primeira região, a decodificação aritmética de contexto sendo uma decodificação aritmética usando uma probabilidade variável; e realizar decodificação aritmética de bypass (S522) para decodificar outra informação que é informação sobre o processamento de SAO para a primeira região e diferente do primeiro elemento de sintaxe, do segundo elemento de sintaxe, ou do terceiro elemento de sintaxe, após o primeiro elemento de sintaxe, o segundo elemento de sintaxe, e o terceiro elemento de sintaxe serem decodificados, a decodifi- cação aritmética de bypass sendo uma decodificação aritmética usando uma probabilidade fixa; em que na execução da decodificação aritmética de bypass (S522), a outra informação é decodificada que inclui (i) um quarto elemento de sintaxe indicando se o processamento de SAO para a primeira região é um processamento de deslocamento de borda ou um processamento de deslocamento de banda e (ii) um quinto elemento de sintaxe indicando um valor absoluto de um valor de deslocamento, o processamento de deslocamento de borda sendo executado de acordo com uma borda, o processamento de deslocamento de banda sendo executado de acordo com um valor de pixel; e em que na execução da decodificação aritmética de bypass (S522), quando o processamento de SAO para a primeira região é o processamento de deslocamento de banda, a outra informação é decodificada que inclui (i) um sexto elemento de sintaxe indicando se o valor de deslocamento é positivo ou negativo e (ii) um sétimo elemento de sintaxe indicando um escopo de aplicação do valor de deslocamento.
3. Aparelho de codificação de imagem, caracterizado pelo fato de que compreende: circuito de controle; e armazenamento acessível a partir do circuito de controle adaptado para executar o método de codificação de imagem conforme definido na reivindicação 1.
4. Aparelho de decodificação de imagem, caracterizado pelo fato de que compreende: circuito de controle; e armazenamento acessível a partir do circuito de controle adaptado para executar o método de decodificação de imagem conforme definido na reivindicação 2.
5. Aparelho de codificação e decodificação de imagem, ca-racterizado pelo fato de que compreende: o aparelho de codificação de imagem conforme definido na reivindicação 3; e o aparelho de decodificação de imagem conforme definido na reivindicação 4.
BR112013033374-0A 2012-06-08 2013-05-31 Método de codificação de imagem, método de decodificação de imagem, aparelho de codificação de imagem, aparelho de decodificação de imagem e aparelho de codificação e decodificação de imagem BR112013033374B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201261657183P 2012-06-08 2012-06-08
US61/657,183 2012-06-08
PCT/JP2013/003452 WO2013183268A1 (ja) 2012-06-08 2013-05-31 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置および画像符号化復号装置

Publications (2)

Publication Number Publication Date
BR112013033374A2 BR112013033374A2 (pt) 2017-06-13
BR112013033374B1 true BR112013033374B1 (pt) 2023-07-04

Family

ID=

Similar Documents

Publication Publication Date Title
AU2013272989B2 (en) Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
JP6365957B2 (ja) 画像符号化方法および画像符号化装置
CA2827194C (en) Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
BR112015004246B1 (pt) Método de codificação de imagem e aparelho de codificação de imagem
BR112015004216B1 (pt) Método de decodificação de imagem, método de codificação de imagem, aparelho de decodificação de imagem e aparelho de codificação de imagem
BR112013031212B1 (pt) Método de decodificação de imagem e aparelho de decodificação de imagem
BR112014026177B1 (pt) Método de codificação de imagem, método de decodificação de imagem, aparelho de codificação de imagem, aparelho de decodificação de imagem, e aparelho de codificação e decodificação de imagem
EP4002850B1 (en) Image coding method and apparatus
BR112013033374B1 (pt) Método de codificação de imagem, método de decodificação de imagem, aparelho de codificação de imagem, aparelho de decodificação de imagem e aparelho de codificação e decodificação de imagem
BR112013033365B1 (pt) Método de codificação de imagem e método de decodificação de imagem