BR112014031146B1 - Método de codificação de imagem que usa codificação aritmética, método de decodificação de imagem usa decodificação aritmética, aparelho de codificação de imagem e aparelho de decodificação de imagem - Google Patents

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

Info

Publication number
BR112014031146B1
BR112014031146B1 BR112014031146-3A BR112014031146A BR112014031146B1 BR 112014031146 B1 BR112014031146 B1 BR 112014031146B1 BR 112014031146 A BR112014031146 A BR 112014031146A BR 112014031146 B1 BR112014031146 B1 BR 112014031146B1
Authority
BR
Brazil
Prior art keywords
unit
context
flag
decoding
coding
Prior art date
Application number
BR112014031146-3A
Other languages
English (en)
Other versions
BR112014031146A8 (pt
BR112014031146A2 (pt
Inventor
Youji Shibahara
Toru Matsunobu
Kengo Terada
Toshiyasu Sugio
Takahiro Nishi
Kyoko Tanikawa
Hisao Sasai
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
Publication of BR112014031146A2 publication Critical patent/BR112014031146A2/pt
Publication of BR112014031146A8 publication Critical patent/BR112014031146A8/pt
Publication of BR112014031146B1 publication Critical patent/BR112014031146B1/pt

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
    • H03M7/4006Conversion to or from arithmetic code
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

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

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 usa codificação aritmética. O método inclui: desempenhar codificação aritmética em um primeiro indicador (greater1_flag) que indica quanto a se um valor absoluto de um coeficiente alvo em um bloco de coeficiente alvo é ou não maior do que 1 (S701); e desempenhar codificação aritmética em um segundo indicador (greater2_flag) que indica quanto a se o valor absoluto é maior que 2 (S702). Na codificação aritmética no primeiro indicador e a codificação aritmética no segundo indicador, é determinado quanto a se um bloco de coeficiente imediatamente anterior que foi codificado imediatamente anterior ao bloco de coeficiente alvo inclui um coeficiente que tem um valor absoluto maior que o valor limite (S711). Com base em um resultado da determinação, contextos respectivos a serem usados na codificação aritmética nos primeiro e segundo indicadores são selecionados (S712).

Description

CAMPO DA TÉCNICA
[0001] A presente invenção refere-se a métodos de codificação de imagem e métodos de decodificação de imagem.
ANTECEDENTES DA INVENÇÃO
[0002] Nos últimos anos, com o rápido avanço das tecnologias de aparelho de vídeo digital, tem havido mais oportunidades para compressão- codificação de sinais de vídeo (imagens em movimento em tempo-série) e gravação dos sinais de vídeo resultantes em um meio de gravação, tal como, um Disco Digital Versátil (DVD) ou um disco rígido ou distribuição dos mesmos na rede. Um exemplo de padrões de codificação de imagem é H.264/AVC (MPEG-4 AVC). O padrão Codificação de Vídeo de Alta Eficiência (High Efficiency Video Coding - HEVC) foi recentemente examinado como um padrão de nova geração (consulte a literatura de não patente 1, por exemplo).
LISTAGEM DE CITAÇÃO LITERATURA DE NÃO PATENTE
[0003] Literatura de Não Patente 1 Joint Collaborative Team on Video Coding (JCT-VC) de ITU-T SG16 WP3 e ISO/IEC JTC1/SC29/WG11 9o Encontro: Genebra, CH, 27 de abril a 7 de maio de 2012 JCTVC- I1003_d4.doc, High efficiency video coding (HEVC) text specification draft 7 http://phenix.it- sudparis.eu/jct/doc_end_user/documents/9_Geneva/wg11/JCTVC-I1003- v5.zip
SUMÁRIO DA INVENÇÃO PROBLEMA DA TÉCNICA
[0004] Para tal método de codificação de imagem e método de decodificação de imagem, demanda-se a redução de uma quantidade de processamento enquanto se suprime a deterioração da eficiência de codificação.
[0005] A presente invenção proporciona um método de codificação de imagem e um método de decodificação de imagem, cada um, capaz de reduzir uma quantidade de processamento enquanto suprime a deterioração da eficiência de codificação.
SOLUÇÃO PARA O PROBLEMA
[0006] A fim de solucionar o problema acima, de acordo com um aspecto da presente invenção, proporcionou-se um método de codificação de imagem que usa codificação aritmética, o método de codificação de imagem que inclui: realizar codificação aritmética em um primeiro indicador que indica se um valor absoluto de um coeficiente alvo em um bloco de coeficiente alvo é maior que 1 ou não; e realizar a codificação aritmética em um segundo indicador que indica se o valor absoluto é maior que 2 ou não, em que, na realização da codificação aritmética no primeiro indicador e na realização da codificação aritmética no segundo indicador, se determina se um bloco de coeficiente imediatamente anterior que foi codificado imediatamente antes do bloco de coeficiente alvo inclui um coeficiente que tem um valor absoluto maior que um valor limite ou não, e um contexto a ser usado na codificação aritmética no primeiro indicador e um contexto a ser usado na codificação aritmética no segundo indicador são selecionados com base em um resultado da determinação.
[0007] Esses aspectos gerais e específicos podem ser implantados usando um sistema, um método, um circuito integrado, um programa de computador ou um meio de gravação legível por computador, tal como, um CD-ROM ou qualquer combinação de sistemas, métodos, circuito integrados, programas de computador ou meios de gravação legíveis por computador.
EFEITOS VANTAJOSOS DA INVENÇÃO
[0008] A presente invenção proporciona um método de codificação de imagem e um método de decodificação de imagem, cada um capaz de reduzir uma quantidade de processamento enquanto suprime a deterioração da eficiência de codificação.
BREVE DESCRIÇÃO DOS DESENHOS
[0009] A Figura 1 é um diagrama de blocos de um aparelho de codificação de imagem, de acordo com a modalidade 1.
[0010] A Figura 2 é um fluxograma de codificação de imagem, de acordo com a modalidade 1.
[0011] A Figura 3 é um diagrama de blocos de uma unidade de codificação de comprimento variável, de acordo com a modalidade 1.
[0012] A Figura 4 é um fluxograma de codificação de comprimento variável, de acordo com a modalidade 1.
[0013] A Figura 5 é um diagrama de blocos de uma unidade de codificação de nível, de acordo com a modalidade 1.
[0014] A Figura 6 é um fluxograma de codificação de nível, de acordo com a modalidade 1.
[0015] A Figura 7 é um fluxograma de codificação greater1_flag, de acordo com a modalidade 1.
[0016] A Figura 8 é um fluxograma de codificação greater2_flag, de acordo com a modalidade 1.
[0017] A Figura 9 é um fluxograma de codificação restante, de acordo com a modalidade 1.
[0018] A Figura 10 é um fluxograma de seleção de conjunto de contexto, de acordo com a modalidade 1.
[0019] A Figura 11 é um fluxograma de seleção de contexto grea- ter1_flag, de acordo com a modalidade 1.
[0020] A Figura 12 é uma tabela que mostra um exemplo de nú-meros de contexto, de acordo com a modalidade 1.
[0021] A Figura 13 é um fluxograma de binarização restante, de acordo com a modalidade 1.
[0022] A Figura 14 é um fluxograma de determinação de prefixo e sufixo, de acordo com a modalidade 1.
[0023] A Figura 15A é uma tabela que mostra um exemplo de re-lações de correspondência entre restante, binário de prefixo e sufixo, de acordo com a modalidade 1.
[0024] A Figura 15B é uma tabela que mostra um exemplo de re-lações de correspondência entre restante, binário de prefixo e sufixo, de acordo com a modalidade 1.
[0025] A Figura 15C é uma tabela que mostra um exemplo de re-lações de correspondência entre restante, binário de prefixo e sufixo, de acordo com a modalidade 1.
[0026] A Figura 16 é um fluxograma de saída de binário de prefixo, de acordo com a modalidade 1.
[0027] A Figura 17 é um fluxograma de saída de binário de sufixo, de acordo com a modalidade 1.
[0028] A Figura 18 é um fluxograma de atualização de parâmetro de binarização, de acordo com a modalidade 1.
[0029] A Figura 19 é uma tabela que mostra resultados de avaliação do método de codificação de imagem, de acordo com a modalidade 1.
[0030] A Figura 20 é um diagrama de blocos de um aparelho de decodificação de imagem, de acordo com a modalidade 2.
[0031] A Figura 21 é um fluxograma de decodificação de imagem, de acordo com a modalidade 2.
[0032] A Figura 22 é um diagrama de blocos de uma unidade de decodificação de comprimento variável, de acordo com a modalidade 2.
[0033] A Figura 23 é um fluxograma de decodificação de comprimento variável, de acordo com a modalidade 2.
[0034] A Figura 24 é um diagrama de blocos de uma unidade de decodificação de nível, de acordo com a modalidade 2.
[0035] A Figura 25 é um fluxograma de decodificação de nível, de acordo com a modalidade 2.
[0036] A Figura 26 é um fluxograma de decodificação grea- ter1_flag, de acordo com a modalidade 2.
[0037] A Figura 27 é um fluxograma de decodificação grea- ter2_flag, de acordo com a modalidade 2.
[0038] A Figura 28 é um fluxograma de decodificação restante, de acordo com a modalidade 2.
[0039] A Figura 29 é um fluxograma de transformada de valor múltiplo restante, de acordo com a modalidade 2.
[0040] A Figura 30 é um fluxograma de decodificação de prefixo, de acordo com a modalidade 2.
[0041] A Figura 31 é um fluxograma de decodificação de sufixo e combinação de prefixo e sufixo, de acordo com a modalidade 2.
[0042] A Figura 32A é um fluxograma de um método de codificação de imagem, de acordo com a modalidade 1.
[0043] A Figura 32B é um fluxograma de primeira codificação de indicador e segunda codificação de indicador, de acordo com a modalidade 1.
[0044] A Figura 33A é um fluxograma de um método de decodifi- cação de imagem, de acordo com a modalidade 2.
[0045] A Figura 33B é um fluxograma da primeira decodificação de indicador e da segunda decodificação de indicador, de acordo com a modalidade 2.
[0046] A Figura 34 é um diagrama de blocos de uma unidade de codificação de nível, de acordo com a modalidade 3.
[0047] A Figura 35 é um fluxograma de codificação de nível, de acordo com a modalidade 3.
[0048] A Figura 36 é um fluxograma de seleção de conjunto de contexto, de acordo com a modalidade 3.
[0049] A Figura 37 é uma tabela que mostra resultados de avaliação de um método de codificação de imagem, de acordo com a modalidade 3.
[0050] A Figura 38 é um diagrama de blocos de decodificação de nível, de acordo com a modalidade 4.
[0051] A Figura 39 é um fluxograma de decodificação de nível, de acordo com a modalidade 4.
[0052] A Figura 40 mostra uma configuração geral de um sistema de fornecimento de conteúdo para implantar serviços de distribuição de conteúdo.
[0053] A Figura 41 mostra uma configuração geral de um sistema de radiodifusão digital.
[0054] A Figura 42 mostra um diagrama de blocos que ilustra um exemplo de uma configuração de uma televisão.
[0055] A Figura 43 mostra um diagrama de blocos que ilustra um exemplo de uma configuração de uma unidade de reprodução/gravação de informações que lê e grava informações a partir de e em um meio de grava- ção que é um disco óptico.
[0056] A Figura 44 mostra um exemplo de uma configuração de um meio de gravação que é um disco óptico.
[0057] A Figura 45A mostra um exemplo de um telefone celular.
[0058] A Figura 45B é um diagrama de blocos que mostra um exemplo de uma configuração de um telefone celular.
[0059] A Figura 46 ilustra uma estrutura de dados multiplexados.
[0060] A Figura 47 mostra esquematicamente como cada fluxo é multiplexado nos dados multiplexados.
[0061] A Figura 48 mostra como um fluxo de vídeo é armazenado em um fluxo de pacotes de PES em mais detalhes.
[0062] A Figura 49 mostra uma estrutura de pacotes de TS e pacotes fonte nos dados multiplexados.
[0063] A Figura 50 mostra uma estrutura de dados de uma PMT.
[0064] A Figura 51 mostra uma estrutura interna de informações de dados multiplexados.
[0065] A Figura 52 mostra uma estrutura interna de informações de atributo de fluxo.
[0066] A Figura 53 mostra etapas para a identificação de dados de vídeo.
[0067] A Figura 54 mostra um exemplo de uma configuração de um circuito integrado para implantar o método de codificação de imagem em movimento e o método de decodificação de imagem em movimento, de acordo com cada uma das modalidades.
[0068] A Figura 55 mostra uma configuração para comutar entre as frequências de acionamento.
[0069] A Figura 56 mostra etapas para a identificação dados de vídeo e comutação entre as frequências de acionamento.
[0070] A Figura 57 mostra um exemplo de uma tabela de pesquisa em que os padrões de dados de vídeo são associados às frequências de acionamento.
[0071] A Figura 58A é um diagrama que mostra um exemplo de uma configuração para compartilhar um módulo de uma unidade de processamento de sinal.
[0072] A Figura 58B é 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 (BASE DE FORMAÇÃO DE CONHECIMENTO SUBJACENTE DA PRESENTE INVENÇÃO)
[0073] Em relação ao método de codificação de imagem convencional, os inventores encontraram o seguinte problema.
[0074] O método de codificação de imagem, de acordo com o padrão HEVC presente (consulte a literatura de não patente 1, por exemplo) inclui uma etapa de prever a imagem codificada, uma etapa de calcular a diferença entre uma imagem de previsão e uma imagem alvo, uma etapa de transformar a imagem diferencial resultante em coeficientes de frequência, e uma etapa de realizar codificação aritmética nos coeficientes de frequência. Na codificação aritmética, os coeficientes em um bloco de coeficiente a ser codificado (bloco de coeficiente de codificação) são sequencialmente codificados em uma ordem a partir de um componente de frequência mais até a até um componente de frequência mais baixo. Aqui, um contexto é selecionado de acordo com um coeficiente codificado, e a codificação aritmética é realizada em um coeficiente a ser codificado (coeficiente de codificação) de acordo com uma probabilidade de ocorrência de símbolo determinada com base no contexto selecionado.
[0075] Na imagem geral, é mais provável que um coeficiente com um componente de frequência inferior tenha um valor maior. Portanto, é possível fazer com que a probabilidade de ocorrência de símbolo tenha um desvio determinando-se um contexto com referência a um coeficiente codificado (um coeficiente com uma frequência mais alta que aquela do coeficiente de codificação). Por exemplo, se um coeficiente codificado (um coeficiente com uma frequência mais alta que aquela do coeficiente de codificação) tiver um valor grande, existe uma alta probabilidade de que o coeficiente de codificação também tenha um valor alto. Portanto, um aparelho de codificação de imagem pode reduzir uma quantidade de codificação resultante usando- se um contexto para um valor alto. No padrão HEVC presente, o número de coeficientes codificados, cada um tendo um valor absoluto de 2 ou superior é contado, e um contexto para o coeficiente de codificação é determinado de acordo com o número.
[0076] Entretanto, os inventores constataram que o método de codificação de imagem convencional precisa contar o número de coeficientes codificados cada um tendo um valor absoluto de 2 ou superior e, portanto, precisa ter processamento para contagem e um resistor que armazene o valor de contagem.
[0077] A fim de solucionar o problema acima, de acordo com um aspecto da presente invenção, proporcionou-se um método de codificação de imagem que usa codificação aritmética, o método de codificação de imagem que inclui: realizar a codificação aritmética em um primeiro indicador que indica se um valor absoluto de um coeficiente alvo em um bloco de coeficiente alvo é maior que 1 ou não; e realizar a codificação aritmética em um segundo indicador que indica se o valor absoluto é maior que 2 ou não, em que, na realização da codificação aritmética no primeiro indicador e na realização da codificação aritmética no segundo indicador, se determina se um bloco de coeficiente imediatamente anterior que foi codificado imediatamente antes do bloco de coeficiente alvo inclui um coeficiente que tem um valor absoluto maior que um valor limite ou não, e um contexto a ser usado na codificação aritmética no primeiro indicador e um contexto a ser usado na codificação aritmética no segundo indicador são selecionados com base em um resultado da determinação.
[0078] Desse modo, o método de codificação de imagem seleciona um contexto de acordo com o fato de que o bloco de coeficiente imediatamente anterior inclui um coeficiente que tem um valor absoluto maior que o valor limite ou não. Como um resultado, o método de codificação de imagem pode reduzir uma quantidade de processamento em comparação ao caso em que um contexto é selecionado de acordo com o número de coeficientes. Além disso, o método de codificação de imagem pode suprimir a diminuição da eficiência de codificação e reduzir uma quantidade de processamento.
[0079] Por exemplo, é possível na realização da codificação aritmética no primeiro indicador e na realização da codificação aritmética no segundo indicador, a determinação seja efetuada com base em uma variável gerada na codificação aritmética no bloco de coeficiente imediatamente anterior.
[0080] Desse modo, o método de codificação de imagem pode reduzir a quantidade de processamento realizando-se a seleção de texto baseada em uma variável que foi usada no processamento diferente.
[0081] Por exemplo, também é possível que o método de codificação de imagem inclua adicionalmente a binarização de um restante de acordo com uma tabela de transformada designada por um parâmetro de binarização entre uma pluralidade de tabelas de transformada, quando o valor absoluto do coeficiente alvo for maior que 2, sendo que o restante é um valor obtido subtraindo-se 3 do valor absoluto, em que o parâmetro de bina- rização é determinado de acordo com o fato de que o bloco de coeficiente imediatamente anterior inclui um coeficiente que tem um valor absoluto maior que o valor limite ou não, e em que a variável é o parâmetro de binariza- ção.
[0082] Por exemplo, é adicionalmente possível que o valor limite seja 1.
[0083] De acordo com outro aspecto da presente invenção, proporcionou-se um método de decodificação de imagem que usa decodifica- ção aritmética, o método de decodificação de imagem que inclui: realizar a decodificação aritmética em um primeiro indicador que indica se um valor absoluto de um coeficiente alvo em um bloco de coeficiente alvo é maior que 1 ou não; e realizar a decodificação aritmética em um segundo indicador que indica se o valor absoluto é maior que 2 ou não, em que, na realização da decodificação aritmética no primeiro indicador e na realização da decodifica- ção aritmética no segundo indicador, se determina se um bloco de coeficiente imediatamente anterior que foi decodificado imediatamente antes do bloco de coeficiente alvo inclui um coeficiente que tem um valor absoluto maior que um valor limite ou não, e um contexto a ser usado na decodificação aritmética no primeiro indicador e um contexto a ser usado na decodificação aritmética no segundo indicador são selecionados com base em um resultado da determinação.
[0084] Desse modo, o método de decodificação de imagem seleciona um contexto de acordo com o fato de que o bloco de coeficiente imediatamente anterior inclui um coeficiente que tem um valor absoluto maior que o valor limite ou não. Como um resultado, o método de decodificação de imagem pode reduzir a quantidade de processamento em comparação ao caso em que um contexto é selecionado de acordo com o número de coeficientes. Além disso, o método de decodificação de imagem pode suprimir a diminuição da eficiência de codificação e reduzir uma quantidade de proces-samento.
[0085] Por exemplo, é possível que na realização da decodifica- ção aritmética no primeiro indicador e na realização da decodificação aritmética no segundo indicador, a determinação seja realizada com base em uma variável gerada na decodificação aritmética no bloco de coeficiente imediatamente anterior.
[0086] Desse modo, o método de decodificação de imagem pode reduzir uma quantidade de processamento realizando-se a seleção de texto baseada em uma variável que foi usada no processamento diferente.
[0087] Por exemplo, também é possível que o método de decodi- ficação de imagem inclua adicionalmente: transformar um restante em um valor múltiplo de acordo com uma tabela de transformada designada por um parâmetro de binarização entre uma pluralidade de tabelas de transformada, quando o valor absoluto do coeficiente alvo for maior que 2, sendo que o restante é um valor obtido subtraindo-se 3 do valor absoluto; e determinar o parâmetro de binarização de acordo com o fato de que o bloco de coeficiente imediatamente anterior inclui um coeficiente que tem um valor absoluto maior que o valor limite ou não, em que a variável é o parâmetro de binari- zação.
[0088] Por exemplo, é adicionalmente possível que o valor limite seja 1.
[0089] De acordo com ainda outro aspecto da presente invenção, proporcionou-se um aparelho de codificação de imagem que realiza codificação aritmética, o aparelho de codificação de imagem que inclui: conjunto de circuitos de controle; e armazenamento acessível a partir do conjunto de circuitos de controle, em que o conjunto de circuitos de controle executa o método de codificação de imagem, de acordo com a reivindicação 1.
[0090] Desse modo, o aparelho de decodificação de imagem seleciona um contexto de acordo com o fato de que o bloco de coeficiente imediatamente anterior inclui um coeficiente que tem um valor absoluto maior que o valor limite ou não. Como um resultado, o aparelho de decodifica- ção de imagem pode reduzir a quantidade de processamento em comparação ao caso em que um contexto é selecionado de acordo com o número de coeficientes. Além disso, o aparelho de codificação de imagem pode suprimir a diminuição da eficiência de codificação e reduzir uma quantidade de processamento.
[0091] De acordo com ainda outro aspecto da presente invenção, proporcionou-se um aparelho de decodificação de imagem que realiza deco- dificação aritmética, o aparelho de decodificação de imagem que inclui: conjunto de circuitos de controle; e armazenamento acessível do conjunto de circuitos de controle, em que o conjunto de circuitos de controle executa o método de decodificação de imagem, de acordo com a reivindicação 5.
[0092] Desse modo, o aparelho de decodificação de imagem seleciona um contexto de acordo com o fato de que o bloco de coeficiente imediatamente anterior inclui um coeficiente que tem um valor absoluto maior que o valor limite ou não. Como um resultado, o aparelho de decodifica- ção de imagem pode reduzir a quantidade de processamento em comparação ao caso em que um contexto é selecionado de acordo com o número de coeficientes. Além disso, o aparelho de decodificação de imagem pode suprimir a diminuição da eficiência de codificação e reduzir uma quantidade de processamento.
[0093] De acordo com ainda outro aspecto da presente invenção, proporcionou-se um aparelho de codificação e decodificação de imagem que inclui o aparelho de codificação de imagem descrito acima e o aparelho de decodificação de imagem descrito acima.
[0094] Esses aspectos gerais e específicos podem ser implantados usando um sistema, um método, um circuito integrado, um programa de computador ou um meio de gravação legível por computador, tal como, um CD-ROM, ou qualquer combinação de sistemas, métodos, circuito integrados, programas de computador ou meios de gravação legíveis por computador.
[0095] Daqui por diante no presente documento, determinadas modalidades exemplificativas do aparelho de codificação de imagem e do aparelho de decodificação de imagem são descritas com referência aos desenhos em anexo.
[0096] Cada uma das modalidades exemplificativas descritas abaixo mostra um exemplo específico da presente invenção. 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 exemplificativas são meros exemplos e, portanto, não limitam a presente invenção. Portanto, entre os elementos estruturais nas seguintes modalidades exemplificativas, os elementos estruturais não citados em nenhuma das reivindicações independentes são descritos como elementos estruturais arbitrários.
(MODALIDADE 1)
[0097] Na Modalidade 1, uma modalidade de um aparelho de codificação de imagem é descrita.
<ESTRUTURA GERAL>
[0098] A Figura 1 é um diagrama de blocos da estrutura do aparelho de codificação de imagem, de acordo com a modalidade 1.
[0099] O aparelho de codificação de imagem 100 mostrado na Figura 1 codifica imagem de entrada 121 para gerar um fluxo codificado 125 (fluxo de bits codificado). O aparelho de codificação de imagem 100 inclui uma unidade de divisão de bloco de codificação 101, uma unidade de subtração 102, uma unidade de transformada 103, uma unidade de codificação de comprimento variável 104, uma unidade de transformada inversa 105, uma unidade de adição 106, uma memória de quadro 107 e uma unidade de previsão 108.
<PROCESSAMENTO (TOTAL)>
[00100] A seguir, referindo-se à Figura 2, um fluxo geral da codificação é descrito.
(ETAPA S101)
[00101] A unidade de divisão de bloco de codificação 101 divide a imagem de entrada 121 em blocos a serem codificados (blocos de codificação) 122, e proporciona sequencialmente os blocos de codificação 122 tanto para a unidade de subtração 102 como para a unidade de previsão 108. Aqui, cada um dos blocos de codificação 122 tem um tamanho variável, e a unidade de divisão de bloco de codificação 101, portanto, se refere aos recursos da imagem de entrada 121 para dividir a imagem de entrada 121 nos blocos de codificação 122. Por exemplo, um bloco de codificação 122 tem 4 pixels horizontais x 4 pixels verticais no mínimo, e 32 pixels horizontais x 32 pixels verticais no máximo.
(ETAPA S102)
[00102] A unidade de previsão 108 gera um bloco de previsão 129 usando-se um bloco de codificação 122 e uma imagem decodificada 128 armazenada na memória de quadro 107.
(ETAPA S103)
[00103] A unidade de subtração 102 gera um bloco diferencial 123 que é uma diferença entre o bloco de codificação 122 e o bloco de previsão 129.
(ETAPA S104)
[00104] A unidade de transformada 103 transforma o bloco diferen-cial 123 em coeficientes de frequência 124.
(ETAPA S105)
[00105] A unidade de codificação de comprimento variável 104 realiza a codificação de comprimento variável nos coeficientes de frequência 124 para gerar um fluxo codificado 125.
(ETAPA S106)
[00106] A unidade de transformada inversa 105 transforma os coeficientes de frequência 124 em dados de pixel para reconstruir o bloco diferencial 126.
(ETAPA S107)
[00107] A unidade de adição 106 adiciona o bloco diferencial reconstruído 126 e o bloco de previsão 129 em conjunto para gerar um bloco decodificado 127 e armazena, como uma imagem decodificada 128, o bloco decodificado gerado 127 na memória de quadro 107.
(ETAPA S108)
[00108] O processamento da Etapa S102 a Etapa S107 é repetido até todos os blocos de codificação em uma imagem alvo a ser codificada tiverem sido codificados.
[00109] A seguir, descreve-se a unidade de codificação de com-primento variável 104 em mais detalhes.
<ESTRUTURA DE UNIDADE DE CODIFICAÇÃO DE COMPRI-MENTO VARIÁVEL 104>
[00110] A Figura 3 é um diagrama de blocos que mostra a estrutura da unidade de codificação de comprimento variável 104.
[00111] Na presente modalidade, a unidade de codificação de comprimento variável 104 codifica um coeficiente de frequência alvo 124 (daqui por diante no presente documento, também referido simplesmente como um "coeficiente") com base em cinco parâmetros: significant_flag, gre- ater1_flag, greater2_flag, restante e sign_flag.
[00112] significant_flag é um indicador que indica se um coeficiente correspondente é 0 ou não. Se significant_flag tem um valor de 0, isso significa que o coeficiente é 0. Se significant_flag tem um valor de 1, isso significa que o coeficiente não é 0.
[00113] greater1_flag existe apenas quando significant_flag tem um valor de 1 (em outras palavras, o coeficiente não é 0). greater1_flag indica se um valor absoluto do coeficiente é 2 ou superior, ou não (em outras palavras, maior que 1). Se greater1_flag tem um valor de 0, isso significa que o valor absoluto é 1. Se greater1_flag tem um valor de 1, isso significa que o valor absoluto é 2 ou superior.
[00114] greater2_flag existe apenas quando greater1_flag tem um valor de 1 (em outras palavras, o coeficiente tem um valor absoluto de 2 ou superior). greater2_flag indica se o valor absoluto do coeficiente é 3 ou superior, ou não (em outras palavras, maior que 2). Se greater2_flag tem um valor de 0, isso significa que o valor absoluto é 2. Se greater2_flag tem um valor de 1, isso significa que o valor absoluto é 3 ou superior.
[00115] Restante existe apenas quando greater2_flag tem um valor de 1 (em outras palavras, o valor absoluto é 3 ou superior). restante indica um valor obtido subtraindo-se 3 do valor absoluto.
[00116] sign_flag existe apenas quando significant_flag tem um valor de 1 (em outras palavras, o coeficiente não é 0). sign_flag indica se o coeficiente tem um valor negativo ou não (em outras palavras, se um valor do coeficiente é negativo ou positivo). Se sign_flag tem um valor de 0, isso significa que o coeficiente tem um valor positivo. Se sign_flag tem um valor de 1, isso significa que o coeficiente tem um valor negativo.
[00117] Conforme mostrado na Figura 3, a unidade de codificação de comprimento variável 104 inclui uma unidade de divisão de bloco de coeficiente 131, uma unidade de codificação significant_flag 132, uma unidade de codificação de nível 133 e uma unidade de codificação sign_flag 134.
[00118] A unidade de codificação significant_flag 132 codifica signi- ficant_flag. A unidade de codificação de nível 133 codifica greater1_flag, greater2_flag e restante. A unidade de codificação sign_flag 134 codifica sign_flag.
<PROCESSAMENTO (CODIFICAÇÃO DE COMPRIMENTO VARIÁVEL)>
[00119] A seguir, referindo-se à Figura 4, um fluxo de codificação de comprimento variável é descrito.
(ETAPA S121)
[00120] A unidade de divisão de bloco de coeficiente 131 divide um bloco de codificação alvo (coeficientes de frequência 124) em blocos de coeficientes cada um tendo 4 pixels x 4 pixels (daqui por diante no presente documento, referidos também como "blocos de coeficientes 4x4".) Mais especificamente, quando um bloco de codificação alvo tem um tamanho de 32 x 32, a unidade de divisão de bloco de coeficiente 131 divide o mesmo horizontalmente em 8 partes e verticalmente em 8 partes. Quando um bloco de codificação alvo tem um tamanho de 4 x 4, a unidade de divisão de bloco de coeficiente 131 não divide tal bloco. O seguinte processamento da Etapa S122 a Etapa S124 é realizado para cada um dos blocos de coeficientes. Os blocos de coeficientes são sequencialmente processados em uma ordem a partir de um bloco de coeficiente que tem um componente mais alto até um bloco de coeficiente que tem um componente mais baixo.
(ETAPA S122)
[00121] A unidade de codificação significant_flag 132 codifica signi- ficant_flag de cada um dos coeficientes incluídos em um bloco de coeficiente alvo.
(ETAPA S123)
[00122] A unidade de codificação de nível 133 codifica grea- ter1_flag, greater2_flag e restante de cada um dos coeficientes incluídos no bloco de coeficiente alvo.
(ETAPA S124)
[00123] A unidade de codificação sign_flag 134 codifica sign_flag de cada um dos coeficientes incluídos no bloco de coeficiente alvo.
(ETAPA S125)
[00124] O processamento da Etapa S122 a Etapa S124 é repetido até todos os blocos de coeficientes no bloco de codificação alvo tiverem sido processados.
[00125] A seguir, descreve-se a unidade de codificação de nível 133 em mais detalhes.
<ESTRUTURA DE UNIDADE DE CODIFICAÇÃO DE NÍVEL 133>
[00126] A Figura 5 é um diagrama de blocos que mostra a estrutura da unidade de codificação de nível 133. Conforme mostrado na Figura 5, a unidade de codificação de nível 133 inclui uma unidade de definição grea- ter1_flag 141, uma unidade de definição greater2_flag 142, uma unidade de definição restante 143, uma unidade de atualização de parâmetro de binari- zação 144, uma unidade de seleção de conjunto de contexto 145, uma memória greater1_flag 146, uma unidade de seleção de contexto greater1_flag 147, uma memória de contexto greater1_flag 148, uma unidade de seleção de contexto greater2_flag 149, uma memória de contexto greater2_flag 150, uma unidade de codificação aritmética 151 e uma unidade de binarização restante 152. A unidade de binarização restante 152 inclui uma unidade de determinação de prefixo e sufixo 153, uma unidade de saída de binário de sufixo 154 e uma unidade de saída de binário de prefixo 155.
[00127] A unidade de codificação de nível 133 seleciona primeiro os respectivos conjuntos de contextos a serem usados na codificação aritmética em greater1_flag e greater2_flag. A seguir, a unidade de codificação de nível 133 codifica greater1_flag, greater2_flag e restante sequencialmente em ordem. Antes da codificação aritmética, a unidade de codificação de nível 133 transforma o restante de um sinal de valor múltiplo em um sinal binarizado (binário). Aqui, a unidade de codificação de nível 133 altera de maneira adaptável um comprimento do sinal binarizado (binário) com base em um parâmetro de binarização (cParam). A unidade de codificação de nível 133 usa esse parâmetro de binarização também para selecionar de maneira adaptável os conjuntos de contextos.
<PROCESSAMENTO (CODIFICAÇÃO DE NÍVEL)>
[00128] A seguir, referindo-se às Figuras 6 a 9, um fluxo da codificação realizada pela unidade de codificação de nível 133 é descrito em mais detalhes. A Figura 6 é um fluxograma da codificação realizada pela unidade de codificação de nível 133.
(ETAPA S141)
[00129] A unidade de seleção de conjunto de contexto 145 define os respectivos números de conjunto de contexto a serem usados na codificação aritmética em greater1_flag e greater2_flag. A etapa será posteriormente descrita em mais detalhes.
(ETAPA S142)
[00130] A unidade de atualização de parâmetro de binarização 144 inicializa o parâmetro de binarização (cParam) em 0. Nessa etapa, cParam é ajustado em 0 no início de um bloco de coeficiente 4x4 alvo. Deve-se notar que as Etapas S141 e S142 são realizadas uma vez para o bloco de coeficiente alvo. Entretanto, as seguintes etapas da Etapa S143 são realizadas para cada um dos coeficientes.
(ETAPA S143)
[00131] A unidade de codificação de nível 133 codifica grea- ter1_flag de cada um dos coeficientes incluídos em um bloco de coeficiente alvo. A Figura 7 é um fluxograma que explica essa etapa em mais detalhes.
(ETAPA S151)
[00132] A unidade de definição greater1_flag 141 determina se um valor absoluto de um coeficiente alvo (coeficiente a ser processado) é 1 ou superior, ou não. Se o valor absoluto é 1 ou superior, então, greater1_flag é codificado nas Etapas S152 a S154. Se o valor absoluto é 0, greater1_flag não é codificado.
(ETAPA S152)
[00133] Se o valor absoluto do coeficiente alvo é 2 ou superior, então, a unidade de definição greater1_flag 141 ajusta greater1_flag em 1. Se o valor absoluto é 1, então, a unidade de definição greater1_flag 141 ajusta greater1_flag em 0.
(ETAPA S153)
[00134] A unidade de seleção de contexto greater1_flag 147 ajusta um número de contexto com base no número de conjunto de contexto selecionado na Etapa S141. A etapa será posteriormente descrita em mais detalhes.
(ETAPA S154)
[00135] A unidade de codificação aritmética 151 carrega um contexto a ser usado (contexto em uso) a partir da memória de contexto grea- ter1_flag 148 com base no número de contexto selecionado na Etapa S153 e, então, realiza a codificação aritmética em greater1_flag usando-se o contexto. Além disso, a unidade de codificação aritmética 151 armazena o contexto que foi atualizado na codificação aritmética de volta no mesmo lugar na memória de contexto greater1_flag 148.
(ETAPA S155)
[00136] O processamento da Etapa S151 a Etapa S155 é repetido até todos os coeficientes no bloco de coeficiente 4x4 alvo terem sido processados.
[00137] Como um resultado, greater1_flag(s) dos respectivos coeficientes no bloco de coeficiente alvo foram codificados.
(ETAPA S144)
[00138] A unidade de codificação de nível 133 codifica grea- ter2_flag de cada um dos coeficientes incluídos em um bloco de coeficiente alvo. A Figura 8 é um fluxograma que explica essa etapa em mais detalhes.
(ETAPA S161)
[00139] A unidade de definição greater2_flag 142 determina se um valor absoluto de um coeficiente alvo é 2 ou superior, ou não. Se o valor absoluto é 2 ou superior, então, greater2_flag é codificado nas Etapas S162 a S165. Se o valor absoluto é 1 ou inferior, greater2_flag não é codificado.
(ETAPA S162)
[00140] Se o valor absoluto do coeficiente alvo é 3 ou superior, então, a unidade de definição greater2_flag 142 ajusta greater2_flag em 1. Se o valor absoluto é 2, então, a unidade de definição greater2_flag 142 ajusta greater2_flag em 0.
(ETAPA S163)
[00141] A unidade de seleção de contexto greater2_flag 149 ajusta o número de conjunto de contexto selecionado na Etapa S141 como um número de contexto. Diferente de greater1_flag, um número de conjunto de contexto para superior2_flag é diretamente ajustado como um número de contexto. Em outras palavras, um único conjunto de contexto para superi- or2_flag inclui apenas um contexto.
(ETAPA S164)
[00142] A unidade de codificação aritmética 151 carrega um contexto a ser usado (contexto em uso) a partir da memória de contexto grea- ter2_flag 150 com base no número de contexto selecionado na Etapa S150 e, então, realiza a codificação aritmética em greater2_flag usando-se o contexto. Além disso, a unidade de codificação aritmética 151 armazena o contexto que foi atualizado na codificação aritmética de volta no mesmo lugar na memória de contexto greater2_flag 150.
(ETAPA S165)
[00143] O processamento da Etapa S161 a Etapa S164 é repetido até todos os coeficientes no bloco de coeficiente 4x4 alvo terem sido processados.
[00144] Como um resultado, greater2_flags dos respectivos coeficientes no bloco de coeficiente alvo foram codificados.
(ETAPA S145)
[00145] A unidade de codificação de nível 133 codifica o restante em cada um dos coeficientes em um bloco de coeficiente alvo. A Figura 9 é um fluxograma que explica essa etapa em mais detalhes.
(ETAPA S171)
[00146] A unidade de definição restante 143 determina se um valor absoluto de um coeficiente alvo é 3 ou superior, ou não. Se o valor absoluto é 3 ou superior, então, restante é codificado nas Etapas S172 a S175. Se o valor absoluto é 2 ou inferior, o restante não é codificado.
(ETAPA S172)
[00147] A unidade de definição restante 143 calcula um valor numérico subtraindo-se 3 do valor absoluto do coeficiente alvo, e ajusta o valor numérico como restante (sinal de valor múltiplo).
(ETAPA S173)
[00148] A unidade de binarização restante 152 transforma o sinal de valor múltiplo do restante em um sinal binarizado. A etapa será posteri-ormente descrita em mais detalhes.
(ETAPA S174)
[00149] A unidade de codificação aritmética 151 realiza a codificação aritmética no restante. Diferente de greater1_flag e greater2_flag, o restante é aplicado com codificação aritmética de derivação que não usa nenhum contexto.
(ETAPA S175)
[00150] A unidade de atualização de parâmetro de binarização 144 inicializa o parâmetro de binarização (cParam). A etapa será posteriormente descrita em mais detalhes.
(ETAPA S176)
[00151] O processamento da Etapa S171 a Etapa S175 é repetido até todos os coeficientes no bloco de coeficiente alvo terem sido processados.
<PROCESSAMENTO (SELEÇÃO DE CONJUNTO DE CONTEXTO)>
[00152] A seguir, referindo-se à Figura 10, a seleção de conjunto de contexto (S141 na Figura 6) é descrita em mais detalhes.
(ETAPAS S181 A S183)
[00153] A unidade de seleção de conjunto de contexto 145 determina se um bloco de coeficiente alvo tem a frequência mais baixa no bloco de codificação alvo ou não. Se o bloco de coeficiente alvo tem a frequência mais baixa, então, o número de conjunto de contexto é ajustado em 0. De outro modo, o número de conjunto de contexto é ajustado em 2. Mais especificamente, se o bloco de coeficiente alvo se situar no canto esquerdo superior do bloco de codificação alvo, então, a unidade de seleção de conjunto de contexto 145 ajusta o número de conjunto de contexto em 0. De outro modo, o número de conjunto de contexto é ajustado em 2.
(ETAPAS S184 E S185)
[00154] Se um parâmetro de binarização atualizado (cParam) de um bloco de coeficiente (bloco de coeficiente imediatamente anterior) que foi processado imediatamente antes do bloco de coeficiente alvo é maior que 0, então, a unidade de seleção de conjunto de contexto 145 aumenta o número de conjunto de contexto em 1. Portanto, se cParam tiver sido atualizado pelo menos uma vez para o bloco de coeficiente imediatamente anterior, o conjunto de contexto é alterado.
[00155] Conforme descrito acima, nas Etapas S181 a S185, o número de conjunto de contexto tem um valor na faixa de 0 a 3. Em outras palavras, existem quatro tipos de conjuntos de contextos a partir dos quais a unidade de seleção de conjunto de contexto 145 seleciona um.
<PROCESSAMENTO (SELEÇÃO DE CONTEXTO GREA- TER1_FLAG)>
[00156] A seguir, referindo-se à Figura 11, a seleção de contexto greater1_flag (S153 na Figura 7) é descrita em mais detalhes.
(ETAPA S191)
[00157] Entre os coeficientes que foram processados no bloco de coeficiente alvo, a unidade de seleção de contexto greater1_flag 147 conta o número (G1NUM) de greater1_flags com um valor de 1. Em outras palavras, a unidade de seleção de contexto greater1_flag 147 conta o número de coeficientes que tem um valor absoluto de 2 ou superior. Aqui, greater1_flags de coeficientes processados são armazenados na memória greater1_flag 146, de modo que a unidade de seleção de contexto greater1_flag 147 obtenha esses greater1_flags a partir da memória greater1_flag 146.
(ETAPAS S192 A S193)
[00158] Se G1NUM contado na Etapa S191 for maior ou igual a 1, então, a unidade de seleção de contexto greater1_flag 147 ajusta um deslocamento de contexto em 3. Se G1NUM é 0, então, o processamento procede até a Etapa S194. Em outras palavras, quando existe pelo menos um coeficiente processado que tem um valor absoluto de 2 ou superior no bloco de coeficiente alvo, o deslocamento de contexto é ajustado em 3.
(ETAPA S194)
[00159] Entre os coeficientes processados no bloco de coeficiente alvo, a unidade de seleção de contexto greater1_flag 147 conta o número (G1NUM2) de coeficientes que tem greater1_flag. Em outras palavras, a unidade de seleção de contexto greater1_flag 147 conta o número de coeficientes que tem um valor absoluto de 1 ou superior. Aqui, a unidade de seleção de contexto greater1_flag 147 obtém os greater1_flags dos coeficientes processados a partir da memória geater1_flag 146.
(ETAPAS S195 A S197)
[00160] Se G1NUM2 contado na Etapa S194 for maior que 2, então, a unidade de seleção de contexto greater1_flag 147 ajusta o deslocamento de contexto em 2. De outro modo, a unidade de seleção de contexto greater1_flag 147 ajusta o deslocamento de contexto no valor de G1NUM2.
[00161] Desse modo, nas Etapas S191 a S197, o deslocamento de contexto é ajustado em um valor na faixa de 0 a 3.
(ETAPA S198)
[00162] A unidade de seleção de contexto greater1_flag 147 ajusta o número de contexto em "(número de conjunto de contexto x 4) + deslocamento de contexto" e, então, o número de contexto resultante na memória de contexto greater1_flag 148. Uma vez que o número de conjunto de contexto tem um valor na faixa de 0 a 3 e o deslocamento de contexto tem um valor na faixa de 0 a 3, conforme observado na Figura 12, o número de contexto tem eventualmente um valor na faixa de 0 a 15. Em outras palavras, existem quatro tipos de conjuntos de contextos, e existem quatro contextos em cada um dos conjuntos de contextos para superior1_flag. A unidade de seleção de conjunto de contexto 145 seleciona um tipo de conjunto de contexto a partir dos quatro tipos, e a unidade de seleção de contexto grea- ter1_flag 147 seleciona um dos quatro contextos no conjunto de contextos selecionado.
<PROCESSAMENTO (BINARIZAÇÃO RESTANTE)>
[00163] A seguir, referindo-se às Figuras 13 a 16, a binarização restante (S173 na Figura 9) é descrita em mais detalhes. Em resumo, um sinal binarizado (binário) inclui prefixo e sufixo. Um método de determinação de prefixo e sufixo é alterado de acordo com um parâmetro de binarização (cParam).
(ETAPA S201)
[00164] A unidade de determinação de prefixo e sufixo 153 deter-mina o prefixo e o sufixo. A Figura 14 é um fluxograma que explica essa eta-pa em mais detalhes.
(ETAPAS S211 A S222)
[00165] A unidade de determinação de prefixo e sufixo 153 usa cParam na determinação de prefixo e sufixo. O processo de determinação é classificado principalmente das seguintes duas formas. Se o restante for pequeno, o prefixo e o sufixo são determinados nas Etapas S213 e S214. Por outro lado, se o restante for grande, o prefixo e o sufixo são determinados nas Etapas S215 a S222. cParam é usado como um valor limite com base no qual é determinado se o restante é pequeno ou grande. Quanto maior cParam, maior o valor limite. cParam está relacionado a um comprimento binário de prefixo e sufixo.
[00166] As Figuras 15A a 15C mostra o binário de prefixo e sufixo em associação com cParam e o restante. Conforme mostrado nas Figuras 15A a 15C, se o restante for pequeno, cParam menor resulta em um comprimento binário mais curto, enquanto se o restante for grande, cParam maior resulta em um comprimento binário mais curto. Em outras palavras, se o restante fosse pequeno, cParam menor tem maior probabilidade de aumentar a eficácia de codificação. Por outro lado, se o restante fosse grande, cPa- ram maior tem mais probabilidade de aumentar a eficácia de codificação.
(ETAPA S202)
[00167] A unidade de saída de binário de prefixo 155 fornece binário de prefixo à unidade de codificação aritmética 151. A Figura 16 é um flu- xograma de explicação dessa etapa em mais detalhes.
(ETAPAS S231 A S235)
[00168] A unidade de saída de binário de prefixo 155 primeiramente emite valores de "1" no mesmo número que um valor de prefixo e finalmente emite um valor de "0".
(ETAPA S203)
[00169] A unidade de saída de binário de sufixo 154 fornece binário de sufixo à unidade de codificação aritmética 151. A Figura 17 é um fluxo- grama de explicação dessa etapa em mais detalhes.
(ETAPAS S241 A S245)
[00170] A unidade de saída de binário de sufixo 154 transforma um valor de sufixo em uma forma codificada por binário e emite os valores resultados na forma codificada por binário sequencialmente em uma ordem a partir de um bit de ordem mais alta. A unidade de saída de binário de sufixo 154 emite binário(s) no número de tmpLen. Aqui, se o número de bits do valor de sufixo for menor que tmpLen, o bit de ordem mais alta é emitido como 0.
<PROCESSAMENTO (ATUALIZAÇÃO DE PARÂMETRO DE BI- NARIZAÇÃO)>
[00171] Em seguida, referindo-se à Figura 18, a atualização de pa- râmetro de binarização (S175 na Figura 9) é descrita em mais detalhes.
(ETAPA S251)
[00172] Se o parâmetro de binarização (cParam) for menor que 4, então a unidade de atualização de parâmetro de binarização 144 atualiza cParam nas Etapas S252 a S254. Se cParam for 4 ou maior, então a unidade de atualização de parâmetro de binarização 144 não atualiza cParam e termina o processamento.
(ETAPAS S252 A S254)
[00173] Se um valor absoluto de um coeficiente alvo for maior que um valor limite, então a unidade de atualização de parâmetro de binarização 144 incrementa cParam em 1. O valor limite é determinado por uma fórmula matemática "3 x (1 << cParam)". "<<" significa deslocado para a esquerda. Quando cParam tem um valor maior, o valor limite tem um valor maior. Con- forme descrito acima, cParam é inicializado em 0 no começo do processa- mento para o bloco de coeficiente alvo. Toda vez que um coeficiente maior que o valor limite aparece devido ao processamento da unidade de atualiza- ção de parâmetro de binarização 144, cParam é incrementado em 1 até cPa- ram alcançar 4 no máximo.
<EFEITOS>
[00174] Conforme descrito acima, no aparelho de codificação de imagem 100 de acordo com a presente modalidade, se houver um coeficiente que tem um valor absoluto maior que um valor limite em um bloco de coeficiente processado alvo, um contexto para greater1_flag e um contexto para greater2_flag são alterados. Como resultado, é possível aumentar a eficácia de codificação com uma quantidade de processamento pequena.
[00175] Mais especificamente, um parâmetro de binarização (cPa- ram) é incrementado em 1 cada vez que um valor absoluto de um coeficiente maior que o valor limite é encontrado. Se, no começo de um bloco de coefi- ciente alvo, um valor de cParam que foi atualizado no processamento para um bloco de coeficiente imediatamente anterior é maior que 0, em outras palavras, se o bloco de coeficiente imediatamente anterior incluir pelo menos um coeficiente maior que o valor limite, então um número definido por contexto é alterado. Mais especificamente, se houver um coeficiente que tem um valor grande em um bloco de coeficiente imediatamente anterior (um bloco de coeficiente com uma frequência mais alta que aquela do bloco de coeficiente alvo), o aparelho de codificação de imagem 100 determina que há uma possibilidade alta de que o bloco de coeficiente alvo também inclua um coeficiente que tem um valor grande. Portanto, um contexto apropriado para um coeficiente que tem um valor grande é selecionado.
[00176] No presente padrão HVEC (consulte a Literatura de Não Patente 1), o número de coeficientes processados que têm um valor absoluto de 2 ou mais é contado e um contexto para um coeficiente alvo é determinado de acordo com o número. No entanto, os coeficientes processados não são limitados aos coeficientes incluídos no bloco de coeficiente imediatamente anterior. Os mesmos podem ser uma pluralidade de coeficientes incluídos em uma pluralidade de blocos de coeficiente que estão localizados mais próximos a um lado de frequência alta que o bloco de coeficiente alvo.
[00177] Por outro lado, na técnica da presente modalidade, não é determinado se ou não há um coeficiente que excede um valor limite em um bloco de coeficiente imediatamente anterior. Portanto, o aparelho de codificação de imagem 100 de acordo com a presente modalidade não precisa contar o número, nem ter um resistor para armazenar os valores de contagem.
[00178] Além disso, o método de codificação de imagem de acordo com a presente modalidade foi aplicado ao software de teste do presente padrão HEVC para experimentos. A Figura 19 mostra resultados de experi- mento em comparação ao estado antes da aplicação. As condições de expe-rimento são baseadas em condições de experimento comum do grupo de padrão HEVC. Um valor numérico maior indica eficácia de codificação menor. Um valor negativo indica aprimoramento da eficácia de codificação. Conforme mostrado na Figura 19, cada um dos valores está na faixa de - 0,01% a 0,03%. Isso significa que a eficácia de codificação é dificilmente afetada mesmo se a contagem dos coeficientes for eliminada.
[00179] Além disso, unificando-se as informações a serem usadas na seleção de contextos e as informações a serem usadas na codificação do restante, um tamanho de circuito é reduzido. Mais especificamente, cParam, que é incrementado cada vez que um valor absoluto de um coeficiente maior que o valor limite é encontrado, é usado para alterar um parâmetro de bina- rização do restante e para selecionar um contexto de greater1_flag e um contexto de greater2_flag, de modo que uma estrutura possa realizar várias funções. Portanto, em comparação ao presente padrão HEVC, o método de codificação de imagem de acordo com a presente modalidade pode eliminar a contagem de coeficientes enquanto a deterioração de eficácia de codificação é suprimida, sem adicionar uma nova estrutura.
[00180] Deve-se perceber que foi descrito acima que um conjunto de contexto é alterado com base em um parâmetro de binarização (cParam) que foi atualizado para um bloco de coeficiente imediatamente anterior. No entanto, o aparelho de codificação de imagem 100 pode realizar a alteração com base em um parâmetro de binarização que foi atualizado para um bloco de coeficiente diferente do bloco de coeficiente imediatamente anterior. É possível, por exemplo, o aparelho de codificação de imagem 100 pode alterar um conjunto de contexto quando cParam excede 0 no processamento para qualquer bloco de coeficiente processado. Os blocos de coeficiente são processados sequencialmente em uma ordem a partir de um bloco de fre- quência mais alta. Portanto, se cParam de qualquer um dos blocos de coeficiente exceder 0, em outras palavras, se um coeficiente que tem um valor absoluto que é maior ou igual a um valor limite aparecer, há uma possibilidade alta de que todos os seguintes blocos de coeficiente tenham valores de coeficiente grandes. Em tal caso, é possível aumentar a eficácia de codificação selecionando-se um conjunto de contexto que deve ser usado para a possibilidade acima.
[00181] Além disso, o aparelho de codificação de imagem 100 inicializa o parâmetro de binarização (cParam) em 0 no começo do processamento para um bloco de coeficiente alvo. No entanto, é também possível manter o uso de cParam atualizado para um bloco de coeficiente imediatamente anterior, sem inicializar cParam em 0. Isso torna possível manter o uso do estado de um bloco de coeficiente de alta frequência. Como resultado, a eficácia de codificação é algumas vezes aumentada dependendo da imagem de entrada.
[00182] Deve-se perceber que foi descrito acima que o aparelho de codificação de imagem 100 altera um conjunto de contexto quando cParam é maior que 0. No entanto, a presente modalidade não é limitada ao anterior. É também possível alterar um conjunto de contexto, se cParam for maior que 1 ou se cParam for maior que 2, por exemplo. Dependendo da imagem inserida, é algumas vezes possível aumentar a eficácia de codificação alterando-se um conjunto de contexto quando cParam é maior que 1.
[00183] Deve-se também perceber que foi descrito acima que quatro tipos de conjuntos de contexto são usados, mas a presente modalidade não é limitada ao anterior. Pode haver quatro ou mais tipos de conjuntos de contexto ou quatro ou menos conjuntos de contexto. Por exemplo, embora tenha sido descrito acima que o aparelho de codificação de imagem 100 incrementa um número de conjunto de contexto em 1 quando cParam é maior que 0 sempre que o número de conjunto de contexto é 0 ou 2. No entanto, é também possível que o número de conjunto de contexto é aumentado em 1 apenas quando o número de conjunto de contexto é 2.
[00184] Deve-se também notar que foi descrito acima que o aparelho de codificação de imagem 100 altera um conjunto de contexto quando um bloco de coeficiente alvo tem a frequência mais baixa, mas a alteração pode ser desnecessária. É também possível que o aparelho de codificação de imagem 100 incremente o número de conjunto de contexto em 1 quando cParam é maior que 0, e aumente, ainda, o número de conjunto de contexto resultante em 1 quando cParam é maior que 1. Dependendo da imagem inserida, a eficácia de codificação pode ser aumentada quando o número de tipos de conjuntos de contexto é aumentado. Por outro lado, dependendo da imagem inserida, quando o número de conjuntos de contexto é diminuído, é possível diminuir os tipos de contextos, reduzindo, assim, um tamanho de circuito para o processamento de seleção e redução de uma memória para armazenar contextos.
[00185] Deve-se também perceber que foi mostrado na Figura 11 que o aparelho de codificação de imagem 100 define um contexto de grea- ter1_flag com base em G1NUM e G1NUM2, mas a presente modalidade não é limitada ao anterior. Por exemplo, o aparelho de codificação de imagem 100 pode definir um contexto com base em uma posição de um coeficiente alvo em um bloco de coeficiente alvo, ou com base em ou G1NUM ou G1NUM2.
[00186] Deve-se perceber também que foi descrito acima que, na seleção de um contexto para greater2_flag, o aparelho de codificação de imagem 100 define o próprio um número de conjunto de contexto como um número de contexto, mas a presente modalidade não é limitada ao anterior. O aparelho de codificação de imagem 100 pode selecionar um contexto para greater2_flag pela mesma técnica conforme usada para greater1_flag.
[00187] Deve-se também perceber que foi descrito acima que grea- ter1_flag existe quando um valor absoluto de um coeficiente alvo é 1 ou maior e que greater2_flag existe quando o valor absoluto do coeficiente alvo é 2 ou maior. No entanto, é também possível limitar os respectivos números máximos dos indicadores em um bloco de coeficiente da mesma maneira que o presente padrão HEVC (Literatura de Não Patente 1). É possível que oito greater1_flag existam no máximo e um greater2_flag exista no máximo.
[00188] Deve-se também perceber que foi descrito acima que, na binarização restante do aparelho de codificação de imagem 100, o prefixo e o sufixo formam o binário. No entanto, o sinal binarizado do restante pode quer qualquer sinal contanto que um comprimento binário possa ser alterado com base em cParam. Por exemplo, o sinal binarizado de restante pode ter apenas prefixo ou pode ser expresso pela técnica Golomb de exponente de padrão de codificação de gravura em movimento H.264.
[00189] Deve-se também perceber que foi descrito acima que o úl- timo binário do prefixo é definido em 0, mas o último 0 pode ser apagado quando o prefixo é máximo. Se o prefixo não for máximo, é necessário inse- rir "0" para esclarecer o binário no limite do prefixo e do sufixo. No entanto, se um aparelho de decodificação de imagem conhece um valor máximo de um coeficiente, um valor máximo do prefixo é óbvio. No entanto, se o prefixo for máximo, o aparelho de decodificação de imagem pode determinar o limite entre o prefixo e o sufixo sem "0". A eliminação da inserção de "0" no caso de prefixo máximo pode encurtar significativamente um comprimento binário quando há um número grande de coeficientes com prefixo máximo (em ou- tras palavras, quando uma taxa de bit de codificação é alta). Como resulta- do, a eficácia de codificação é aumentada.
[00190] Foi descrito acima que o valor limite usado na atualização do parâmetro de binarização (cParam) é definido de acordo com a fórmula matemática de "3 * (1 << cParam)", mas a presente modalidade não é limi- tada ao anterior. Por exemplo, o aparelho de codificação de imagem pode usar outro valor numérico, tal como "4" em vez de "3" na fórmula matemáti- ca, ou usar outra fórmula matemática.
[00191] Deve-se também perceber que foi descrito acima que o aparelho de codificação de imagem usa contextos em codificação aritmética em greater1_flag e greater2_flag para todos os coeficientes, mas é também possível que codificação aritmética de derivação, que não usa qualquer contexto, possa ser realizada em greater1_flag ou greater2_flag de uma parte dos coeficientes, da mesma maneira conforme realizada no restante. Por exemplo, se greater1_flag de um coeficiente imediatamente anterior for 1, o aparelho de codificação de imagem pode realizar codificação aritmética de derivação em greater1_flag de um coeficiente alvo. É também possível que o aparelho de codificação de imagem realize codificação aritmética de derivação em greater1_flag no começo de um bloco de coeficiente alvo. O uso da codificação aritmética de derivação pode eliminar o carregamento e atualização de um contexto. Adicionalmente, o uso da codificação aritmética de derivação pode eliminar uma relação de dependência com outra sintaxe que usa o mesmo contexto. Como resultado, o processamento pode ser realizado em uma velocidade mais alta.
[00192] Deve-se perceber que foi descrito acima que um bloco de codificação tem um tamanho de 32 pixels x 32 pixels no máximo, e 4 pixels x 4 pixels no mínimo, mas um tamanho dos blocos de codificação não é limitado ao anterior. É também possível que os blocos de codificação tenham um tamanho fixo.
[00193] Deve-se também perceber que foi descrito acima que um bloco de é dividido em blocos de coeficiente 4x4, mas não é necessário divi- dir um bloco de codificação em blocos de coeficiente, em que cada um tem 4 pixels x 4 pixels. Por exemplo, é também possível dividir um bloco de codificação em blocos de coeficiente, em que cada um tem 8 pixels x 8 pixels. Um bloco de codificação pode ser dividido em blocos de coeficiente retangulares, em que cada um tem 8 pixels x 4 pixels, por exemplo.
[00194] Além disso, o processamento de acordo com a presente modalidade pode ser implantado em software. Esse software pode ser distribuído por transferência por download ou similares. Ou esse software pode ser gravado em um meio de gravação, tal como um CD-ROM a ser distribuído. O anterior é aplicado às outras modalidades nessa descrição.
(MODALIDADE 2)
[00195] Na Modalidade 2, a descrição é dada para um aparelho de decodificação de imagem que decodifica um fluxo de bits codificada gerada pelo aparelho de codificação de imagem de acordo com a Modalidade 1.
<ESTRUTURA GERAL>
[00196] A Figura 20 é um diagrama de blocos que mostra a estrutura do aparelho de decodificação de imagem 200 de acordo com a presente modalidade.
[00197] O aparelho de decodificação de imagem 200 mostrado na Figura 20 decodifica um fluxo codificado 221 para gerar uma imagem decodificada 225. Aqui, o fluxo codificado 221 corresponde, por exemplo, ao fluxo codificado 125 gerado pelo aparelho de codificação de imagem 100 descrito acima. O aparelho de decodificação de imagem 200 inclui uma unidade de decodificação de comprimento de variável 201, uma unidade de transformação inversa 202, uma unidade de adição 203, uma unidade de combinação de bloco decodificado 204 e uma memória de quadro 205.
<PROCESSAMENTO (GERAL)>
[00198] Em seguida, referindo-se à Figura 21, um fluxo geral da decodificação é descrito.
(ETAPA S301)
[00199] A unidade de decodificação de comprimento de variável 201 realiza a decodificação de comprimento de variável no fluxo codificado 221 para gerar coeficientes de frequência 222, e fornece os coeficientes de frequência 222 á unidade de transformação inversa 202.
(ETAPA S302)
[00200] A unidade de transformação inversa 202 transforma os co-eficientes de frequência 222 em dados de pixel para gerar um bloco de diferencial 223.
(ETAPA S303)
[00201] A unidade de adição 203 adiciona uma imagem decodificada 226 armazenada na memória de quadro 205 ao bloco de diferencial 223, gerando, assim, um bloco decodificado 224.
(ETAPA S304)
[00202] O processamento da Etapa S301 à Etapa S303 é repetido até todos os blocos em uma imagem alvo terem sido codificados.
(ETAPA S305)
[00203] A unidade de combinação de bloco decodificado 204 combina uma pluralidade de blocos decodificados 224 juntas para gerar uma imagem decodificada 225, e armazena, como uma imagem decodificada 226, a imagem decodificada 225 à memória de quadra 205.
[00204] O seguinte descreve a unidade de decodificação de comprimento de variável 201 em mais detalhes.
<ESTRUTURA DE UNIDADE DE DECODIFICAÇÃO DE COMPRIMENTO DE VARIÁVEL 201>
[00205] A Figura 22 é um diagrama de blocos que mostra a estru- tura da unidade de decodificação de comprimento de variável 201. Na pre- sente modalidade, como a Modalidade 1, o coeficiente de frequência 222 (doravante referido também simplesmente como "coeficiente") é expresso com base em cinco parâmetros: significant_flag, greater1_flag, greater2_flag restante e sign_flag. Os respectivos parâmetros indicam o mesmo conforme descrito na Modalidade 1, de modo que os mesmos não são explicados no- vamente.
[00206] Conforme mostrado na Figura 22, a unidade de decodifica- ção de comprimento de variável 201 inclui uma unidade de decodificação de significant_flag 231, uma unidade de decodificação de nível 232, uma unidade de decodificação de sign_flag 233 e uma unidade de decodificação de coeficiente 234.
<PROCESSAMENTO (DECODIFICAÇÃO DE COMPRIMENTO DE VARIÁVEL)>
[00207] Em seguida, referindo-se à Figura 23, um fluxo da decodi- ficação de comprimento de variável é descrito.
(ETAPA S321)
[00208] A unidade de decodificação de significant_flag 231 decodi-fica significant_flag de cada um dos coeficientes em um bloco de coeficiente alvo e fornece o significant_flag resultante à unidade de decodificação de nível 232, à unidade de decodificação de sign_flag 233 e a unidade de de- codificação de coeficiente 234.
(ETAPA S322)
[00209] A unidade de decodificação de nível 232 decodifica grea- ter1_flag, greater2_flag e restante de cada um dos coeficientes no bloco de coeficiente alvo e fornece o greater1_flag, greater2_flag e restante resultante à unidade de decodificação de coeficiente 234. Aqui, a unidade de decodifi- cação de nível 232 decodifica greater1_flag, greater2_flag, e restante, ape-nas quando significant_flag é 1.
(ETAPA S323)
[00210] A unidade de decodificação de sign_flag 233 decodifica sign_flag de cada um dos coeficientes no bloco de coeficiente alvo e fornece o sign_flag resultante à unidade de decodificação de coeficiente 234. Aqui, a unidade de decodificação de sign_flag 233 decodifica sign_flag, apenas quando significant_flag é 1.
(ETAPA S324)
[00211] A unidade de decodificação de coeficiente 234 decodifica o coeficiente alvo com base em significant_flag, greater1_flag, greater2_flag, restante e sign_flag. Os respectivos parâmetros indicam o mesmo conforme descrito na Modalidade 1, de modo que a unidade de decodificação de coeficiente 234 decodifique o coeficiente alvo de acordo com a indicação dos parâmetros.
[00212] O seguinte descreve a unidade de decodificação de nível 232 em mais detalhes.
<ESTRUTURA DA UNIDADE DE DECODIFICAÇÃO DE NÍVEL 232>
[00213] A Figura 24 é um diagrama de blocos que mostra a estrutura da unidade de decodificação de nível 232. Conforme mostrado na Figura 24, a unidade de decodificação de nível 232 inclui uma unidade de seleção de conjunto de contexto 241, uma unidade de seleção de contexto de greater1_flag 242, uma memória de greater1_flag 243, uma memória de contexto de greater1_flag 244, uma unidade de seleção de contexto de grea- ter2_flag 245, uma memória de contexto de greater2_flag 246, uma unidade de decodificação aritmética 247, uma unidade de atualização de parâmetro de binarização 248 e uma unidade de múltiplos valores de restante 249. A unidade de múltiplos valores de restante 249 inclui uma unidade de decodifi- cação de prefixo 250, uma unidade de decodificação de sufixo 251 e uma unidade de combinação de prefixo e sufixo 252.
<PROCESSAMENTO (DECODIFICAÇÃO DE NÍVEL)>
[00214] Em seguida, referindo-se às Figuras 25 a 28, a decodifica- ção de nível é descrita em mais detalhes. A Figura 25 é um fluxograma da decodificação realizada pela unidade de decodificação de nível 232.
(ETAPA S341)
[00215] A unidade de seleção de conjunto de contexto 241 define os respectivos números de conjunto de contexto a serem usados na decodi- ficação aritmética em greater1_flag e decodificação aritmética em grea- ter2_flag. O método de definição é o mesmo conforme a seleção de conjunto de contexto (Figura 10) de acordo com a Modalidade 1.
(ETAPA S342)
[00216] A unidade de atualização de parâmetro de binarização 248 inicializa o parâmetro de binarização (cParam) em 0. Nessa etapa, cParam é definido em 0 no começo de um bloco de coeficiente alvo. Deve-se perceber que as Etapas S341 e S342 são realizadas uma vez para o bloco de coeficiente alvo, enquanto as etapas seguintes a partir da Etapa S343 são realizadas para cada um dos coeficientes no bloco de coeficiente alvo.
(ETAPA S343)
[00217] A unidade de decodificação de nível 232 decodifica grea- ter1_flag de cada um dos coeficientes em um bloco de coeficiente alvo. A Figura 26 é um fluxograma de explicação dessa etapa em mais detalhes.
(ETAPA S351)
[00218] A unidade de decodificação de nível 232 determina se ou não significant_flag de um coeficiente alvo é 1. Se significant_flag for 1, então a unidade de decodificação de nível 232 decodifica greater1_flag nas Etapas S352 e S353. Por outro lado, se significant_flag for 0, a unidade de decodificação de nível 232 não decodifica greater1_flag.
(ETAPA S352)
[00219] A unidade de seleção de contexto de greater1_flag 242 define um número de contexto com base no número de conjunto de contexto selecionado na Etapa S341. O método de definição é o mesmo conforme a seleção de contexto de greater1_flag (Figura 11) de acordo com a Modalidade 1.
(ETAPA S353)
[00220] A unidade de decodificação aritmética 247 carrega um contexto a ser usado (contexto em uso) a partir da memória de contexto de gre- ater1_flag 244 de acordo com o número de contexto selecionado na Etapa S352, e realiza decodificação aritmética em greater1_flag com o uso do contexto. Adicionalmente, a unidade de decodificação aritmética 247 armazena o contexto que foi atualizado na decodificação aritmética, de volta no mesmo local na memória de contexto de greater1_flag 244.
(ETAPA S354)
[00221] O processamento da Etapa S351 à Etapa S353 é repetido até todos os coeficientes no bloco de coeficiente alvo terem sido processados.
[00222] Como resultado, greater1_flag(s) dos respectivos coeficientes no bloco de coeficiente também foram decodificados.
(ETAPA S344)
[00223] A unidade de decodificação de nível 232 decodifica grea- ter2_flag de cada um dos coeficientes em um bloco de coeficiente alvo. A Figura 27 é um fluxograma de explicação dessa etapa em mais detalhes.
(ETAPA S361)
[00224] A unidade de decodificação de nível 232 determina se ou não greater1_flag de um coeficiente alvo é 1. Se greater1_flag for 1, então a unidade de decodificação de nível 232 decodifica greater2_flag nas Etapas S362 e S363. Por outro lado, se greater1_flag for 0, a unidade de decodifi- cação de nível 232 não decodifica greater2_flag. Deve-se perceber que se significant_flag do coeficiente alvo for 0, a unidade de decodificação de nível 232 não decodifica greater1_flag ou greater2_flag.
(ETAPA S362)
[00225] A unidade de seleção de contexto de greater2_flag 245 define o número de conjunto de contexto selecionado na Etapa S341 como um número de contexto. Diferente de greater1_flag, um número de conjunto de contexto para greater2_flag é diretamente definido em um número de contexto. Em outras palavras, um único conjunto de contexto para greater2_flag inclui apenas um contexto.
(ETAPA S363)
[00226] A unidade de decodificação aritmética 247 carrega um contexto a ser usado (contexto em uso) a partir da memória de contexto de gre- ater2_flag 246 de acordo com o número de contexto selecionado na Etapa S362, e realiza decodificação aritmética em greater2_flag com o uso do contexto. Adicionalmente, a unidade de decodificação aritmética 247 armazena o contexto que foi atualizado na decodificação aritmética, de volta no mesmo local na memória de contexto de greater2_flag 246.
(ETAPA S364)
[00227] O processamento da Etapa S361 à Etapa S363 é repetido até todos os coeficientes no bloco de coeficiente alvo terem sido processados.
[00228] Como resultado, greater2_flag(s) dos respectivos coeficientes no bloco de coeficiente também foram decodificados.
(ETAPA S345)
[00229] A unidade de decodificação de nível 232 decodifica o restante de cada um dos coeficientes em um bloco de coeficiente alvo. A Figura 28 é um fluxograma de explicação dessa etapa em mais detalhes.
(ETAPA S371)
[00230] A unidade de decodificação de nível 232 determina se ou não greater2_flag de um coeficiente alvo é 1. Se greater2_flag for 1, então a unidade de decodificação de nível 232 decodifica o restante nas Etapas S372 e S373. Por outro lado, se greater2_flag for 0, a unidade de decodifi- cação de nível 232 não decodifica o restante. Deve-se perceber que se sig- nificant_flag do coeficiente alvo for 0, ou greater1_flag do coeficiente alvo for 0, a unidade de decodificação de nível 232 não decodifica greater2_flag ou o restante.
(ETAPA S372)
[00231] A unidade de decodificação aritmética 247 realiza a deco- dificação aritmética no restante. Diferente de greater1_flag e greater2_flag, o restante é aplicado com codificação aritmética de derivação que não usa qualquer contexto.
(ETAPA S373)
[00232] A unidade de múltiplos valores de restante 249 transforma um sinal com múltiplos valores de restante em um sinal binarizado. Essa etapa será descrita adiante em mais detalhes.
(ETAPA S374)
[00233] A unidade de atualização de parâmetro de binarização 248 atualiza o parâmetro de binarização (cParam). O método de atualização é o mesmo que a atualização de parâmetro de binarização (Figura 18) de acordo com a Modalidade 1.
(ETAPA S375)
[00234] O processamento da Etapa S371 à Etapa S374 é repetido até todos os coeficientes no bloco de coeficiente alvo terem sido processados.
<PROCESSAMENTO (TRANSFORMAÇÃO DE MÚLTIPLOS VALORES DE RESTANTE)>
[00235] Em seguida, referindo-se às Figuras 29 a 31, a transformação do restante em um múltiplo valor (S373 na Figura 28) é descrita em mais detalhes.
(ETAPA S401)
[00236] A unidade de decodificação de prefixo 250 decodifica prefixo. A Figura 30 é um fluxograma de explicação dessa etapa em mais detalhes.
(ETAPAS S411 A S415)
[00237] A unidade de decodificação de prefixo 250 determina o prefixo. Em suma, a unidade de decodificação de prefixo 250 obtém códigos por 1 bit cada sequencialmente a partir da unidade de decodificação aritmética 247 até "0" ser encontrado. O número do "1" contínuo é definido em um valor de prefixo.
(ETAPA S402)
[00238] A unidade de decodificação de sufixo 251 decodifica o sufixo.
(ETAPA S403)
[00239] A unidade de combinação de prefixo e sufixo 252 combina o prefixo e o sufixo para gerar um sinal com múltiplos valores de restante.
[00240] A Figura 31 é um fluxograma de explicação das Etapas S402 e S403 em mais detalhes.
(ETAPAS S421 A S433)
[00241] A unidade de decodificação de sufixo 251 determina o sufixo. Em suma, se o prefixo for menor que 8, então a unidade de decodifica- ção de sufixo 251 define um valor de cParam como um comprimento binário e gera o sufixo dispondo-se resultados de decodificação aritmética do com- primento binário em uma ordem a partir de uma ordem mais alta. Por outro lado, se o prefixo for 8 ou maior, então a unidade de decodificação de sufixo 251 calcula um comprimento binário a partir de um prefixo e cParam e gera o sufixo dispondo-se resultados de decodificação aritmética do comprimento binário em uma ordem a partir de uma ordem mais alta.
(ETAPAS S441 A S442)
[00242] A unidade de combinação de prefixo e sufixo 252 calcula o restante com base no prefixo, no sufixo e em cParam.
<EFEITOS>
[00243] Conforme descrito acima, o aparelho de decodificação de imagem de acordo com a Modalidade 2 pode oferecer os mesmos efeitos conforme descrito na Modalidade 1.
[00244] A Figura 32A é um fluxograma de codificação de imagem realizada pelo aparelho de codificação de imagem descrito acima 100.
[00245] Conforme explicado acima, o aparelho de codificação de imagem 100 realiza codificação aritmética em um primeiro indicador (grea- ter1_flag) que indica se ou não um valor absoluto de um coeficiente alvo incluído em um bloco de coeficiente alvo é maior que 1 (S701). Em seguida, o aparelho de codificação de imagem 100 realiza codificação aritmética em um segundo indicador (greater2_flag) que indica se ou não o valor absoluto é maior que 2 (S702).
[00246] A Figura 32B é um fluxograma das Etapas S701 e S702.
[00247] Nas Etapas S701 e S702, o aparelho de codificação de imagem 100 determina se ou não um bloco de coeficiente imediatamente anterior inclui um coeficiente que tem um valor absoluto maior que um valor limite (S711) e, com base no resultado de determinação, seleciona os respectivos contextos a serem usados na codificação aritmética no primeiro indicador e codificação aritmética no segundo indicador (S712). Em outras palavras, o aparelho de codificação de imagem 100 realiza a determinação acima com referência apenas aos coeficientes incluídos no bloco de coeficiente imediatamente anterior, e não aos coeficientes incluídos nos blocos de coeficiente além do bloco de coeficiente imediatamente anterior. Em outras palavras, o aparelho de codificação de imagem 100 realiza codificação aritmética no primeiro indicador e no segundo indicador com o uso dos contextos correspondente ao resultado de determinação entre uma pluralidade de contextos.
[00248] O bloco de coeficiente imediatamente anterior refere-se a um bloco de coeficiente que foi processado imediatamente antes de um bloco de coeficiente alvo.
[00249] Mais especificamente, se um valor absoluto de um coeficiente alvo for maior que o valor limite, o aparelho de codificação de imagem 100 incrementa o parâmetro de binarização (cParam) (S253 e S254 na Figura 18). Então, se cParam de um bloco de coeficiente imediatamente anterior for maior que 0, então o aparelho de codificação de imagem 100 altera um contexto (em outras palavras, incrementa um número de conjunto de contexto) (S184 e S185 na Figura 10).
[00250] Em outras palavras, com base em uma variável gerada na codificação aritmética em um bloco de coeficiente imediatamente anterior, o aparelho de codificação de imagem 100 determina se ou não o bloco de coe-ficiente imediatamente anterior inclui um coeficiente que tem um valor absoluto maior que o valor limite.
[00251] Mais especificamente, se o valor absoluto do coeficiente alvo for maior que 2, o aparelho de codificação de imagem 100 binariza o restante que é um valor obtido subtraindo-se 3 do valor absoluto, de acordo com uma tabela de transformação designada pelo parâmetro de binarização (cParam) entre uma pluralidade de tabelas de transformação. Esse parâme- tro de binarização é determinado dependendo de se ou não o bloco de coeficiente imediatamente anterior inclui um coeficiente que tem um valor absoluto maior que o valor limite. A variável mencionada acima é esse parâmetro de binarização.
[00252] Foi descrito acima que o valor limite para valores absolutos de coeficientes, que é referido na alteração de contexto, é determinado com base no parâmetro de binarização (S252 na Figura 18), mas o valor limite pode ser um valor predeterminado ("1") conforme descrito em relação à técnica convencional. Em outras palavras, o aparelho de codificação de imagem 100 pode determinar se ou não um bloco de coeficiente imediatamente anterior inclui um coeficiente que tem um valor absoluto maior que 1 (de 2 ou mais), e com base no resultado de determinação, alterar um contexto a ser usado para outro. Conforme descrito anteriormente, na técnica convencional, o número de coeficiente que têm um valor absoluto maior que um valor limite é contado. Esse processamento é diferente do processamento para determinar se ou não há um coeficiente que tem um valor absoluto maior que um valor limite conforme descrito na presente modalidade.
[00253] Nesse caso, como no caso acima, o aparelho de codificação de imagem 100 pode determinar se ou não um bloco de coeficiente imediatamente anterior inclui um coeficiente que tem um valor absoluto maior que 1, com base em uma variável gerada em codificação aritmética no bloco de coeficiente imediatamente anterior. Por exemplo, essa variável é grea- ter1_flag. Em outras palavras, o aparelho de codificação de imagem 100 pode alterar um contexto de acordo com se ou não um bloco de coeficiente imediatamente anterior inclui um coeficiente que tem greater1_flag que tem um valor de 1.
[00254] A Figura 33A é um fluxograma de decodificação de imagem realizada pelo aparelho de decodificação de imagem descrito acima 200.
[00255] Conforme mostrado na Figura 33A, o aparelho de decodifi- cação de imagem 200 realiza decodificação aritmética no primeiro indicador (greater1_flag) que indica se ou não um valor absoluto de um coeficiente alvo incluído em um bloco de coeficiente alvo é maior que 1 (S751). O aparelho de decodificação de imagem 200 realiza decodificação aritmética no segundo indicador (greater2_flag) que indica se ou não o valor absoluto é maior que 2 (S752).
[00256] A Figura 33B é um fluxograma das Etapas S751 e S752.
[00257] Nas Etapas S751 e S752, o aparelho de decodificação de imagem 200 determina se ou não um bloco de coeficiente imediatamente anterior inclui um coeficiente que tem um valor absoluto maior que um valor limite (S761) e, com base no resultado da determinação, altera os respectivos contextos a serem suados na decodificação aritmética no primeiro indicador e no segundo indicador (S762). Em outras palavras, o aparelho de decodificação de imagem 200 realiza a decodificação aritmética no primeiro indicador e no segundo indicador com o uso dos respectivos contextos correspondentes ao resultado da determinação entre uma pluralidade de contextos.
[00258] Mais especificamente, se um valor absoluto de um coeficiente alvo for maior que o valor limite, o aparelho de decodificação de imagem 200 incrementa o parâmetro de binarização (cParam) (S253 e S254 na Figura 18). Então, se cParam de um bloco de coeficiente imediatamente anterior for maior que 0, então o aparelho de decodificação de imagem 200 altera um contexto (em outras palavras, incrementa um número de conjunto de contexto) (S184 e S185 na Figura 10).
[00259] Em outras palavras, com base em uma variável gerada na decodificação aritmética em um bloco de coeficiente imediatamente anterior, o aparelho de decodificação de imagem 200 determina se ou não o bloco de coeficiente imediatamente anterior inclui um coeficiente que tem um valor absoluto maior que o valor limite.
[00260] Mais especificamente, se o valor absoluto de um coeficiente alvo for maior que 2, o aparelho de decodificação de imagem 200 transforma o restante, que é um valor obtido subtraindo-se 3 do valor absoluto, em um valor múltiplo de acordo com uma tabela de transformação designada pelo parâmetro de binarização entre uma pluralidade de tabelas de transformação. Esse parâmetro de binarização é determinado dependendo de se ou não o bloco de coeficiente imediatamente anterior inclui um coeficiente que tem um valor absoluto maior que o valor limite. A variável mencionada acima é esse parâmetro de binarização.
[00261] Como no anterior, o valor limite pode ser um valor prede-terminado ("1"). Nesse caso, como no caso acima, o aparelho de codificação de imagem 200 pode determinar se ou não um bloco de coeficiente imediatamente anterior inclui um coeficiente que tem um valor absoluto maior que 1, com base em uma variável gerada em codificação aritmética no bloco de coeficiente imediatamente anterior. Por exemplo, essa variável é grea- ter1_flag. Em outras palavras, o aparelho de decodificação de imagem 200 pode alterar um contexto de acordo com se ou não um bloco de coeficiente imediatamente anterior inclui um coeficiente que tem greater1_flag que tem um valor de 1.
(MODALIDADE 3)
[00262] Na Modalidade 3, uma variação da Modalidade 1 é descrita. Um aparelho de codificação de imagem de acordo com a Modalidade 3 difere do aparelho de codificação de imagem de acordo com a Modalidade 1 pelo fato de que a unidade de codificação de nível 133A funciona de modo diferente da unidade de codificação de nível 133. O seguinte descreve a uni- dade de codificação de nível 133A.
<A ESTRUTURA DA UNIDADE DE CODIFICAÇÃO DE NÍVEL 133A>
[00263] A Figura 34 é um diagrama de blocos que mostra a estrutura da unidade de codificação de nível 133A. A unidade de codificação de nível 133A inclui não apenas a estrutura da unidade de codificação de nível 133 de acordo com a Modalidade 1, mas também como uma unidade de comutação de greater_flag 160. Além disso, as funções da unidade de definição de restante 143A e a unidade de seleção de conjunto de contexto 145A são diferentes daquelas da unidade de definição de restante 143 e a unidade de seleção de conjunto de contexto 145.
<PROCESSAMENTO (CODIFICAÇÃO DE NÍVEL)>
[00264] Em seguida, referindo-se à Figura 35, a codificação de nível é descrita em mais detalhes. A codificação de nível de acordo com Modalidade 1 é adicionada com novas Etapas S501 a S503. Além disso, as Etapas S141A e S171A são diferentes das Etapas S141 e S171. As etapas idênticas àquelas na Modalidade 1 não são explicadas novamente abaixo.
(ETAPA S141A)
[00265] A unidade de seleção de conjunto de contexto 145A define o número de conjunto de contexto a ser usado na codificação aritmética em greater1_flag e greater2_flag. Essa etapa será descrita adiante em mais detalhes.
(ETAPA S501)
[00266] A unidade de comutação de greater_flag 160 determina se ou não um parâmetro de binarização (cParam) que foi atualizado no processamento em um bloco de coeficiente imediatamente anterior é maior que 0. Da mesma forma conforme descrito na Modalidade 1, se o parâmetro de binarização for 0, então greater1_flag e greater2_flag são codificados. Por outro lado, se o parâmetro de binarização for maior que 0, então grea- ter1_flag e greater2_flag não são codificados.
(ETAPAS S502, S503 E S171A)
[00267] Se o parâmetro de binarização (cParam) que foi atualizado para o bloco de coeficiente imediatamente anterior for maior que 0, então a unidade de definição de restante 143A define um valor base de restante em 1. Se o parâmetro de binarização (cParam) for 0, a unidade de definição de restante 143A define o valor base de restante em 3. Então, se um valor absoluto de um coeficiente alvo for maior ou igual ao valor base de restante, então a unidade de codificação de nível 133A codifica o restante nas Etapas S172 a S175. Por outro lado, se o valor absoluto for menor que o valor base de restante, a unidade de codificação de nível 133A não codifica o restante. Quando o restante é codificado, a unidade de codificação de nível 133A subtrai o valor base de restante do valor absoluto e define o valor resultante como restante e codificado. Isso devido ao fato de que greater1_flag e grea- ter2_flag não são codificados algumas vezes dependendo de cParam e um valor a ser definido como restante é, portanto, alterado. Na Modalidade 1, como há greater1_flag e greater2_flag sempre que há cParam, o valor base de restante é fixado em "3".
<PROCESSAMENTO (SELEÇÃO DE CONJUNTO DE CONTEXTO)>
[00268] Em seguida, referindo-se à Figura 35, a seleção de conjunto de contexto (S141A na Figura 34) é descrita em mais detalhes.
(ETAPAS S511 A S513)
[00269] A unidade de seleção de contexto 145A determina se ou não um bloco de coeficiente alvo tem a menor frequência no bloco alvo de codificação. Se o bloco de coeficiente alvo tiver a menor frequência, então a unidade de seleção de conjunto de contexto 145A define o número de con- junto de contexto em 0. De outro modo, a unidade de seleção de conjunto de contexto 145A define o número de conjunto de contexto em 1. Em outras palavras, se o bloco de coeficiente alvo estiver localizado no canto esquerdo superior do bloco alvo de codificação, então a unidade de seleção de conjunto de contexto 145A define o número de conjunto de contexto em 0. De outro modo, a unidade de seleção de conjunto de contexto 145A define o número de conjunto de contexto em 1.
[00270] Diferente da Modalidade 1, a unidade de seleção de conjunto de contexto 145A não muda um contexto determinado quando cParam é maior do que 0. Isso é devido à greater1_flag e greater2_flag não serem codificadas e um contexto não ser selecionado se cParam for maior do que 0 como visto no fluxo de codificação de nível descrito previamente.
EFEITOS
[00271] Como descrito acima, o aparelho de codificação de imagem de acordo com a presente modalidade determina, com base em um parâmetro de binarização que tenha sido atualizado para um bloco de coeficiente imediatamente anterior, que greater1_flag e greater2_flag não devem ser codificadas e, portanto um coeficiente é codificado com base no restante em vez de na greater1_flag e greater2_flag. Desse modo, se houver pelo menos um coeficiente maior do que um valor limite no processamento para o bloco de coeficiente imediatamente anterior, o aparelho de codificação de imagem realiza codificação aritmética de derivação que não usa qualquer contexto, em vez de codificação aritmética que usa um contexto. A codificação aritmética de derivação não requer carregamento e atualização de um contexto. Além disso, a codificação aritmética de derivação permite que o processamento inicie sem esperar até que um contexto tenha sido atualizado em um estágio anterior. Portanto, a codificação aritmética de derivação pode aumentar uma velocidade do processamento mais do que a codifica- ção aritmética que usa um contexto.
[00272] Além disso, se houver uma possibilidade alta de que um valor absoluto de um coeficiente alvo seja pequeno, greater1_flag e grea- ter2_flag algumas vezes são 0 de modo que a codificação do restante não é necessária. Entretanto, a situação acima ocorre raramente quando houver uma possibilidade alta de que o valor absoluto do coeficiente alvo seja grande. Portanto, uma quantidade total de binários pode ser reduzida frequentemente se greater1_flag e greater2_flag não estiverem codificadas.
[00273] Se o cParam após o processamento em um bloco de coeficiente imediatamente-anterior for maior do que 0 (em outras palavras, se houver pelo menos um coeficiente maior do que um valor limite), o aparelho de codificação de imagem de acordo com a presente modalidade espera que haja uma probabilidade alta de causar coeficientes que tenham um valor absoluto no bloco de coeficiente alvo, e, portanto não codifica greater1_flag e greater2_flag. Como resultado, o processamento pode ser realizado em uma velocidade superior, reduzindo a quantidade de etapas de codificação aritmética contextos em uso ao mesmo tempo em que suprime a deterioração da eficiência da codificação.
[00274] Além disso, greater1_flag e greater2_flag não são codificadas quando cParam é maior do que 0. Como resultado, um conjunto de contexto que é usado quando cParam é maior do que 0, em outras palavras, não é necessário um conjunto de contexto que é usado quando houver uma probabilidade alta de provocar os coeficientes a terem um valor grande. Mais especificamente, se um bloco de coeficiente alvo estiver localizado no canto superior esquerdo de um bloco alvo de codificação, o aparelho de codificação de imagem usa um contexto único. Se o bloco de coeficiente alvo não estiver localizado no canto superior esquerdo, o aparelho de codificação de imagem usa um conjunto de contexto único comum. Como resultado, é pos- sível diminuir a quantidade de contextos em uso, e desse modo reduzir um tamanho de uma memória para armazenar contextos e um tamanho de um circuito para selecionar os contextos.
[00275] Unificando-se a informação a ser usada para determinar se codifica ou não greater1_flag e greater2_flag e a informação a ser usada na codificação do restante, um tamanho do circuito é reduzida. Mais especificamente, cParam, que é incrementado toda vez que um valor absoluto de um coeficiente alvo excede o valor limite, é usado para mudar um parâmetro de binarização do restante e para determinar se codifica ou não grea- ter1_flag e greater2_flag. Como resultado, uma estrutura pode realizar várias funções. Em comparação ao presente padrão HEVC (Literatura Não de Patente 1), o aparelho de codificação de imagem de acordo com a presente modalidade pode determinar se codifica ou não greater1_flag e grea- ter2_flag, sem incluir uma estrutura adicional.
[00276] Além disso, o método de codificação de imagem de acordo com a presente modalidade foi aplicado como software de teste do presente padrão HEVC (Literatura Não de Patente 1) para experimentos. A Figura 37 mostra resultados de experimentos em comparação com resultados sem a aplicação da presente modalidade. As condições de experimento são baseadas em condições de experimento comuns do grupo do padrão HEVC. Os valores numéricos na Figura 37 são resultados em relação aos primeiros 49 quadros de imagem de teste. Um valor numérico maior indica eficiência de codificação mais baixa. Um valor negativo indica melhoria da eficiência de codificação. Como mostrado na Figura 37, cada um dos valores varia de -0,00% a 0,06%. Isto significa que a eficiência de codificação é duramente afetada mesmo se uma velocidade do processamento for aumentada eliminando-se a codificação aritmética que usa contextos ou mesmo se uma quantidade total de contextos for diminuída.
[00277] Deve ser observado que foi descrito acima que o aparelho de codificação de imagem determina, com base em um parâmetro de binari- zação (cParam) que tenha sido atualizado para um bloco de coeficiente imediatamente anterior, se codifica ou não greater1_flag e greater2_flag. Entretanto, a determinação pode ser feita com base em um parâmetro de binari- zação que tenha sido atualizado para um bloco de coeficiente diferente do bloco de coeficiente imediatamente anterior. Por exemplo, o aparelho de codificação de imagem pode determinar que greater1_flag e greater2_flag não devem ser codificadas para os blocos de coeficientes seguintes, quando cParam exceder 0 no processamento para qualquer bloco de coeficiente processado. Os blocos de coeficientes são processados sequencialmente a partir de um bloco de frequência superior. Portanto, se cParam de qualquer um dos blocos de coeficientes exceder 0, em outras palavras, se um coeficiente que tem um valor absoluto que é maior ou igual a um valor limite for encontrado, há uma possibilidade alta de que todos os blocos de coeficientes seguintes tenham valores de coeficiente grandes. No caso acima, mesmo se greater1_flag e greater2_flag não forem codificadas, a eficiência de codificação algumas vezes não é diminuída.
[00278] Também deve ser observado que tenha sido descrito acima que o aparelho de codificação de imagem não codifica greater1_flag e greater2_flag quando cParam é maior do que 0, mas a presente modalidade não é limitada ao exposto acima. Por exemplo, também é possível não codificar greater1_flag e greater2_flag quando cParam for maior do que 1 ou maior do que 2. Dependendo da imagem de entrada, algumas vezes é possível aumentar a eficiência de codificação, se a determinação quanto ao fato de codificar greater1_flag e greater2_flag for feita com base em se cParam é ou não maior do que 1.
[00279] Os outros são os mesmos que descrito na Modalidade 1, de modo que os mesmos não são explicados novamente.
(MODALIDADE 4)
[00280] Na Modalidade 4, é dada a descrição para um aparelho de codificação de imagem que decodifica um fluxo de bits codificado gerado pelo aparelho de codificação de imagem de acordo com a Modalidade 3. O aparelho de decodificação de imagem de acordo com a Modalidade 4 difere do aparelho de decodificação de imagem de acordo com a Modalidade 2 em que a unidade de decodificação de nível 232 é substituída por uma unidade de decodificação de nível 232A. A seguir é descrita a unidade de decodifica- ção de nível 232A.
ESTRUTURA DA UNIDADE DE DECODIFICAÇÃO DE NÍVEL 232A
[00281] A Figura 38 é um diagrama de blocos que mostra a estrutura da unidade de decodificação de nível 232A. A unidade de decodificação de nível 232A inclui não apenas a estrutura da unidade de decodificação de nível 232 de acordo com a Modalidade 2, mas também como uma unidade de comutação de greater_flag 260. Adicionalmente, as funções de uma unidade de seleção de conjunto de contexto 241A e uma unidade de decodifi- cação aritmética 247A são diferentes das respectivas funções da unidade de seleção de conjunto de contexto 241 e da unidade de decodificação aritmética 247.
PROCESSAMENTO DE (DECODIFICAÇÃO DE NÍVEL)
[00282] A seguir, com referência à Figura 39, a decodificação de nível é descrita em mais detalhes. A decodificação de nível de acordo com a Modalidade 2 tem adicionadas novas Etapas S601 a S603. Além disso, as Etapas S341A e S371A são diferentes das Etapas S341 e S371, respectivamente. Deve ser observado que as etapas idênticas àquelas na Modalidade 2 não são explicadas novamente abaixo.
ETAPA S341A
[00283] A unidade de seleção de conjunto de contexto 241A determina (seleciona) respectivas quantidades de conjuntos de contexto a serem usados na decodificação aritmética em greater1_flag e decodificação aritmética em greater2_flag. O método de seleção é o mesmo que a seleção de conjunto de contexto (Figura 36) de acordo com a Modalidade 3. Em outras palavras, a unidade de seleção de conjunto de contexto 241A não seleciona um contexto com base em cParam.
ETAPA S601
[00284] A unidade de comutação de greater_flag 260 determina se um parâmetro de binarização (cParam) que tenha sido atualizado no processamento em um bloco de coeficiente imediatamente anterior é ou não maior do que 0. Da mesma maneira que descrito na Modalidade 2, a unidade de comutação de greater_flag 260 decodifica greater1_flag e greater2_flag se o parâmetro de binarização for 0, mas não decodifica greater1_flag e grea- ter2_flag se o parâmetro de binarização for maior do que 0.
ETAPAS S602, S603, E S371A
[00285] Se o parâmetro de binarização (cParam) que tiver sido atualizado para o bloco de coeficiente imediatamente anterior for maior do que 0, então a unidade de decodificação aritmética 247A determina um valor base de restante para 1. Se o parâmetro de binarização (cParam) for 0, a unidade de determinação de restante 247A determina o valor base de restante para 3. Se o valor base de restante for 3 e greater2_flag de um coeficiente alvo for 1, ou se o valor base de restante for 1 e significant_flag do coeficiente alvo for 1, então a unidade de decodificação de nível 232A decodifica restante nas Etapas S372 e S373. Caso contrário, a unidade de decodifica- ção de nível 232A não decodifica restante. Se restante for decodificado, um valor numérico obtido adicionando-se o valor base de restante ao restante decodificado é um valor absoluto do coeficiente alvo.
EFEITOS
[00286] Como descrito acima, o aparelho de decodificação de imagem de acordo com a presente modalidade pode oferecer os mesmos efeitos que descritos na Modalidade 3.
[00287] Em cada uma das modalidades descritas acima, cada um dos blocos funcionais pode ser implantado geralmente para uma MPU (mi-croprocessador), uma memória, ou similares. Além disso, o processamento realizado por cada um dos blocos funcionais pode ser implantado geralmente por software (programa), e o software é gravado em um meio de gravação a uma Memória Somente de Leitura (ROM). Então, esse software pode ser distribuído por download, por exemplo, ou pode ser recodificado em um meio de gravação tal como um Disco Compacto de Memória Somente de Leitura (CD-ROM) para ser distribuído. Além disso, cada um dos blocos funcionais pode ser, naturalmente, implantado por hardware (circuito dedicado).
[00288] O processamento descrito em cada uma das modalidades pode ser realizado como processamento centralizado usando-se um dispositivo (sistema) único, ou como processamento descentralizado usando-se uma pluralidade de dispositivos. Além disso, o programa descrito acima pode ser executado por um único computador ou por uma pluralidade de computadores. Em outras palavras, tanto um processamento centralizado como um processamento descentralizado, pode ser realizado no programa.
[00289] Embora o aparelho de codificação de imagem e o aparelho de decodificação de imagem tenham sido descritos com referência à pluralidade das modalidades como acima, a presente invenção não é limitada a essas modalidades.
[00290] Também deve ser observado que as unidades de processamento em cada um dentre o aparelho de codificação de imagem e o aparelho de decodificação de imagem de acordo com as modalidades acima são implantadas tipicamente em uma Integração de Grande Escala (LSI) que é um circuito integrado. Essas podem ser integradas separadamente, ou uma parte ou todas podem ser integradas em uma única pastilha de microcircui- tos.
[00291] Também deve ser observado que a técnica de circuito integrado não é limitada à LSI, e o mesmo pode ser implantado como um circuito dedicado ou um processador de propósito geral. Também é possível usar um Arranjo de Portas Programáveis em Campo (FPGA) que pode ser programado após fabricar a LSI, ou um processador reconfigurável no qual as células de circuito de conexão e de determinação dentro da LSI podem ser reconfiguradas.
[00292] Cada um dos elementos estruturais em cada uma das mo-dalidades descritas acima pode ser configurado na forma de um produto de hardware dedicado, ou pode ser realizado executando-se um programa de software adequado para o elemento estrutural. Cada um dos elementos estruturais pode ser realizado por meio de uma unidade de execução de programa, tal como uma CPU e um processador, que lê e executa o programa de software gravado em um meio de gravação tal como um disco rígido ou uma memória de semicondutor.
[00293] Em outras palavras, cada um dentre o aparelho de codificação de imagem e o aparelho de decodificação de imagem inclui: circuitos de controle; e armazenamento conectado eletricamente aos circuitos de controle e acessível a partir dos circuitos de controle. Os circuitos de controle incluem pelo menos um dentre o hardware dedicado e a unidade de execução de programa. O armazenamento mantém o programa de software executado pela unidade de execução de programa, quando os circuitos de controle incluem a unidade de execução de programa.
[00294] Além disso, a presente invenção pode ser o programa de software descrito acima, ou pode ser um meio de gravação legível por com-putador não transitório no qual o programa é gravado. Naturalmente, o pro-grama pode ser distribuído através de um meio de transmissão tal como a Internet.
[00295] Além disso, todos os numerais na descrição acima são exemplos para explicar a presente invenção em mais detalhes. A presente invenção não é limitada aos numerais de exemplo.
[00296] Além disso, a divisão dos blocos funcionais nos diagramas de blocos são exemplos. Também é possível que uma pluralidade de blocos funcionais sejam implantados como um bloco funcional, aquele bloco funcional é dividido em uma pluralidade de peças, ou aquela função parcial é deslocada para um bloco funcional diferente. Adicionalmente, as funções da pluralidade de blocos funcionais que têm funções similares podem ser realizadas em paralelo ou em compartilhamento de tempo por um hardware ou software único comum.
[00297] Também deve ser observado que a ordem de executar as etapas incluídas em cada um dentre o método de codificação de imagem descrito acima e o método de decodificação de imagem descrito acima é o exemplo para explicar a presente invenção em mais detalhes. Portanto, podem ser usadas ordens diferentes, excluindo a ordem descrita acima. Uma parte das etapas pode ser executada ao mesmo tempo (em paralelo) com uma etapa diferente.
[00298] Portanto, embora apenas algumas modalidades exemplifi- cativas do aparelho de codificação de imagem e do aparelho de decodifica- ção de imagem de acordo com a presente invenção tenham sido descritas em detalhes acima, a presente invenção não é limitada a essas modalidades. Os indivíduos versados na técnica avaliarão prontamente que várias modificações das modalidades exemplificativas e combinações dos elemen- tos estruturais das diferentes modalidades são possíveis sem se afastar ma-terialmente dos ensinamentos inovadores e vantagens da presente invenção. Consequentemente, todas essas modificações e combinações destinam-se a ser incluídas no escopo da presente invenção.
MODALIDADE 5
[00299] O processamento descrito em cada uma das modalidades pode ser implantado simplesmente em um sistema computador independente, gravando-se, em um meio de gravação, um programa para implantar as configurações do método de codificação de imagem em movimento (método de codificação de imagem) e o método de decodificação de imagem em movimento (método de decodificação de imagem) descrito em cada uma das modalidades. A mídia de gravação pode ser qualquer mídia de gravação desde que o programa possa ser gravado, tal como um disco magnético, um disco óptico, um disco óptico magnético, um cartão IC, e uma memória de semicondutor.
[00300] Doravante, serão descritas as aplicações para o método de codificação de imagem em movimento (método de codificação de imagem) e para o método de decodificação de imagem em movimento (método de de- codificação de imagem) descritos em cada uma das modalidades e sistemas usando os mesmos. O sistema tem uma característica de ter um aparelho de codificação e decodificação de imagem que inclui um aparelho de codificação de imagem que usa o método de codificação de imagem e um aparelho de decodificação de imagem que usa o método de decodificação de imagem. Outras configurações no sistema podem ser mudadas como apropriado dependendo dos casos.
[00301] A Figura 40 ilustra uma configuração genérica de um sistema de fornecimento de conteúdo ex100 para implantar serviços de distribuição de conteúdo. A área para serviços de comunicação de fornecimento é dividido em células de tamanho desejado, e estações base ex106, ex107, ex108, ex109, e ex110 que são estações sem fio fixas são colocadas em cada uma das células.
[00302] O sistema de fornecimento de conteúdo ex100 é conectado a dispositivos, tais como um computador ex111, um assistente pessoal digital (PDA) ex112, uma câmera ex113, um telefone celular ex114 e uma máquina de jogo ex115, através da Internet ex101, um fornecedor de serviço de Internet ex102, uma rede telefônica ex104, bem como as estações base ex106 a ex110, respectivamente.
[00303] Entretanto, a configuração do sistema de fornecimento de conteúdo ex100 não é limitada à configuração mostrada na Figura 40, e uma combinação na qual qualquer dos elementos seja conectado é aceitável. Adicionalmente, cada dispositivo pode ser conectado diretamente à rede telefônica ex104, em vez de através das estações base ex106 a ex110 que são as estações sem fio fixas. Além disso, os dispositivos podem ser inter- conectados um ao outro através de uma comunicação sem fio de curta distância e outras.
[00304] 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 tanto imagens estáticas como vídeo. Além disso, o telefone celular ex114 pode ser um que atenda qualquer dos padrões tais como Sistema Global para Comunicações Móveis (GSM) (marca registrada), Acesso Múltiplo por Divisão de Código (CDMA), Acesso Múltiplo por Divisão de Código de Banda Larga (W-CDMA), Evolução de Longo Termo (LTE), e Acesso de Pacote de Alta Velocidade (HSPA). Alternativamente, o telefone celular ex114 pode ser um Sistema Pessoal de Telefone Portátil (PHS).
[00305] Em o sistema de fornecimento de conteúdo ex100, um servidor de fluxo contínuo ex103 é conectado à câmera ex113 e outras através da rede telefônica ex104 e da estação base ex109, o que habilita a distribuição de imagens de um show ao vivo e outros. Nessa distribuição, um conteúdo (por exemplo, vídeo de um show de música ao vivo) capturado pelo usuário que usa a câmera ex113 é codificado como descrito acima em cada uma das modalidades (isto é, as funções da câmera como aparelho de codificação de imagem de acordo com um aspecto da presente invenção), e o conteúdo codificado é transmitido para o servidor de fluxo contínuo ex103. Por outro lado, o servidor de fluxo contínuo ex103 realiza a distribuição de fluxo contínuo dos dados de conteúdo transmitidos para os clientes em consequência de 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 jogo ex115 que são capazes de decodificar os dados codificados mencionados acima. Cada um dos dispositivos que tiver recebido 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).
[00306] 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. De maneira similar, os dados distribuídos podem ser decodificados pelos clientes ou o 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. Além disso, os dados das imagens estáticas e vídeo capturados não apenas pela câmera ex113, mas também pela câmera ex116 podem ser transmitidos para o servidor de fluxo contínuo ex103 através do computador ex111. Os processos de codificação podem ser realizados pela câmera ex116, o computador ex111, ou o servidor de fluxo contínuo ex103, ou compartilhados entre os mesmos.
[00307] Além disso, os processos de codificação e decodificação podem ser realizados por uma LSI ex500 geralmente incluído em cada um dentre o computador ex111 e os dispositivos. A LSI ex500 pode ser configurada por uma única pastilha de microcircuitos ou uma pluralidade de pastilhas de microcircuitos. O software para codificação e decodificação de vídeo pode ser integrado em algum tipo de meio de gravação (tal como um CD- ROM, um disco flexível, e um disco rígido) que seja legível pelo computador ex111 e outros, e os processos de codificação e decodificação podem ser realizados usando o software. Além disso, 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 pela LSI ex500 incluída no telefone celular ex114.
[00308] Além disso, o servidor de fluxo contínuo ex103 pode ser composto de servidores e computadores, e pode descentralizar dados e processar os dados descentralizados, gravar, ou distribuir os dados.
[00309] Como descrito acima, os clientes podem receber e reproduzir os dados codificados no sistema de fornecimento de conteúdo ex100. Em outras palavras, os clientes podem receber e decodificar informação transmitida 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 direito e equipamento particular possa implantar difusão pessoal.
[00310] Além do exemplo do sistema de fornecimento de conteúdo ex100, pelo menos um dentre o aparelho de codificação de imagem em movimento (aparelho de codificação de imagem) e o aparelho de decodificação de imagem em movimento (aparelho de decodificação de imagem) descrito em cada uma das modalidades pode ser implantado em um sistema de difu- são digital ex200 ilustrado na Figura 41. Mais especificamente, uma estação de difusão ex201 comunica ou transmite, através ondas de rádio para um satélite de difusão ex202, dados multiplexados obtidos multiplexando dados de áudio e outros sobre dados de vídeo. Os dados de vídeo são dados codificados pelo método de codificação de imagem em movimento descrito em cada uma das modalidades (isto é, dados codificados pelo aparelho de codificação de imagem de acordo com um aspecto da presente invenção). Em consequência de receber dos dados multiplexados, o satélite de difusão ex202 transmite ondas de rádio para difusão. Então, uma antena de uso doméstico ex204 com uma função de recepção de satélite de difusão recebe as ondas de rádio. A seguir, um dispositivo tal como uma televisão (receptor) ex300 e um decodificador (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).
[00311] Além disso, um leitor/gravadorex218 (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, grava dados obtidos multiplexando um sinal de áudio nos dados codificados. O leitor/gravador ex218 pode incluir o aparelho de deco- dificação de imagem em movimento ou o aparelho de codificação de imagem em movimento como mostrado em cada uma das modalidades. Nesse caso, os sinais de vídeo reproduzidos são exibidos no monitor ex219, e podem ser reproduzidos por outro dispositivo ou sistema usando o meio de gravação ex215 no qual os dados multiplexados são gravados. Também é possível implantar o aparelho de decodificação de imagem em movimento no decodificador ex217 conectado ao cabo ex203 a uma televisão a cabo ou à antena ex204 para difusão por satélite e/ou terrestre, para desse modo exibir os sinais de vídeo do monitor ex219 da televisão ex300. O aparelho de decodificação de imagem em movimento pode ser implantado não no deco- dificador, mas na televisão ex300.
[00312] A Figura 42 ilustra a televisão (receptor) ex300 que usa o método de codificação de imagem em movimento e o método de decodifica- ção de imagem 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 os dados de áudio sobre os 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 para serem fornecidos para 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.
[00313] 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 dados de áudio e dados de vídeo e codifica dados de áudio e dados de vídeo, respectivamente (que funciona como o aparelho de codificação de imagem e o aparelho de codificaçã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 uma tela. Além disso, a televisão ex300 inclui uma unidade de interface ex317 que inclui uma unidade de entrada de operação ex312 que recebe uma operação de entrada de um usuário. Além disso, a televisão ex300 in- clui 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 fornece energia para 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 encaixe ex314 para habilitar a fixação do meio de gravação ex216, tal como um cartão SD; um controlador ex315 para ser conectado a um meio de gravação externo, tal como um disco rígido; e um modem ex316 para ser conectado a uma rede telefônica. Aqui, o meio de gravação ex216 pode gravar informação eletricamente usando 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 um ao outro através de um barramento síncrono.
[00314] Primeiro, será descrita a configuração na qual a televisão ex300 decodifica dados multiplexados obtidos de fora através da antena ex204 e outros e reproduz os dados decodificados. Na televisão ex300, em consequência de uma operação de usuário através de um controle remoto ex220 e outros, a unidade de multiplexação/demultiplexação ex303 demulti- plexa os dados multiplexados demodulados pela unidade de modula- ção/demodulação ex302, sob o controle da unidade de controle ex310 que inclui uma CPU. Além disso, a unidade de processamento de sinal de áudio ex304 decodifica os dados demultiplexados de áudio, e a unidade de processamento de sinal de vídeo ex305 decodifica os dados demultiplexados de vídeo, usando o 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 sinal de áudio para fora, respectivamente. Quando a unidade de saída ex309 fornece o sinal de vídeo e o sinal de áudio, os sinais podem ser armazenados temporariamente em memórias temporárias de amortecimento ex318 e ex319, e outras de modo que os sinais sejam reproduzidos em sincronização um com o outro. Além disso, a televisão ex300 pode ler dados multiplexados não através de uma difusão e outros, mas a partir da mídia de gravação ex215 e ex216, tal como um disco magnético, um disco óptico, e um cartão SD. A seguir, será descrita 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 fora ou grava os dados em um meio de gravação. na televisão ex300, em consequência de uma operação de usuário através do controle remoto ex220 e 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 usando o método de codificação descrito em cada uma das modalidades. A unidade de multiplexação/demultiplexação ex303 multiplexa o sinal de vídeo e sinal de áudio codificados, e fornece o sinal resultante para fora. Quando a unidade de multiplexação/demultiplexação ex303 multiple- xa o sinal de vídeo e o sinal de áudio, os sinais podem ser temporariamente armazenados nas memórias temporárias de amortecimento ex320 e ex321, e outras de modo que os sinais sejam reproduzidos em sincronização um com o outro. Aqui, as memórias temporárias de amortecimento ex318, ex319, ex320, e ex321 podem ser plurais como ilustrado, ou pelo menos uma memória temporária de amortecimento pode ser compartilhada na televisão ex300. Além disso, os dados podem ser armazenados em uma memória temporária de amortecimento de modo que o sistema sobrefluxo e sub- fluxo possam ser evitados entre a unidade de modulação/demodulação ex302 e a unidade de multiplexação/demultiplexação ex303, por exemplo.
[00315] Além disso, a televisão ex300 pode incluir uma configuração para receber uma entrada de AV de um microfone ou de uma câmera diferente da configuração para obter dados de áudio e vídeo de um meio de difusão ou um meio de gravação, e pode codificar os dados obtidos. Embora a televisão ex300 possa codificar, multiplexar e fornecer dados para fora na descrição, a mesma pode ser capaz apenas de receber, decodificar, e fornecer para fora dados, mas não de codificar, multiplexar, e fornecer dados para fora.
[00316] Além disso, quando o leitor/gravador ex218 lê ou grava dados multiplexados de ou em um meio de gravação, um dentre a televisão ex300 e o leitor/gravador ex218 pode decodificar ou codificar os dados mul- tiplexados, e a televisão ex300 e o leitor/gravador ex218 podem compartilhar a decodificação ou codificação.
[00317] Como um exemplo, a Figura 43 ilustra uma configuração de uma unidade de reprodução/gravação de informação ex400 quando os dados são lidos ou gravados a partir de ou em um óptico disco. A unidade de reprodução/gravação de informação ex400 inclui os elementos constituintes ex401, ex402, ex403, ex404, ex405, ex406, e ex407 a serem descritos doravante. 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 gravar informação, e detecta luz refletida da superfície de gravação do meio de gravação ex215 para ler a informação. A unidade de modulação gravação ex402 aciona eletricamente um laser semicondutor incluído na cabeça óptica ex401, e modula a luz de laser de acordo com os dados gravados. A unidade de reprodução de demodulação ex403 amplifica um sinal de reprodução obtido por detectando eletricamente a luz refletida da superfície de gravação usando um fotodetector incluído na cabeça óptica ex401, e demodula o sinal de reprodução separando um componente de sinal gravado no meio de gravação ex215 para reproduzir a informação necessária. A memória temporária de amortecimento ex404 mantém temporariamente a informação a ser gravada no meio de gravação ex215 e a informação reproduzida do meio de gravação ex215. O motor de disco ex405 gira o meio de gravação ex215. A unidade de controle de servo ex406 move a cabeça óptica ex401 para uma trilha de informação predeterminada ao mesmo tempo em que controla o acionador de rotação do motor de disco ex405 para desse modo seguir o ponto de laser. O sistema unidade de controle ex407 controla em geral a unidade de reprodução/gravação de informação ex400. Os processos de leitura e gravação podem ser implantados pela unidade de controle do sistema ex407 usando várias informações armazenadas na memória temporária de amortecimento ex404 e gera e adiciona informação nova quando necessário, e pela unidade de modulação e gravação ex402, a unidade de reprodução e demodulação ex403, e a unidade de controle de servo ex406 que grava e reproduz informação através da cabeça óptica ex401 ao mesmo tempo em que são operadas de uma maneira coordenada. A unidade de controle do sistema ex407 inclui, por exemplo, um microprocessador, e executa processamento provocando um computador a executar um programa para ler e gravar.
[00318] Embora a cabeça óptica ex401 irradie um ponto de laser na descrição, a mesma pode realizar gravação de alta densidade usando luz de campo próximo.
[00319] A Figura 44 ilustra o meio de gravação ex215 que é o óptico disco. Na superfície de gravação do meio de gravação ex215, sulcos guia são formados espiralmente, e uma trilha de informação ex230 grava, antecipadamente, informação de endereço que indica uma posição absoluta no disco de acordo com mudança em uma forma dos sulcos guia. A informação de endereço inclui informação para determinar as posições dos blocos de gravação ex231 que são uma unidade para gravação de dados. A reprodução da trilha de informação ex230 e leitura da informação de endereço em um aparelho que grava e reproduz dados pode levar a determinação das posições dos blocos de gravação. Além disso, 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 usar na gravação dos dados de usuário. A área de circunferência interna ex232 e a área de circunferência externa ex234 que ficam dentro e fora da área de gravação de dados ex233, respectivamente são para uso específico exceto para gravação dos dados de usuário. A unidade de reprodução/gravação de informação 400 lê e grava áudio codificado, dados de vídeo codificados, ou dados multiplexados obtidos multiplexando o áudio codificado e dados de vídeo, de e na área de gravação dedados ex233 do meio de gravação ex215.
[00320] Embora um óptico disco 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 multi- camada e capaz de ser gravado em uma parte diferente da superfície. Além disso, o disco óptico pode ter uma estrutura para gravação/reprodução multidimensional, tal como gravação de informação usando luz de cores com tamanhos de onda diferentes na mesma parte do disco óptico e para gravar informação que tem camadas diferentes de vários ângulos.
[00321] Além disso, um carro ex210 que tem uma antena ex205 pode receber dados do satélite ex202 e outros, e reproduzir vídeo em um dispositivo de exibição tal como um sistema de navegação de carro ex211 instalado 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 42. O mesmo será verdade para a configuração do computador ex111, do telefone celular ex114, e outros.
[00322] A Figura 45A ilustra o telefone celular ex114 que usa o mé- todo de codificação de imagem em movimento e o método de decodificação de imagem em movimento descrito 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 em movimento e estáticas; e uma unidade de exibição ex358 tal como uma tela de cristal líquido para exibir os dados tais 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 tecla de operação ex366; uma unidade de saída de áudio ex357 tal como um alto-falante para saída de áudio; uma unidade de entrada de áudio ex356 tal como um microfone para entrada de áudio; uma unidade de memória ex367 para armazenar vídeo ou imagens estáticas capturadas, áudio gravado, dados codificados ou decodificados do vídeo recebido, as imagens estáticas, e-mails, ou outros; e uma unidade de encaixe 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.
[00323] A seguir, um exemplo de uma configuração do telefone celular ex114 será descrito com referência à Figura 45B. No telefone celular ex114, uma unidade de controle principal ex360 projetada para controle geral de cada unidade do corpo principal incluindo a unidade de exibição ex358 bem como a unidade de tecla de operação ex366 é conectada mutuamente, através de um barramento síncrono ex370, a uma unidade de circuito de fonte de alimentação ex361, uma unidade de controle de operação de entrada ex362, uma unidade de processamento de sinal de vídeo ex355, uma unidade de interface de câmera ex363, uma unidade de controle de tela 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 pro- cessamento de sinal de áudio ex354, a unidade de encaixe ex364, e a unidade de memória ex367.
[00324] Quando uma tecla de término de chamada ou uma tecla de energia é ligada por uma operação do usuário, a unidade de circuito de fonte de alimentação ex361 fornece energia para as respectivas unidades a partir de uma bateria para desse modo ativar o telefone celular ex114.
[00325] Em o 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 áudio em sinais digitais de áudio sob o controle da unidade de controle principal ex360 que inclui uma CPU, ROM, e RAM. Então, a unidade de modula- ção/demodulação ex352 realiza processamento espalhamento de espectro nos sinais digitais de áudio, e a unidade de transmissão e recepção ex351 realiza conversão digital para analógico e conversão de frequência nos dados, para desse modo transmitir os dados resultantes através da antena ex350. Também, 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 áudio e realiza conversão de frequência e a conversão analógico para digital nos dados. Então, a unidade de modulação/demodulação ex352 realiza processamento inverso de espalhamento de espectro nos dados, e a unidade de processamento de sinal de áudio ex354 converte os mesmos em sinais analógicos de áudio, para desse modo emiti-los através da unidade de saída de áudio ex357.
[00326] Além disso, quando um e-mail é transmitido em modo de comunicação de dados, os dados de texto do e-mail entrados pela operação da unidade de tecla de operação ex366 e outras do corpo principal são enviados para a unidade de controle principal ex360 através da operação da unidade de controle de entrada ex362. A unidade de controle principal ex360 provoca a unidade de modulação/demodulação ex352 a realizar processamento de espalhamento de espectro nos dados de texto, e a unidade de transmissão e recepção ex351 realiza a conversão digital para analógico e a conversão de frequência nos dados resultantes para transmitir os dados para a estação base ex110 através da antena ex350. Quando um e-mail é recebido, é realizado o processamento que é aproximadamente inverso ao processamento para transmitir um e-mail nos dados recebidos, e os dados resultantes são fornecidos para a unidade de exibição ex358.
[00327] Quando vídeo, imagens estáticas, ou vídeo e áudio em modo de comunicação de dados é ou são transmitidos, a unidade de processamento de sinal de vídeo ex355 comprime e codifica os sinais de vídeo fornecidos da unidade de câmera ex365 usando o método de codificação de imagem 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 para a unidade de multiplexação/demultiplexação ex353. Ao contrário, quando a unidade de câmera ex365 captura vídeo, imagens estáticas, e outras, 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 para a unidade de multiplexação/demultiplexação ex353.
[00328] A unidade de multiplexação/demultiplexação ex353 multi- plexa os dados de vídeo codificados fornecidos da unidade de processamento de sinal de vídeo ex355 e os dados de áudio codificados fornecidos da unidade de processamento de sinal de áudio ex354, usando 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 espalhamento de espectro nos dados multiplexados, e a unidade de transmissão e recepção ex351 realiza conversão digital para analógico e conversão de frequência nos dados para desse modo transmitir os dados resultantes através da antena ex350.
[00329] Quando recebendo dados de um arquivo de vídeo que é ligado a uma página de Web e outros em modo de comunicação de dados ou quando recebendo um e-mail com vídeo e/ou áudio anexado, a fim de decodificar os dados multiplexados recebidos através da antena ex350, a unidade de multiplexação/demultiplexação ex353 demultiplexa os dados multiplexa- dos em um fluxo contínuo de bits de dados de vídeo e um fluxo contínuo de bits de dados de áudio, e fornece dados de vídeo codificados para a unidade de processamento de sinal de vídeo ex355 e dados de áudio codificados para a unidade de processamento de sinal de áudio ex354, através do bar- ramento síncrono ex370. A unidade de processamento de sinal de vídeo ex355 decodifica o sinal de vídeo usando um método de decodificação de imagem em movimento que corresponde ao método de codificação de imagem 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 então a unidade de exibição ex358 exibe, por exemplo, o vídeo e imagens estáticas incluídas no arquivo de vídeo ligado à página de Web através da unidade de controle de LCD ex359. Além disso, a unidade de processamento de sinal de áudio ex354 decodifica o sinal de áudio, e a unidade de saída de áudio ex357 fornece o áudio.
[00330] Adicionalmente, similarmente à televisão ex300, um terminal tal como o telefone celular ex114 provavelmente tem 3 tipos de configurações de implantação que incluem não apenas (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 apenas um aparelho de codificação e (iii) um terminal de recepção que inclui apenas um aparelho de decodificação. Embora o sistema de transmissão pública ex200 receba e transmita os dados multiplexados obtidos multiple- xando-se dados de áudio em dados de vídeo na descrição, os dados multi- plexados podem ser dados obtidos multiplexando-se não dados de áudio, mas dados de caractere relacionados a vídeo para dados de vídeo e podem não ser dados multiplexados, mas próprios dados de vídeo.
[00331] Como tal, o método de codificar imagem em movimento e o método de decodificar imagem em movimento em cada uma das modalidades pode ser utilizado em qualquer dos dispositivos e sistemas descritos. Desse modo, as vantagens descritas em cada uma das modalidades podem ser obtidas.
[00332] Adicionalmente, diversas modificações e revisões podem ser feitas em qualquer das modalidades na presente invenção.
(MODALIDADE 6)
[00333] Dados de vídeo podem ser gerados alternando-se, conforme necessário, entre (i) o método de codificar imagem em movimento ou o aparelho de codificação de imagem em movimento mostrados em cada uma das modalidades e (ii) um método de codificar imagem em movimento ou um aparelho de codificação de imagem em movimento em conformidade com um padrão diferente, tal como MPEG-2, MPEG-4 AVC, e VC-1.
[00334] Aqui, quando uma pluralidade de dados de vídeo em con-formidade com os padrões diferentes é gerada e é então decodificada, os métodos de decodificação precisam ser selecionados para conformar com os padrões diferentes. Entretanto, uma vez que para qual padrão cada um da pluralidade dos dados de vídeo a serem decodificados se conforma não pode ser detectado, há um problema em que um método de decodificação apropriado não pode ser selecionado.
[00335] A fim de solucionar o problema, dados multiplexados obtidos multiplexando-se dados de áudio e outros para 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 inclui os dados de vídeo gerados no método de codificar imagem em movimento e pelo aparelho de codificação de imagem em movimento mostrados em cada uma das modalidades serão descritos de agora em diante. Os dados multiplexados é um fluxo digital no formato de Corrente de Transporte MPEG-2.
[00336] A Figura 46 ilustra uma estrutura dos dados multiplexados. Conforme ilustrado na Figura 46, os dados multiplexados podem ser obtidos multiplexando-se pelo menos um fluxo de vídeo, um fluxo de áudio, um fluxo de gráfico de apresentação (PG) e um fluxo de gráfico interativo. 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 serem misturadas com a parte de áudio primária e o fluxo de gráfico de apresentação representa subtítulos do filme. Neste documento, o vídeo primário é um vídeo normal a ser exibido em uma tela e o vídeo secundário é um vídeo a ser exibido em uma janela menor no vídeo primário. Adicionalmente, o fluxo de gráfico interativo representa uma tela interativa a ser gerada dispondo-se os componentes de GUI em uma tela. O fluxo de vídeo é codificado no método de codificar imagem em movimento ou pelo aparelho de codificação de imagem em movimento mostrado em cada uma das modalidades, ou em um método de codificar imagem em movimento ou por um aparelho de codificação de imagem 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.
[00337] Cada fluxo incluso nos dados multiplexados é identificado por PID. Por exemplo, 0x1011 está alocado no fluxo de vídeo a ser utilizado para o vídeo de um filme, 0x1100 a 0x111F são alocados para os fluxos de áudio, 0x1200 a 0x121F são alocados para os fluxos de gráfico de apresentação, 0x1400 a 0x141F são alocados para os fluxos de gráfico interativo, 0x1B00 a 0x1B1F são alocados para os fluxos de vídeo a serem utilizados para o vídeo secundário do filme e 0x1A00 a 0x1A1F são alocados para os fluxos de áudio a serem utilizados para o áudio secundário a ser misturado com o áudio primário.
[00338] A Figura 47 ilustra esquematicamente como dados são multiplexados. Primeiro, um fluxo de vídeo ex235 composto de quadros de vídeo e um fluxo de áudio ex238 composto de quadros 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, dados de um fluxo de gráfico de apresentação ex241 e dados de um fluxo de gráfico interativo 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.
[00339] A Figura 48 ilustra como um fluxo de vídeo é armazenado em um fluxo de pacotes de PES e mais detalhes. A primeira barra na Figura 48 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 comoyy1, yy2, yy3 e yy4 na Figura 48, o fluxo de vídeo é dividido em imagens como imagens I, imagens B e imagens P cada uma das quais é uma unidade de apresentação de vídeo e as imagens são armazenadas em uma carga útil 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 Registro Temporal de Apresentação (PTS) que indica um tempo de exibição da imagem e um Registro Temporal de Decodificação (DTS) que indica um tempo de decodificação da imagem.
[00340] A Figura 49 ilustra um formato de pacotes de TS a serem finalmente registrados nos dados multiplexados. Cada um dos de TS é um pacote de comprimento fixo de 188 bytes que inclui um cabeçalho de TS de 4 bytes que tem informações, tal como um PID para identificar um fluxo de uma carga útil de TS de 184 bytes para armazenar dados. Os pacotes de PES são divididos e armazenados nas cargas úteis de TS, respectivamente. Quando uma memória ROM de BD é utilizada, para cada um dos pacotes de TS é dado um TP_Extra_Header de 4 bytes, que desse modo resulta em pacotes fonte de 192 bytes. Os pacotes fonte são registrados em dados mul- tiplexados. O TP_Extra_Header armazena informações tal como um Arri- val_Time_Stamp (ATS). O ATS mostra um tempo de início de transferência em que cada um dos pacotes de TS deve ser transferido para um filtro de PID. Os pacotes fonte são distribuídos nos dados multiplexados mostrados no fundo da Figura 49. Os números que incrementam a partir da cabeça dos dados multiplexados são chamados números de pacote fonte (SPNs).
[00341] Cada um dos pacotes de TS inclusos nos dados multiple- xados inclui não apenas fluxos de áudio, vídeo, subtítulos 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 o que um PID em uma PMT utilizado nos dados multiplexados indica e um PID da própria PAT é registrado como zero. A PMT armazena PIDs dos fluxos de vídeo, áudio, subtítulos e outros inclusos nos dados mul- tiplexados e informações de atributo dos fluxos que correspondem aos PIDs. A PMT também tem diversos descritores em relação aos dados multiplexa- dos. Os descritores têm informações tal como informações de controle de cópia que mostram quanto a se a cópia dos dados multiplexados é permitida ou não. A PCR armazena informações de tempo de STC que correspondem a um ATS que mostra quando o pacote de PCR é transferido para um deco- dificador, a fim de alcançar sincronização entre um Relógio de Tempo de Chegada (ATC) que é um eixo temporal de ATSs e um Relógio de Tempo de Sistema (STC) que é um eixo temporal de PTSs de DTSs.
[00342] A Figura 50 ilustra a estrutura de dados do PMT em detalhes. Um cabeçalho da PMT é disposto no topo da PMT. O cabeçalho da PMT descreve o comprimento de dados incluídos na PMT e outros. Uma pluralidade de descritores em relação aos dados multiplexados é disposta após o cabeçalho da PMT. Informações tais como as informações de controle de cópia são descritas nos descritores. Após os descritores, uma pluralidade de pedaços de informações de fluxo em relação aos fluxos inclusos nos dados multiplexados é disposta. Cada pedaço de informações de fluxo inclui descritores de fluxo sendo que cada um descreve informações, tal como um tipo de fluxo para identificar um codec de compressão (tal como taxa de quadros ou uma taxa de proporção). Os descritores de fluxo são iguais em número ao número de fluxos nos dados multiplexados.
[00343] Quando os dados multiplexados são registrados em um meio de registro e outros, os mesmos são registrados junto com arquivos de informações de dados multiplexados.
[00344] Cada um dos arquivos de informações de dados multiple- xados são informações de gerenciamento dos dados multiplexados conforme mostrado na Figura 51. Os arquivos de informações de dados multiple- xados estão em correspondência um a 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.
[00345] Conforme ilustrado na Figura 51, as informações de dados multiplexados incluem uma taxa de sistema, um tempo de início de reprodu- ção e um tempo de término de reprodução. A taxa de sistema indica a taxa de transferência máxima na qual um decodificador alvo de sistema a ser descrito transfere mais tarde os dados multiplexados para um filtro de PID. Os intervalos dos ATSs inclusos nos dados multiplexados são definidos como 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 multiple- xados. Um intervalo de um quadro é adicionado a um PTS em um quadro de vídeo no final dos dados multiplexados e o PTS é definido como o tempo de término de reprodução.
[00346] Conforme mostrado na Figura 52, um pedaço de informações de atributo é registrado nas informações de atributo de fluxo, para cada PID de cada fluxo incluso nos dados multiplexados. Cada pedaço de informações de atributo tem diferentes informações dependendo em quanto a 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 é utilizado para comprimir o fluxo de vídeo e a resolução, taxa de proporção e taxa de quadros dos pedaços de dados de imagem que são inclusos no fluxo de vídeo. Cada pedaço de informações de atributo de fluxo de áudio carrega informações que incluem qual tipo de codec de compressão é utilizado para comprimir o fluxo de áudio, quantos canais são inclusos no fluxo de áudio, que linguagem o fluxo de áudio suporta e o quão alta é a frequência de amostragem. As informações de atributo de fluxo de vídeo e as informações de atributo de fluxo de áudio são usados para inicialização de um decodificador antes do reprodutor reproduzir as informações.
[00347] Na presente modalidade, os dados multiplexados a serem utilizados são de um tipo de fluxo incluso na PMT. Adicionalmente, quando os dados multiplexados são registrados em um meio de registro, as informações de atributo de fluxo de vídeo inclusas nas informações de dados multi- plexados são usadas. Mais especificamente, o método de codificar imagem em movimento ou o aparelho de codificação de imagem em movimento descritos em cada uma das modalidades inclui uma etapa ou uma unidade para alocar informações singulares que indicam dados de vídeo gerados pelo método de codificar imagem em movimento ou o aparelho de codificação de imagem em movimento em cada uma das modalidades, para o tipo de fluxo incluso na PMT ou nas 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 imagem em movimento ou o aparelho de codificação de imagem em movimento descritos em cada uma das modalidades podem ser distintos de dados de vídeo que conformam com outro padrão.
[00348] Adicionalmente, a Figura 53 ilustra etapas do método de decodificar imagem em movimento de acordo com a presente modalidade. Na Etapa exS100, o tipo de fluxo incluso na PMT ou as informações de atributo de fluxo de vídeo inclusas nas informações de dados multiplexados são obtidas a partir dos dados multiplexados. Em seguida, na Etapa exS101, é determinado quanto a se o tipo de fluxo das informações de atributo de fluxo de vídeo indica ou não que os dados multiplexados são gerados pelo método de codificar imagem em movimento ou o aparelho de codificação de imagem 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 indicam que os dados multiplexados são gerados pelo método de codificar imagem em movimento ou o aparelho de codificação de imagem em movimento em cada uma das modalidades, na Etapa exS102, é desempenhada decodifica- ção pelo método de decodificar imagem em movimento em cada uma das modalidades. Adicionalmente, quando o tipo de fluxo ou as informações de atributo de fluxo de vídeo indicam conformidade com os padrões convencionais, tal como MPEG-2, MPEG-4 AVC e VC-1, na Etapa exS103, decodifica- ção é desempenhada por um método de decodificar imagem em movimento em conformidade com os padrões convencionais.
[00349] Como tal, alocar um novo valor singular para o tipo de fluxo ou as informações de atributo de fluxo de vídeo habilita determinação quanto a se o método de decodificar imagem em movimento ou o aparelho de de- codificação de imagem em movimento que é descrito em cada uma das modalidades pode ou não desempenhar decodificação. Mesmo quando dados multiplexados que conformam com um padrão diferente são inseridos, um método de decodificação apropriado ou aparelho pode ser selecionado. Desse modo, torna-se possível decodificar informações sem qualquer erro. Adicionalmente, o método de codificar imagem em movimento ou aparelho, ou o método de decodificar imagem em movimento ou aparelho na presente modalidade pode ser usado nos dispositivos e sistemas descritos acima.
(MODALIDADE 7)
[00350] Cada um do método de codificar imagem em movimento, do aparelho de codificação de imagem em movimento, do método de decodificar imagem em movimento e do aparelho de decodificação de imagem em movimento em cada uma das modalidades é tipicamente alcançado na forma de um circuito integrado ou um circuito Integrado de Grande Escala (LSI). Conforme um exemplo do LSI, a Figura 54 ilustra uma configuração do LSI ex500 que é feita em um chip. O LSI ex500 inclui os elementos ex501, ex502, ex503, ex504, ex505, ex506, ex507, ex508 e ex509 a serem descritos abaixo e os elementos são conectados uns aos outros através de um barramento ex510. A unidade de circuito de fonte de energia ex505 é ativada suprindo-se cada um dos elementos com energia quando a unidade de circuito de fonte de energia ex505 é ligada.
[00351] Por exemplo, quando a codificação é desempenhada, o LSI ex500 recebe um sinal de AV de um microfone ex117, uma câmera ex113 e outros através de uma IO de 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 de AV recebido é temporariamente armazenado em uma memória externa ex511, tal como uma SDRAM. Sob controle da unidade de controle ex501, os dados armazenados são segmentados em porções de dados de acordo com uma quantidade de processamento e velocidade a ser transmitida para 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. Adicionalmente, a unidade de processamento de sinal ex507 às vezes multiplexa os dados de áudio codificados e os dados de vídeo codificados e uma IO de fluxo ex506 fornece os dados multiplexados do lado de fora. Os dados multiplexa- dos fornecidos são transmitidos para a estação de base ex107, ou registrados no meio de registro ex215. Quando conjuntos de dados são multiplexa- dos, os dados devem ser temporariamente armazenados no dispositivo de armazenamento temporário ex508 de modo que os conjuntos de dados sejam sincronizados uns com os outros.
[00352] Embora a memória ex511 seja um elemento de fora do LSI ex500, a mesma pode ser inclusa no LSI ex500. O dispositivo de armazenamento temporário ex508 não é limitado a um dispositivo de armazenamento temporário, mas pode ser composto por dispositivos de armazenamento temporário. Adicionalmente, o LSI ex500 pode ser feito em um chip ou uma pluralidade de chips.
[00353] Adicionalmente, embora a unidade de controle ex501 in- clua a 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 é limitada a tal. Por exemplo, a unidade de processamento de sinal ex507 pode incluir adicionalmente uma CPU. A inclusão de outra CPU na unidade de processamento de sinal ex507 pode aprimorar a velocidade de processamento. Adicionalmente, como outro exemplo, a CPU ex502 pode servir como ou ser parte da unidade de processamento de sinal ex507 e, por exemplo, pode incluir uma unidade de processamento de sinal de áudio. E tal caso, a unidade de controle ex501 inclui a unidade de processamento de sinal ex507 ou a CPU ex502 incluindo-se uma parte da unidade de processamento de sinal ex507.
[00354] O nome usado aqui é LSI, mas também pode ser chamado de IC, LSI de sistema, super LSI, ou ultra LSI dependendo do grau de integração.
[00355] Ademais, formas de alcançar integração não são limitadas ao LSI e um circuito especial ou um processador de propósito geral e assim por diante podem alcançar a integração. O Arranjo de Porta Programável em Campo (FPGA) que pode ser programado após fabricar LSIs ou um processador reconfigurável que permite reconfiguração da conexão ou configuração de um LSI pode ser usado para o mesmo propósito.
[00356] No futuro, com avanços em tecnologia semicondutora, uma tecnologia nova pode substituir o LSI. Os blocos funcionais podem ser integrados com o uso de tal tecnologia. A possibilidade é que a presente invenção seja aplicada a biotecnologia.
(MODALIDADE 8)
[00357] Quando dados de vídeo gerados no método de codificar imagem em movimento ou pelo aparelho de codificação de imagem em movimento descritos em cada uma das modalidades são decodificados, em comparação a quando dados de vídeo que conformam com um padrão con-vencional, 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 como uma frequência de acionamento mais alta do que a da CPU ex502 a ser usada quando os dados de vídeo em conformidade com o padrão convencional são decodificados. Entretanto, quando a frequência de acionamento é definida mais alta, há um problema em que o consumo de energia aumenta.
[00358] A fim de solucionar o problema, o aparelho de decodifica- ção de imagem em movimento, tal como a televisão ex300 e o LSI ex500 é configurado para determinar com qual padrão os dados de vídeo se conformam e alternar entre as frequências de acionamento de acordo com o padrão determinado. A Figura 55 ilustra uma configuração ex800 na presente modalidade. Uma unidade de alternação de frequência de acionamento ex803 define uma frequência de acionamento como uma frequência de acionamento mais alta quando dados de vídeo são gerados pelo método de codificar imagem em movimento ou o aparelho de codificação de imagem em movimento descrito em cada uma das modalidades. Então a unidade de alternação de frequência de acionamento ex803 instrui uma unidade de processamento de decodificação ex801 que executa o método de decodificar imagem em movimento descrito em cada uma das modalidades para decodificar os dados de vídeo. Quando os dados de vídeo conformam com o pa-drão convencional, a unidade de alternação de frequência de acionamento ex803 define uma frequência de acionamento como uma frequência de acionamento mais baixa que a dos dados de vídeo gerados pelo método de codificar imagem em movimento ou o aparelho de codificação de imagem em movimento descrito em cada uma das modalidades. Então, a unidade de alternação de frequência de acionamento ex803 instrui a unidade de proces- samento de decodificação ex802 que conforma com o padrão convencional para decodificar os dados de vídeo.
[00359] Mais especificamente, a unidade de alternação de frequência de acionamento ex803 inclui a CPU ex502 e a unidade de controle de frequência de acionamento ex512 na Figura 54. Aqui, cada da unidade de processamento de codificação ex801 que executa o método de decodificar imagem em movimento descrito em cada uma das modalidades e a unidade de processamento de decodificação ex802 que conforma com o padrão convencional corresponde à unidade de processamento de sinal ex507 na Figura 54. A CPU ex502 determina com qual padrão os dados de vídeo conformam. Então, a unidade de controle de frequência de acionamento ex512 determina uma frequência de acionamento com base em um sinal da CPU ex502. Adicionalmente, a unidade de processamento de sinal ex507 decodifica os dados de vídeo com base no sinal da CPU ex502. Por exemplo, as informações de identificação descritas na Modalidade 6 provavelmente são usadas para identificar os dados de vídeo. As informações de identificação não são limitadas às descritas na Modalidade 6, mas podem ser quaisquer informações desde que as informações indiquem com qual padrão os dados de vídeo conformam. Por exemplo, quando com qual padrão os dados de vídeo conformam pode ser determinado com base em um sinal externo para determinar que os dados de vídeo sejam usados por uma televisão ou um disco magnético, etc., a determinação pode ser baseada em tal sinal externo. Adicionalmente, a CPU ex502 seleciona uma frequência de acionamento com base em, por exemplo, uma tabela de pesquisa em que os padrões dos dados de vídeo são associados com as frequências de acionamento conforme mostrado na Figura 57. A frequência de acionamento pode ser selecionada armazenando-se a tabela de pesquisa no dispositivo de armazenamento temporário ex508 e em uma memória interna de um LSI e com referência à tabela de pesquisa pela CPU ex502.
[00360] A Figura 56 ilustra etapas para executar um método na presente modalidade. Primeiro, na Etapa exS200, a unidade de processamento de sinal ex507 obtém informações de identificação a partir dos dados multiplexados. Em seguida na Etapa exS201, a CPU ex502 determina quanto a se os dados de vídeo são gerados ou não pelo método de codificação e o aparelho de codificação descritos 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 codificar imagem em movimento e o aparelho de codificação de imagem em movimento descrito em cada uma das modalidades, na Etapa exS202, a CPU ex502 transmite um sinal para definir a frequência de acionamento como uma frequência de acionamento mais alta para a 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 como a frequência de acionamento mais alta. Por outro lado, quando as informações de identificação indicam que os dados de vídeo conformam com o padrão convencional, tal como MPEG-2, MPEG-4 AVC e VC-1, na Etapa exS203, a CPU ex502 transmite um sinal para definir a frequência de acionamento como uma frequência de acionamento mais baixa para a 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 como a frequência de acionamento mais baixa que a do caso onde os dados de vídeo são gerados pelo método de codificar imagem em movimento e o aparelho de codificação de imagem em movimento descrito em cada modalidade.
[00361] Adicionalmente, junto com a alternação das frequências de acionamento, o efeito de conservação de energia pode ser melhorado mudando-se a voltagem a ser aplicada ao LSI ex500 ou um aparelho que inclui o LSI ex500. Por exemplo, quando a frequência de acionamento é definida mais baixa, a voltagem a ser aplicada ao LSI ex500 ou o aparelho que inclui o LSI ex500 provavelmente é definida como uma voltagem mais baixa do que no caso onde a frequência de acionamento é definida mais alta.
[00362] Adicionalmente, quando a quantidade de processamento para decodificar for maior, a frequência de acionamento pode ser mais alta e quando a quantidade de processamento para decodificar for menor, a frequência de acionamento pode ser definida mais baixa como o método para definir a frequência de acionamento. Desse modo, o método de definição não é limitado aos descritos acima. Por exemplo, quando a quantidade de processamento para dados de vídeo de decodificação em conformidade com MPEG-4 AVC for maior do que a quantidade de processamento para dados de vídeo de decodificação gerados pelo método de codificar imagem em movimento e o aparelho de codificação de imagem em movimento descritos em cada uma das modalidades, a frequência de acionamento provavelmente é definida em ordem contrário à definição descrita acima.
[00363] Adicionalmente, o método para definir a frequência de aci-onamento não é limitado ao método para definir a frequência de acionamento mais baixa. Por exemplo, quando as informações de identificação indicam que os dados de vídeo são gerados pelo método de codificar imagem em movimento e o aparelho de codificação de imagem em movimento descritos em cada uma das modalidades, a voltagem a ser aplicada ao LSI ex500 ou o aparelho que inclui o LSI ex500 provavelmente é definida mais alta. Quando as informações de identificação indicam que os dados de vídeo conformam com o padrão convencional, tal como MPEG-2, MPEG-4 AVC e VC-1, a voltagem a ser aplicada ao LSI ex500 ou o aparelho que inclui o LSI ex500 provavelmente é definida como mais baixa. Conforme outro exemplo, quando as informações de identificação indicam que os dados de vídeo são gerados pelo método de codificar imagem em movimento e o aparelho de codificação de imagem em movimento descritos em cada uma das modalidades, o acionamento da CPU ex502 provavelmente não precisa ser suspenso. Quando as informações de identificação indicam que os dados de vídeo conformam com o padrão convencional, tal como MPEG-2, MPEG-4 AVC e VC-1, o acionamento da CPU ex502 provavelmente é suspenso em um dado momento devido ao fato de que a 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 codificar imagem em movimento e o aparelho de codificação de imagem em movimento descrito em cada uma das modalidades, no caso onde a CPU ex502 tem capacidade de processamento extra, o acionamento da CPU ex502 provavelmente é suspenso em um dado momento. Em tal caso, o tempo de suspensão provavelmente é definido mais curto do que no caso onde quando as informações de identificação indicam que os dados de vídeo conformam com o padrão convencional, tal como MPEG-2, MPEG-4 AVC e VC-1.
[00364] Em conformidade, o efeito de conservação de energia pode ser melhorado alternando-se entra as frequências de acionamento de acordo com o padrão com o qual os dados de vídeo conformam. Adicionalmente, quando o LSI ex500 ou o aparelho que inclui o LSI ex500 é acionado com o uso de uma bateria, a bateria pode ser estendida com o efeito de conservação de energia.
(MODALIDADE 9)
[00365] Há casos onde uma pluralidade de dados de vídeo que conformam com padrões diferentes é fornecida aos dispositivos e sistemas, tal como uma televisão e um telefone celular. A fim de habilitar a decodifica- ção da pluralidade de dados de vídeo que conformam com os diferentes padrões, a unidade de processamento de sinal ex507 do LSI ex500 precisa conformar com os padrões diferentes. Entretanto, os problemas de aumento na escala do circuito do LSI ex500 e aumento do custo aparecem com o uso individual das unidades de processamento de sinal ex507 que conformam com os padrões respectivos.
[00366] A fim de solucionar o problema, o que é concebido é uma configuração em que a unidade de processamento de decodificação para implantar o método de decodificar imagem em movimento descrito em cada uma das modalidades e a unidade de processamento que conforma com o padrão convencional, tal como MPEG-2, MPEG-4 AVC e VC-1 são parcialmente compartilhadas. Ex900 na Figura 58A mostra um exemplo da configuração. Por exemplo, o método de decodificar imagem em movimento descrito em cada uma das modalidades e o método de decodificar imagem em movimento que conforma com o MPEG-4 AVC têm, parcialmente em comum, os detalhes de processamento, tal como codificação de entropia, quantização inversa, filtragem de retiro de blocos e previsão compensada por movimento. Os detalhes de processamento a serem compartilhados incluem o uso de uma unidade de processamento de decodificação ex902 que conforma com MPEG-4 AVC. Em contraste, uma unidade de processamento de decodificação dedicada ex901 provavelmente é usada por outro processamento que é singular a um aspecto da presente invenção e não conforma com MPEG-4 AVC. Uma vez que a presente invenção é caracterizada 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 outra forma, a unidade de decodificação provavelmente é com-partilhada por um da quantização inversa, filtragem de retiro de blocos e compensação de movimento, ou todo o processamento. A unidade de pro-cessamento de decodificação para implantar o método de decodificar imagem em movimento descrita em cada das modalidades pode ser comparti- lhada para o processamento ser compartilhada e uma unidade de processamento de decodificação pode ser usada para processamento singular àquele da MPEG-4 AVC.
[00367] Adicionalmente, o ex1000 na Figura 58B mostra outro exemplo em que o processamento é parcialmente compartilhado. Esse exemplo usa a configuração que inclui uma unidade de processamento de decodificação dedicada ex1001 que suporta o processamento singular para um aspecto da presente invenção, uma unidade de processamento de deco- dificação dedicada, ex1002 que suporta o processamento singular para outro e uma unidade de processamento de decodificação ex1003 que suporta o processamento a ser compartilhado entre o método de decodificar imagem em movimento de acordo com o aspecto da presente invenção e o método de decodificar imagem em movimento convencional. Aqui, as unidades de processamento de decodificação 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 os capazes de implantar processamento geral. Adicionalmente, a configuração da presente modalidade pode ser implantada pelo LSI ex500.
[00368] Como tal, reduzir a escala do circuito de um LSI e reduzir o custo é possível compartilhando-se a unidade de processamento de decodi- ficação para o processamento a ser compartilhado entre o método de decodificar imagem em movimento de acordo com o aspecto da presente invenção e o método de decodificar imagem em movimento em conformidade com o padrão convencional.
[APLICABILIDADE INDUSTRIAL]
[00369] A presente invenção pode ser aplicada a métodos de codificação de imagem, métodos de decodificação de imagem, aparelhos de co- dificação de imagem e aparelhos de decodificação de imagem. A presente invenção também é aplicável a aparelhos de exibição de informações de alta resolução ou aparelhos de imageamento tais como conjuntos de televisão, gravadores de vídeo digitais, sistemas de navegação dentro de veículos, telefones portáteis, câmeras digitais e camcorders digitais, cada um dos quais inclui um aparelho de codificação de imagem. [LISTAGEM DE NÚMEROS DE REFERÊNCIA] 100 aparelho de codificação de imagem 101 unidade de divisão de bloco de codificação 102 unidade de subtração 103 unidade de transformada 104 unidade de codificação de comprimento de variável 105 , 202 unidade de transformada inversa 106 , 203 unidade de adição 107 , 205 memória de quadro 108 unidade de previsão 121 imagem de entrada 122 bloco de codificação 123 , 126, 223 bloco diferencial 124 , 222 coeficiente de frequência (coeficiente) 125 , 221 fluxo codificado 127 , 224 bloco decodificado 128 , 225, 226 imagem decodificada 129 bloco de previsão 131 unidade de divisão de bloco de coeficiente 132 unidade de codificação significant_flag 133 , 133A unidade de codificação de nível 134 unidade de codificação sign_flag 141 unidade de definição greater1_flag 142 unidade de definição greater2_flag 143 , 143A unidade de definição restante 144 , 248 unidade de atualização de parâmetro de binarização 145 , 145A, 241, 241A unidade de seleção de conjunto de contexto 146 , 243 memória greater1_flag 147 , 242 unidade de seleção de contexto greater1_flag 148 , 244 memória de contexto greater1_flag 149 , 245 unidade de seleção de contexto greater2_flag 150 , 246 memória de contexto greater2_flag 151 unidade de codificação aritmética 152 unidade de binarização restante 153 unidade de determinação de prefixo e sufixo 154 unidade de saída de binário de sufixo 155 unidade de saída de binário de prefixo 160, 260 unidade de alternação greater_flag 200 aparelho de decodificação de imagem 201 unidade de decodificação de comprimento de variável 204 unidade de combinação de bloco decodificado 231 unidade de decodificação significant_flag 232, 232A unidade de decodificação de nível 233 unidade de decodificação sign_flag 234 unidade de decodificação de coeficiente 247, 247A unidade de decodificação aritmética 249 unidade de valor múltiplo restante 250 unidade de decodificação de prefixo 251 unidade de decodificação de sufixo 252 unidade de combinação de prefixo e sufixo.

Claims (6)

1. Método de codificação de imagem que usa codificação aritmética, CARACTERIZADO pelo fato de que compreende: selecionar (S141, S181-S183) um conjunto de contexto a ser utilizado na codificação aritmética em um bloco de coeficiente alvo obtido pela divisão de um bloco de codificação alvo definindo o conjunto de contexto como 0 se o bloco de coeficiente alvo tiver a frequência mais baixa no bloco de codificação alvo, caso contrário, definindo o conjunto de contexto como 2; determinar (S153) um primeiro contexto a ser utilizado na codificação aritmética em um primeiro indicador que indica se um valor absoluto de um coeficiente alvo no bloco de coeficiente alvo é ou não maior que 1; realizar codificação aritmética (S143, S154) no primeiro indicador uti-lizando o primeiro contexto; determinar (S163) um segundo contexto a ser utilizado na codificação aritmética em um segundo indicador que indica se o valor absoluto é ou não maior que 2; realizar codificação aritmética (S144, S164) no segundo indicador utilizando o segundo contexto, em que o primeiro contexto e o segundo contexto são determinados com base no conjunto de contexto; binarizar (S173) um restante de acordo com uma tabela de transformada designada por um parâmetro de binarização de dentre uma pluralidade de tabelas de transformada, quando o valor absoluto do coeficiente alvo é maior que 2, em que o restante indica um valor obtido pela subtração de 3 do valor absoluto; atualizar (S175, S254) o parâmetro de binarização incrementando em um o valor do parâmetro de binarização, quando o valor absoluto do coeficiente alvo é maior que um valor limite, em que o valor limite é três vezes um valor que é igual a 1 deslocado à esquerda pelo valor do parâmetro de binarização; e incrementar (S185) em um o conjunto de contexto quando o parâmetro de binarização do bloco de coeficiente imediatamente anterior que foi codificado imediatamente antes do bloco de coeficiente alvo é maior que zero.
2. Método de codificação de imagem, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que um valor máximo do parâmetro de binarização é quatro.
3. Método de decodificação de imagem que usa decodificação aritmética, CARACTERIZADO pelo fato de que compreende: selecionar (S341, S181-S183) um conjunto de contexto a ser utilizado na codificação aritmética em um bloco de coeficiente alvo obtido pela divisão de um bloco de codificação alvo definindo o conjunto de contexto como 0 se o bloco de coeficiente alvo tiver a frequência mais baixa no bloco de codificação alvo, caso contrário, definindo o conjunto de contexto como 2; determinar (S352) um primeiro contexto a ser utilizado na decodifi- cação aritmética em um primeiro indicador que indica se um valor absoluto do coeficiente alvo em um bloco de coeficiente alvo é ou não maior que 1; realizar decodificação aritmética (S343, S353) no primeiro indicador utilizando o primeiro contexto; determinar (S362) um segundo contexto a ser utilizado na decodifi- cação aritmética em um segundo indicador que indica se o valor absoluto é ou não maior que 2; realizar decodificação aritmética (S344, S363) no segundo indicador (greater2_flag) utilizando o segundo contexto, em que o primeiro contexto e o segundo contexto são determinados com base no conjunto de contexto; transformar (S373) um restante em um valor múltiplo de acordo com uma tabela de transformada designada por um parâmetro de binarização de dentre uma pluralidade de tabelas de transformada, quando o valor absoluto do coeficiente alvo é maior que 2, em que o restante indica um valor obtido pela subtração de 3 do valor absoluto; atualizar (S374, S254) o parâmetro de binarização incrementando em um o valor do parâmetro de binarização, quando o valor absoluto do coe- fici-ente alvo for maior que um valor limite, em que o valor limite é três vezes um valor que é igual a 1 deslocado à esquerda pelo valor do parâmetro de binarização; e incrementar (S185) em um o conjunto de contexto quando o parâmetro de binarização do bloco de coeficiente imediatamente anterior que foi codificado imediatamente antes do bloco de coeficiente alvo é maior que zero.
4. Método de decodificação de imagem, de acordo com a reivindicação 3, CARACTERIZADO pelo fato de que um valor máximo do parâmetro de binarização é quatro.
5. Aparelho de codificação de imagem que realiza codificação aritmética, caracterizado pelo fato de que compreende: circuitos de controle; e armazenamento acessível a partir dos circuitos de controle, em que os circuitos de controle são adaptados para executar um método de codificação de imagem conforme definido na reivindicação 1 ou 2.
6. Aparelho de decodificação de imagem que realiza decodificação aritmética, caracterizado pelo fato de que compreende: circuitos de controle; e armazenamento acessível a partir dos circuitos de controle, em que os circuitos de controle são adaptados para executar um método de decodificação de imagem conforme definido na reivindicação 3 ou 4.
BR112014031146-3A 2012-06-22 2013-06-07 Método de codificação de imagem que usa codificação aritmética, método de decodificação de imagem usa decodificação aritmética, aparelho de codificação de imagem e aparelho de decodificação de imagem BR112014031146B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201261663121P 2012-06-22 2012-06-22
US61/663,121 2012-06-22
PCT/JP2013/003607 WO2013190796A1 (ja) 2012-06-22 2013-06-07 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置及び画像符号化復号装置

Publications (3)

Publication Number Publication Date
BR112014031146A2 BR112014031146A2 (pt) 2017-08-08
BR112014031146A8 BR112014031146A8 (pt) 2018-02-06
BR112014031146B1 true BR112014031146B1 (pt) 2023-05-16

Family

ID=49768411

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112014031146-3A BR112014031146B1 (pt) 2012-06-22 2013-06-07 Método de codificação de imagem que usa codificação aritmética, método de decodificação de imagem usa decodificação aritmética, aparelho de codificação de imagem e aparelho de decodificação de imagem

Country Status (15)

Country Link
US (4) US9264712B2 (pt)
EP (1) EP2866444B1 (pt)
JP (5) JP5603525B2 (pt)
KR (2) KR102073399B1 (pt)
CN (4) CN107749992B (pt)
AR (2) AR091537A1 (pt)
AU (3) AU2013278760B2 (pt)
BR (1) BR112014031146B1 (pt)
CA (1) CA2875196C (pt)
MX (1) MX339710B (pt)
MY (2) MY167469A (pt)
RU (2) RU2680749C2 (pt)
SG (2) SG11201408361TA (pt)
TW (1) TWI565297B (pt)
WO (1) WO2013190796A1 (pt)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9036710B2 (en) * 2012-03-08 2015-05-19 Blackberry Limited Unified transform coefficient encoding and decoding
JP5603525B2 (ja) * 2012-06-22 2014-10-08 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 画像符号化方法、及び画像符号化装置
KR20150116840A (ko) * 2013-01-02 2015-10-16 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
US11388441B2 (en) * 2014-03-18 2022-07-12 Qualcomm Incorporated Derivation of SPS temporal ID nesting information for multi-layer bitstreams
JP6797755B2 (ja) * 2017-06-20 2020-12-09 キヤノン株式会社 撮像装置、撮像装置の処理方法およびプログラム
KR102448535B1 (ko) * 2018-09-20 2022-09-28 엘지전자 주식회사 변환 계수 레벨 코딩 방법 및 그 장치
TW202046729A (zh) * 2019-04-24 2020-12-16 美商松下電器(美國)知識產權公司 編碼裝置、解碼裝置、編碼方法、及解碼方法
WO2021010678A1 (ko) * 2019-07-12 2021-01-21 엘지전자 주식회사 변환에 기반한 영상 코딩 방법 및 그 장치
CN114554899A (zh) 2019-10-18 2022-05-27 耐克创新有限合伙公司 具有绳锁的易进入的鞋类物品
CN111464750B (zh) * 2020-05-14 2021-07-23 中央民族大学 一种图像处理装置及智能车
CN112995671B (zh) * 2021-02-21 2022-10-28 腾讯科技(深圳)有限公司 视频编解码方法、装置、计算机可读介质及电子设备
WO2023166888A1 (ja) * 2022-03-03 2023-09-07 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 復号方法、符号化方法、復号装置及び符号化装置

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3807342B2 (ja) * 2002-04-25 2006-08-09 三菱電機株式会社 デジタル信号符号化装置、デジタル信号復号装置、デジタル信号算術符号化方法、およびデジタル信号算術復号方法
JP2003319391A (ja) * 2002-04-26 2003-11-07 Sony Corp 符号化装置および方法、復号装置および方法、記録媒体、並びにプログラム
JP3959039B2 (ja) * 2003-02-28 2007-08-15 株式会社エヌ・ティ・ティ・ドコモ 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法、及び画像復号プログラム
US7379608B2 (en) * 2003-12-04 2008-05-27 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung, E.V. Arithmetic coding for transforming video and picture data units
KR100612015B1 (ko) * 2004-07-22 2006-08-11 삼성전자주식회사 컨텍스트 적응형 이진 산술 부호화 방법 및 그 장치
JPWO2006013854A1 (ja) * 2004-08-05 2008-05-01 松下電器産業株式会社 画像復号化装置および画像符号化装置
CN102892001A (zh) * 2004-11-09 2013-01-23 松下电器产业株式会社 转换成中间格式的两步算术解码
KR100763196B1 (ko) * 2005-10-19 2007-10-04 삼성전자주식회사 어떤 계층의 플래그를 계층간의 연관성을 이용하여부호화하는 방법, 상기 부호화된 플래그를 복호화하는방법, 및 장치
CN100423582C (zh) * 2005-11-03 2008-10-01 浙江大学 一种用于将待编码数据进行二进制化编码的方法和装置
JP2007142637A (ja) * 2005-11-16 2007-06-07 Matsushita Electric Ind Co Ltd 画像情報符号化装置
CN101106721A (zh) * 2006-07-10 2008-01-16 华为技术有限公司 一种编解码装置及相关编码器
US7365659B1 (en) * 2006-12-06 2008-04-29 Silicon Image Gmbh Method of context adaptive binary arithmetic coding and coding apparatus using the same
KR101375668B1 (ko) * 2008-03-17 2014-03-18 삼성전자주식회사 변환 계수의 부호화, 복호화 방법 및 장치
JP2009231914A (ja) * 2008-03-19 2009-10-08 Sony Corp 復号装置、復号処理方法およびプログラム
JP2012023612A (ja) 2010-07-15 2012-02-02 Canon Inc 撮像装置及び撮像方法
JP2012023613A (ja) * 2010-07-15 2012-02-02 Mitsubishi Electric Corp 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
CN101951516B (zh) * 2010-09-25 2013-06-05 清华大学 基于h.264/avc中cabac的并行编码实现电路及编码方法
US20130003858A1 (en) * 2011-06-30 2013-01-03 Vivienne Sze Simplified Context Selection For Entropy Coding of Transform Coefficient Syntax Elements
CN102256125B (zh) * 2011-07-14 2013-06-05 北京工业大学 面向高效视频编码hevc基于上下文的自适应算数编码方法
LT3145197T (lt) * 2011-10-31 2018-08-27 Samsung Electronics Co., Ltd. Transformacijos koeficiento lygmens entropinio dekodavimo konteksto modelio nustatymo būdas
US9088296B2 (en) * 2011-12-29 2015-07-21 Microsoft Technology Licensing, Llc Variable length coding and decoding using counters
US9036710B2 (en) * 2012-03-08 2015-05-19 Blackberry Limited Unified transform coefficient encoding and decoding
CN104350753B (zh) * 2012-06-01 2019-07-09 威勒斯媒体国际有限公司 算术解码装置、图像解码装置、算术编码装置以及图像编码装置
JP5603525B2 (ja) * 2012-06-22 2014-10-08 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 画像符号化方法、及び画像符号化装置
RU2720534C2 (ru) * 2012-06-29 2020-04-30 ДжиИ Видео Компрешн, ЭлЭлСи Концепция потока видеоданных

Also Published As

Publication number Publication date
MY167469A (en) 2018-08-29
JP5603525B2 (ja) 2014-10-08
MX2014014880A (es) 2015-03-09
US10687084B2 (en) 2020-06-16
SG11201408361TA (en) 2015-01-29
RU2014150558A (ru) 2016-08-10
EP2866444A4 (en) 2015-06-24
JP6145750B2 (ja) 2017-06-14
KR20150024835A (ko) 2015-03-09
US20180167642A1 (en) 2018-06-14
RU2680749C2 (ru) 2019-02-26
TW201412125A (zh) 2014-03-16
CN107749992A (zh) 2018-03-02
CN107734344A (zh) 2018-02-23
JP6633136B2 (ja) 2020-01-22
AU2018282369A1 (en) 2019-01-17
EP2866444A1 (en) 2015-04-29
AU2017200514B2 (en) 2018-12-06
RU2017136413A (ru) 2019-02-08
JP6352488B2 (ja) 2018-07-04
JP2020043610A (ja) 2020-03-19
US20130343463A1 (en) 2013-12-26
JP2017147745A (ja) 2017-08-24
JPWO2013190796A1 (ja) 2016-02-08
US9596487B2 (en) 2017-03-14
CN107734344B (zh) 2021-06-29
US20170094318A1 (en) 2017-03-30
CA2875196A1 (en) 2013-12-27
RU2017136413A3 (pt) 2019-02-08
JP7003100B2 (ja) 2022-01-20
CN107749992B (zh) 2020-06-09
WO2013190796A1 (ja) 2013-12-27
TWI565297B (zh) 2017-01-01
RU2635895C2 (ru) 2017-11-16
JP2014225905A (ja) 2014-12-04
KR102073399B1 (ko) 2020-02-05
CN104350747B (zh) 2017-11-21
US20160050444A1 (en) 2016-02-18
EP2866444B1 (en) 2022-04-13
AU2018282369B2 (en) 2020-09-10
BR112014031146A8 (pt) 2018-02-06
SG10201505418UA (en) 2015-08-28
CN107809645B (zh) 2021-12-03
AU2013278760B2 (en) 2016-10-27
BR112014031146A2 (pt) 2017-08-08
MX339710B (es) 2016-06-07
US9264712B2 (en) 2016-02-16
AU2017200514A1 (en) 2017-02-16
MY193123A (en) 2022-09-26
CN104350747A (zh) 2015-02-11
RU2019103984A (ru) 2020-08-13
JP2018157590A (ja) 2018-10-04
CA2875196C (en) 2023-03-14
KR20200013804A (ko) 2020-02-07
US9924202B2 (en) 2018-03-20
AR113715A2 (es) 2020-06-03
AR091537A1 (es) 2015-02-11
AU2013278760A1 (en) 2014-12-11
CN107809645A (zh) 2018-03-16
KR102163398B1 (ko) 2020-10-12

Similar Documents

Publication Publication Date Title
JP7003100B2 (ja) 画像復号方法及び画像復号装置
ES2834902T3 (es) Método de decodificación de imagen, y dispositivo de decodificación de imágenes
BR112013031624B1 (pt) Método de decodificação de imagem, método de codificação de imagem, dispositivo de decodificação de imagem, dispositivo de codificação de imagem, e dispositivo de codificação/decodificação de imagem
BR112013021018B1 (pt) Método e aparelho de decodificação de imagem
BR122022013246B1 (pt) Aparelho de decodificação para decodificar um parâmetro de controle para controlar decodificação de uma imagem, e aparelho de codificação para codificar um parâmetro de controle para controlar codificação de uma imagem
JPWO2014038153A1 (ja) 画像復号化方法および画像復号化装置
BR112013032418B1 (pt) Método e aparelho de codificação de imagem em movimento, método e aparelho de decodificação de imagem em movimento, e aparelho de codificação e decodificação de imagem em movimento
BR112013030469B1 (pt) Método de decodificação de imagem, método de codificação de imagem, aparelho de decodificação de imagem, aparelho de codificação de imagem, e aparelho de codificação e decodificação de imagem
BR112013031212B1 (pt) Método de decodificação de imagem e aparelho de decodificação de imagem
BR112013003437B1 (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
BR112013018850B1 (pt) Método e aparelho de decodificação de imagem, e método e aparelho de codificação de imagem
BR112012021600B1 (pt) método de filtragem de desbloqueio para filtrar uma pluralidade de blocos incluídos em uma imagem, método e aparelho de codificação para codificar uma imagem
RU2808610C1 (ru) Способ кодирования изображения, способ декодирования изображения, устройство кодирования изображения, устройство декодирования изображения и устройство кодирования и декодирования изображения
RU2815733C1 (ru) Способ кодирования изображения, способ декодирования изображения, устройство кодирования изображения, устройство декодирования изображения и устройство кодирования и декодирования изображения
RU2794163C2 (ru) Способ кодирования изображения, способ декодирования изображения, устройство кодирования изображения, устройство декодирования изображения и устройство кодирования и декодирования изображения
JP2016146556A (ja) 画像符号化方法、画像復号方法、画像符号化装置及び画像復号装置
BR112013033365B1 (pt) Método de codificação de imagem e método de decodificação de imagem

Legal Events

Date Code Title Description
B25A Requested transfer of rights approved

Owner name: SUN PATENT TRUST (US)

B25A Requested transfer of rights approved

Owner name: VELOS MEDIA INTERNATIONAL LIMITED (IE)

B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]
B06U Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]
B15K Others concerning applications: alteration of classification

Free format text: A CLASSIFICACAO ANTERIOR ERA: H04N 7/00

Ipc: H04N 19/176 (2014.01), H04N 19/18 (2014.01), H04N

B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]
B25A Requested transfer of rights approved

Owner name: SUN PATENT TRUST (US)

B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 07/06/2013, OBSERVADAS AS CONDICOES LEGAIS