BR122015021375A2 - método para decodificar um vídeo - Google Patents
método para decodificar um vídeo Download PDFInfo
- Publication number
- BR122015021375A2 BR122015021375A2 BR122015021375A BR122015021375A BR122015021375A2 BR 122015021375 A2 BR122015021375 A2 BR 122015021375A2 BR 122015021375 A BR122015021375 A BR 122015021375A BR 122015021375 A BR122015021375 A BR 122015021375A BR 122015021375 A2 BR122015021375 A2 BR 122015021375A2
- Authority
- BR
- Brazil
- Prior art keywords
- unit
- encoding
- coding
- size
- depth
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 153
- 238000009795 derivation Methods 0.000 claims 1
- 230000009466 transformation Effects 0.000 description 183
- 238000005192 partition Methods 0.000 description 151
- 238000010586 diagram Methods 0.000 description 28
- 239000000284 extract Substances 0.000 description 6
- 238000001914 filtration Methods 0.000 description 5
- 238000013139 quantization Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 230000007423 decrease Effects 0.000 description 2
- 230000002194 synthesizing effect Effects 0.000 description 2
- 230000009897 systematic effect Effects 0.000 description 2
- 230000001131 transforming effect Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/91—Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/186—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/59—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/1883—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit relating to sub-band structure, e.g. hierarchical level, directional tree, e.g. low-high [LH], high-low [HL], high-high [HH]
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
método para decodificar um vídeo trata-se de um método para decodificar um vídeo através de decodificação de símbolos, o método incluindo analisar símbolos de blocos de imagem, a partir de um fluxo de bits recebido; classificar um símbolo atual em uma sequência de bits do prefixo e uma sequência de bits do sufixo, com base em um valor limite determinado, de acordo com um tamanho de um bloco atual; realizar decodificação aritmética, usando um método de decodificação aritmética determinado para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo; e realizar binarização inversa, usando um método de binarização determinado para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo.
Description
MÉTODO PARA DECODIFICAR UM VÍDEO
Dividido do Pedido n° BR 11 2013 033708 7 de 27.06.2012
Área Técnica [001] A presente invenção refere-se à codificação de video e decodificação de vídeo envolvendo, respectivamente, codificação aritmética e decodificação aritmética.
Fundamentos da Arte [002] Como hardware para reprodução e armazenamento de conteúdo de vídeo de alta resolução ou alta qualidade está sendo desenvolvido e fornecido, a necessidade de um codec de vídeo para codificar ou decodificar com eficiência o conteúdo de vídeo de alta resolução ou de alta qualidade está aumentando. Em um codec de vídeo convencional, um vídeo é codificado, de acordo com um método para codificar limitado, com base em um macrobloco tendo um tamanho predeterminado.
[003] Dados de imagem de um domínio espacial são convertidos em coeficientes de uma região de frequência, usando um método de conversão de frequência. Um codec de vídeo codifica coeficientes de frequência em unidades de blocos, dividindo uma imagem em uma pluralidade de blocos tendo um tamanho predeterminado, e executando conversão por transformação discreta de cosseno (DCT) para operação rápida da conversão de frequência. Os coeficientes da região de frequência são facilmente comprimidos, em comparação com os dados de imagem do domínio espacial. Em particular, um valor de pixel de uma imagem no domínio espacial é representado como um erro de previsão e, portanto, se a conversão de frequência for executada no erro de previsão, uma grande quantidade de dados pode ser convertida para 0. Um codec
2/82 de video converte dados, que são repetida e continuamente gerados em pequenos dados para reduzir uma quantidade de dados.
Divulgação
Problema Técnico [004] A presente invenção fornece um método e aparelho para
realizar | codificação aritmética e decodificação aritmética de | um | ||
vídeo, ao classificar um | símbolo em sequências | de bits | do | |
prefixo e | sufixo. | |||
Solução Técnica | ||||
[005] | De acordo com um | aspecto da presente | invenção, | é |
fornecido | um método para | decodificar um vídeo | através | de |
decodificação de símbolos, o método incluindo: analisar símbolos de blocos de imagem, a partir de um fluxo de bits recebido; classificar um símbolo atual em uma sequência de bits do prefixo e uma sequência de bits do sufixo com base em um valor limite determinado de acordo com um tamanho de um bloco atual; realizar decodificação aritmética, usando um método de decodificação aritmética determinado para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo; realizar binarização inversa, usando um método de binarização determinado para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo; e restaurar os blocos de imagem, realizando previsão e transformação inversa no bloco atual, usando o símbolo atual restaurado através da decodificação aritmética e a binarização inversa.
Efeitos Vantajosos [006] A eficiência de um processo de codificação/ decodificação de símbolos é melhorada, através da realização de
3/82 um método de binarização tendo uma quantidade relativamente pequena de custo de operação sobre a região de sufixo ou a sequência de bits do sufixo, ou por omissão da modelagem de contexto durante a codificação/ decodificação aritmética baseada em contexto para codificação/ decodificação de símbolos.
Descrição dos Desenhos [007] A Fig. 1 é um diagrama de blocos de um aparelho para codificar video, de acordo com uma forma de realização da presente invenção;
[008] a Fig. 2 é um diagrama de blocos de um aparelho para decodificar vídeo, de acordo com uma forma de realização da presente invenção;
[009] as Figuras 3 e 4 são diagramas para descrever codificação aritmética, classificando um símbolo em uma sequência de bits do prefixo e uma sequência de bits do sufixo, de acordo com um valor limite predeterminado, de acordo com uma forma de realização da presente invenção;
[0010] a Fig. 5 é um fluxograma para descrever um método para codificar vídeo, de acordo com uma forma de realização da presente invenção;
[0011] a Fig. 6 é um fluxograma para descrever um método para decodificar video, de acordo com uma forma de realização da presente invenção;
[0012] a Fig. 7 é um diagrama de blocos de um aparelho para codificar vídeo com base em unidades de codificação com uma estrutura em árvore, de acordo com uma forma de realização da presente invenção;
[0013] a Fig. 8 é um diagrama de blocos de um aparelho para decodificar vídeo com base em uma unidade de codificação tendo
4/82 uma estrutura em árvore, de acordo com uma forma de realização da presente invenção;
[0014] a Fig. 9 é um diagrama conceituai de unidades de codificação, de acordo com uma forma de realização da presente invenção;
[0015] a Fig. 10 é um diagrama de blocos de um codificador de imagens com base em unidades de codificação, de acordo com uma forma de realização da presente invenção;
[0016] a Fig. 11 é um diagrama de blocos de um decodifiçador de imagens com base em unidades de codificação, de acordo com uma forma de realização da presente invenção;
[0017] a Fig. 12 é um diagrama mostrando unidades de codificação, de acordo com profundidades e partições, de acordo com uma forma de realização da presente invenção;
[0018] a Fig. 13 é um diagrama para descrever uma relação entre uma unidade de codificação e unidades de transformação, de acordo com uma forma de realização da presente invenção;
[0019] a Fig. 14 é um diagrama para descrever informações de codificação de unidades de codificação, de acordo com profundidades, de acordo com uma forma de realização da presente invenção;
[0020] a Fig. 15 é um diagrama mostrando unidades de codificação, de acordo com profundidades, de acordo com uma forma de realização da presente invenção;
[0021] as Figs. 16 a 18 são diagramas para descrever uma relação entre unidades de codificação, unidades de previsão, e unidades de transformação, de acordo com uma forma de realização da presente invenção; e
5/82 [0022] a Fig. 19 é um diagrama para descrever uma relação entre uma unidade de codificação, uma unidade de previsão, e uma unidade de transformação, de acordo com informações do modo de codificação da Tabela
Melhor Modo [0023]
De acordo com um aspecto da presente invenção, fornecido um método para decodificar um vídeo através de decodificação de símbolos, o método incluindo: analisar símbolos de blocos de imagem, a partir de um fluxo de bits recebido;
classificar um símbolo atual em uma sequência de bits do prefixo e uma sequência de bits do sufixo com base em um valor limite determinado, de acordo com um tamanho de um bloco atual;
realizar decodificação aritmética usando um método de decodificação aritmética determinado para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo; realizar binarização inversa usando um método de binarização determinado para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo; e restaurar os blocos de imagem, realizando previsão e transformação inversa no bloco atual, usando o símbolo atual restaurado através da decodificação aritmética e a binarização inversa.
[0024] A realização da binarização inversa pode incluir restauração de uma região de prefixo e uma região de sufixo do símbolo, realizando binarização inversa, de acordo com o método de binarização determinado para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo.
[0025] A realização de decodificação aritmética pode incluir: realizar decodificação aritmética para determinar a modelagem de contexto na sequência de bits do prefixo, de acordo com posições
6/82 de bits; e realizar decodificação aritmética para omitir a modelagem de contexto na sequência de bits do sufixo em um modo bypass.
[0026] A realização da decodificação aritmética pode incluir: realizar a decodificação aritmética, usando um contexto de um índice predeterminado, anteriormente alocado para as posições dos bits da sequência de bits do prefixo, quando o símbolo for a informação de posição do coeficiente final de um coeficiente de transformação.
[0027] O símbolo atual pode incluir pelo menos um dentre o modo de previsão intra e informações de posição do coeficiente final do bloco atual.
[0028] 0 método de binarização pode ainda incluir pelo menos um item selecionado do grupo constituído por binarização unária, binarização unária truncada, binarização golomb exponencial, e binarização de comprimento fixo.
[0029] De acordo com outro aspecto da presente invenção, é fornecido um método para codificar um vídeo através de codificação de símbolos, o método incluindo: gerar símbolos por meio de previsão e transformação em blocos de imagem; classificar um símbolo atual em uma região de prefixo e uma região de sufixo, com base em um valor limite determinado, de acordo com um tamanho de um bloco atual; gerar uma sequência de bits do prefixo e uma sequência de bits do sufixo, usando um método de binarização determinado para cada uma dentre a região de prefixo e a região de sufixo; realizar codificação de símbolos usando um método de codificação aritmética determinado para cada uma dentre a sequência de bits do prefixo e a
7/82 sequência de bits do sufixo; e emitir sequências de bits gerada através da codificação de símbolos na forma de fluxos de bits. [0030] A realização da codificação de símbolos pode incluir:
executar a codificação de símbolos na sequência de bits do prefixo, usando um método de codificação aritmética para executar modelagem de contexto, de acordo com posições de bits; e executar a codificação de símbolos na sequência de bits do sufixo, usando um método de codificação aritmética para omitir a modelagem de contexto em um modo bypass.
[0031] A realização da codificação de símbolos pode incluir: executar a codificação aritmética, usando um contexto de um índice predeterminado, que foi anteriormente alocado para as posições dos bits da sequência de bits do prefixo, quando o símbolo for a informação de posição do coeficiente final de um coeficiente de transformação.
[0032] O símbolo atual pode incluir pelo menos um dentre um modo de previsão intra e informações de posição do coeficiente final do bloco atual.
[0033] O método de binarização pode ainda incluir pelo menos um item selecionado do grupo constituído por binarização unária, binarização unária truncada, binarização golomb exponencial, e binarização de comprimento fixo.
[0034] De acordo com outro aspecto da presente invenção, é fornecido um aparelho para decodificar um vídeo através da decodificação de símbolos, o aparelho incluindo: um analisador para analisar símbolos de blocos de imagem, a partir de um fluxo de bits recebido; um decodifiçador de símbolos para classificar um símbolo atual em um sequência de bits do prefixo e uma sequência de bits do sufixo, com base em um valor limite
8/82 determinado, de acordo com um tamanho de um bloco atual, e realizar decodificação aritmética usando um método de decodificação aritmética determinado para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo e, em seguida, executar binarização inversa usando um método de binarização determinado para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo; e uma unidade restauradora de imagens para restaurar os blocos de imagem, realizando previsão e transformação inversa no bloco atual, usando o símbolo atual restaurado através da decodificação aritmética e da binarização inversa.
[0035] De acordo com outro aspecto da presente invenção, é fornecido um aparelho para codificar um vídeo através da codificação de símbolos, o aparelho incluindo: um codificador de imagens para gerar símbolos por meio de previsão e transformação em blocos de imagem; um codificador de símbolos para classificar um símbolo atual em uma região de prefixo e uma região de sufixo, com base em um valor limite determinado, de acordo com um tamanho de um bloco atual, e gerar uma sequência de bits do prefixo e uma sequência de bits do sufixo usando um método de binarização determinado para cada uma dentre a região de prefixo e a região de sufixo e, em seguida, executar codificação de símbolos usando um método de codificação aritmética, determinado para cada uma da sequência de bits do prefixo e da sequência de bits do sufixo; e uma unidade de saída do fluxo de bits para emitir sequências de bits geradas através da codificação de símbolos na forma de fluxos de bits.
[0036] De acordo com outro aspecto da presente invenção, é fornecida uma mídia de gravação legível por computador tendo, a
9/82 ela incorporado, um programa de computador para executar o método para decodificar um video, através da decodificação de símbolos.
[0037] De acordo com outro aspecto da presente invenção, é fornecida uma mídia de gravação legível por computador tendo, a ela incorporado, um programa de computador para executar o método para codificar um vídeo, através da codificação de símbolos.
Modo para a Invenção [0038] Em seguida, a presente invenção será descrita mais plenamente tendo como referência os desenhos anexos, em que são mostradas formas de realização exemplares da invenção. Expressões, tais como pelo menos um dos, quando precedendo uma lista de elementos, modificam a lista inteira de elementos, e não modificam os elementos individuais da lista.
[0039] Um método para codificar vídeo envolvendo codificação aritmética, e um método para decodificar vídeo envolvendo decodificação aritmética, de acordo com uma forma de realização da presente invenção, serão descritos com referência às Figs. 1 a 6. Além disso, um método para codificar vídeo envolvendo codificação aritmética, e um método para decodificar vídeo envolvendo decodificação aritmética, com base em unidades de codificação com uma estrutura em árvore, de acordo com uma forma de realização da presente invenção, serão descritos com referência às Figs. 7 a 19. A seguir, uma 'imagem' pode se referir a uma imagem estática de um vídeo ou um filme, ou seja, um vídeo em si.
[0040] A seguir, um método para codificar vídeo e um método para decodificar vídeo, de acordo com uma forma de realização da
10/82 presente invenção, baseado em um método de previsão em um modo de previsão intra, serão descritos com referência às Figs. 1 a 6.
[0041] A Fig. 1 é um diagrama de blocos de um aparelho para codificar vídeo 10, de acordo com uma forma de realização da presente invenção.
[0042] O aparelho para codificar video 10 pode codificar dados de vídeo de um domínio espacial, através de previsão intra/ previsão inter, transformação, quantização, e codificação de símbolos. Adiante, operações que ocorrem, quando o aparelho para codificar vídeo 10 codifica símbolos gerados pela previsão
intra/ previsão inter, | transformação, e | quantização através | de | ||
codificação | aritmética, | serão | descritas em | detalhes. | |
[0043] 0 | aparelho | para | codificar | video 10 inclui | um |
codificador | de imagens | 12, um | codificador | de símbolos 14, e | uma |
unidade de saída do fluxo de bits 16.
[0044] O aparelho para codificar vídeo 10 pode dividir dados de imagem de um vídeo em uma pluralidade de unidades de dados, e codificar os dados de imagem, de acordo com as unidades de dados. A unidade de dados pode ter um formato quadrado ou um formato retangular, ou pode ter um formato geométrico arbitrário, mas a unidade de dados não está limitada a uma unidade de dados tendo um tamanho predeterminado. De acordo com o método para codificar vídeo baseado nas unidades de codificação tendo uma estrutura em árvore, uma unidade de dados pode ser uma unidade de codificação máxima, uma unidade de codificação, uma unidade de previsão, uma unidade de transformação, ou similares. Um exemplo, onde um método de codificação e decodificação aritmética, de acordo com uma forma
11/82 de realização da presente invenção, é usado no método para codificar/ decodificar vídeo, baseado nas unidades de codificação tendo uma estrutura em árvore, será descrito com referência às Figs. 7 a 19.
[0045] Para conveniência de descrição, um método para codificar vídeo para um 'bloco', que é um tipo de unidade de dados, será descrito em detalhes. No entanto, o método para codificar vídeo, de acordo com várias formas de realização da presente invenção, não é limitado ao método para codificar vídeo para o 'bloco', e pode ser utilizado para várias unidades de dados.
[0046] O codificador de imagens 12 executa operações, tais como previsão intra/ previsão inter, transformação, ou quantização, em blocos de imagem para gerar símbolos.
[0047] O codificador de símbolos 14 classifica um símbolo atual em uma região de prefixo e uma região de sufixo, com base em um valor limite determinado, de acordo com um tamanho de um bloco atual, para codificar o símbolo atual dentre os símbolos gerados de acordo com os blocos. O codificador de símbolos 14 pode determinar o valor limite para classificar o símbolo atual na região de prefixo e na região de sufixo, baseado em pelo menos uma dentre a largura e a altura do bloco atual.
[0048] 0 codificador de símbolos 14 pode determinar um método para codificar símbolos para cada uma dentre a região de prefixo e a região de sufixo, e codificar cada uma dentre a região de prefixo e a região de sufixo, de acordo com o método para codificar símbolos.
[0049] A codificação de símbolos pode ser dividida em um processo de binarização, para transformar um símbolo em
12/82 sequências de bits e um processo de codificação aritmética para executar codificação aritmética baseada em contexto nas sequências de bits. 0 codificador de símbolos 14 pode determinar um método de binarização para cada uma dentre a região de prefixo e a região de sufixo do símbolo, e realizar binarização em cada uma dentre a região de prefixo e a região de sufixo, de acordo com o método de binarização. Uma sequência de bits do prefixo e uma sequência de bits do sufixo podem ser geradas, respectivamente, a partir da região de prefixo e da região de sufixo.
[0050]
Alternativamente, o codificador de símbolos 14 pode determinar um método de codificação aritmética para cada uma da sequência de bits do símbolo, e executar prefixo e da sequência de bits do sufixo do codificação aritmética em cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo, de acordo com o método de codificação aritmética.
[0051]
Além disso, o codificador de símbolos pode determinar um método de binarização para cada uma dentre a região de prefixo e a região de sufixo do símbolo, e realizar binarização em cada uma dentre a região de prefixo e a região de sufixo, de acordo com o método de binarização, e pode determinar um método de codificação aritmética para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo do símbolo, e executar codificação aritmética na sequência de bits do prefixo e na sequência de bits do sufixo, de acordo com o método de codificação aritmética.
[0052] O codificador de símbolos 14, de acordo com uma forma de realização da presente invenção, pode determinar um método de binarização para cada uma dentre a região de prefixo e a região
13/82 de sufixo. Os métodos de binarização determinados para a região de prefixo e a região de sufixo podem ser diferentes uns dos outros.
[0053] O codificador de símbolos 14 pode determinar um método de codificação aritmética para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo. Os métodos de codificação aritmética, determinados para a sequência de bits do prefixo e a sequência de bits do sufixo, podem ser diferentes uns dos outros.
[0054] Nesse sentido, o codificador de símbolos 14 pode binarizar a região de prefixo e a região de sufixo, usando diferentes métodos somente em um processo de binarização de um processo para decodificar símbolos, ou pode codificar a sequência de bits do prefixo e a sequência de bits do sufixo, usando diferentes métodos somente em um processo de codificação aritmética. Além disso, o codificador de símbolos 14 pode codificar a região de prefixo (sequência de bits do prefixo) e a região de sufixo (sequência de bits do sufixo) usando diferentes métodos em ambos os processos de codificação, de binarização e aritmética.
[0055] O método de binarização selecionado pode ser pelo menos um dentre binarização geral, binarização unária, binarização unária truncada, binarização golomb exponencial, e métodos de binarização de comprimento fixo.
[0056] O codificador de símbolos 14 pode executar codificação de símbolos, através da realização de codificação aritmética para realizar modelagem de contexto na sequência de bits do prefixo, de acordo com posições de bits, e da realização de
14/82 codificação aritmética para omitir modelagem de contexto na sequência de bits do sufixo em um modo bypass.
[0057] O codificador de símbolos 14 pode executar individualmente a codificação de símbolos na região de prefixo e na região de sufixo com relação a símbolos, incluindo pelo menos um dentre o modo de previsão intra e informações de posição do coeficiente final de um coeficiente de transformação.
[0058] Além disso, o codificador de símbolos 14 pode executar a codificação aritmética, por meio de um contexto de um índice predeterminado, anteriormente alocado para a sequência de bits do prefixo. Por exemplo, o codificador de símbolos 14 pode executar codificação aritmética usando um contexto de um índice predeterminado, anteriormente alocado a cada posição dos bits da sequência de bits do prefixo, quando o símbolo for a informação de posição do coeficiente final do coeficiente de transformação.
[0059] A unidade de saída do fluxo de bits 16 emite sequências de bits geradas através da codificação de símbolos na forma de fluxos de bits.
[0060] O aparelho para codificar vídeo 10 pode executar codificação aritmética em símbolos de blocos de um vídeo e emitir os símbolos.
[0061] O aparelho para codificar vídeo 10 pode incluir um processador central (não mostrado) para controlar todos dentre o codificador de imagens 12, o codificador de símbolos 14, e a unidade de saída do fluxo de bits 16. Alternativamente, o codificador de imagens 12, o codificador de símbolos 14, e a unidade de saída do fluxo de bits 16 podem ser operados por processadores (não mostrados), respectivamente neles instalados, e todo o aparelho para codificar vídeo 10 pode ser operado, por
15/82 operação sistemática dos processadores (não mostrados). Alternativamente, o codificador de imagens 12, o codificador de símbolos 14, e a unidade de saída do fluxo de bits 16 podem ser controlados por um processador externo (não mostrado) do aparelho para codificar vídeos 10.
[0062] O aparelho para codificar vídeo 10 pode incluir pelo menos uma unidade de armazenamento de dados (não mostrada) para armazenar dados, que são inseridos/ emitidos no/para o codificador de imagens 12, o codificador de símbolos 14, e a unidade de saída do fluxo de bits 16. O aparelho para codificar vídeo 10 pode incluir um controlador de memória (não mostrado) , para controlar a entrada/ saída de dados armazenados na unidade de armazenamento de dados (não mostrada).
[0063] O aparelho para codificar vídeo 10 é operado, por ser ligado a um processador de codificação de vídeo interno ou a um processador de codificação de vídeo externo, para realizar codificação de vídeo incluindo previsão e transformação, emitindo, assim, um resultado da codificação de vídeo. O processador de codificação de vídeo interno do aparelho para codificar vídeo 10 pode executar uma operação básica de codificação de vídeo, não só usando um processador separado, mas também incluindo um módulo de processamento de codificação de vídeo no aparelho para codificar vídeo 10, um aparelho de operação central, ou um aparelho operacional gráfico.
[0064] A Fig. 2 é um diagrama de blocos de um aparelho para decodificar vídeo 20, de acordo com uma forma de realização da presente invenção.
[0065] O aparelho para decodificar vídeo 20 pode decodificar os dados de vídeo codificados pelo aparelho para codificar vídeo
16/82
10, através de análise, quantização inversa, decodificação de símbolos, transformação inversa, previsão intra/ compensação de movimento etc., e restaurar os dados de vídeo perto dos dados de vídeo originais do domínio espacial. A seguir, será descrito um processo, em que o aparelho para decodificar vídeo 20 executa a decodificação aritmética nos símbolos analisados de um fluxo de bits, para restaurar os símbolos.
[0066] O aparelho para decodificar vídeo 20 inclui um analisador 22, um decodificador de símbolos 24, e uma unidade restauradora de imagem 26.
[0067] O aparelho para decodificar vídeo 20 pode receber um fluxo de bits, incluindo dados codificados de um vídeo. O analisador 22 pode analisar símbolos de blocos de imagem do fluxo de bits.
[0068] 0 analisador 22 pode analisar os símbolos codificados, através de codificação aritmética em relação aos blocos do vídeo, a partir do fluxo de bits.
[0069] O analisador 22 pode analisar símbolos, incluindo um modo de previsão intra do bloco do vídeo, informações de posição do coeficiente final de um coeficiente de transformação etc., a partir do fluxo de bits recebido.
[0070] O decodificador de símbolos 24 determina um valor limite, para classificar um símbolo atual em uma sequência de bits do prefixo e uma sequência de bits do sufixo. O decodificador de símbolos 24 pode determinar o valor limite, para classificar o símbolo atual para a sequência de bits do prefixo e a sequência de bits do sufixo, com base em um tamanho de um bloco atual, ou seja, pelo menos, uma dentre a largura e a altura do bloco atual. 0 decodificador de símbolos 24 determina
17/82 um método de decodificação aritmética para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo. O decodificador de símbolos 24 executa decodificação de símbolos, usando o método de decodificação aritmética determinado para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo.
[0071] Métodos de decodificação aritmética determinados para a sequência de bits do prefixo e a sequência de bits do sufixo podem ser diferentes entre si.
[0072] O decodificador de símbolos 24 pode determinar um método de binarização para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo do símbolo. Nesse sentido, o decodificador de símbolos 24 pode realizar binarização inversa na sequência de bits do prefixo do símbolo, usando o método de binarização. Os métodos de binarização determinados para a sequência de bits do prefixo e a sequência de bits do sufixo podem ser diferentes entre si.
[0073] Além disso, o decodificador de símbolos 24 pode realizar decodificação aritmética usando a método de decodificação aritmética determinado para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo do símbolo, e pode realizar binarização inversa usando o método de binarização determinado para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo, geradas através da decodificação aritmética.
[0074] Nesse sentido, o decodificador de símbolos 24 pode decodificar a sequência de bits do prefixo e a sequência de bits do sufixo usando diferentes métodos somente em um processo de decodificação aritmética de um processo para decodificar
18/82 símbolos, ou pode executar binarização inversa usando diferentes métodos somente em um processo de binarização inversa. Além disso, o decodifiçador de símbolos 24 pode decodificar a sequência de bits do prefixo e a sequência de bits do sufixo usando diferentes métodos em ambos os processos de decodificação aritmética e de binarização inversa.
[0075] O método de binarização determinado para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo do símbolo pode não ser apenas um método de binarização geral, mas também pode ser pelo menos um dos métodos de binarização unária, binarização unária truncada, binarização golomb exponencial, e de binarização com comprimento fixo.
[0076] O decodifiçador de símbolos 24 pode realizar decodificação aritmética para realizar modelagem de contexto na sequência de bits do prefixo, de acordo com posições de bits. 0 decodif içador de símbolos 24 pode usar um método de decodificação aritmética para omitir modelagem de contexto na sequência de bits do sufixo em um modo bypass. Nesse sentido, o decodifiçador de símbolos 24 pode realizar decodificação de símbolos, através da decodificação aritmética executada em cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo do símbolo.
[0077] 0 decodifiçador de símbolos 24 pode realizar a decodificação aritmética na sequência de bits do prefixo e na sequência de bits do sufixo de símbolos, incluindo pelo menos um dentre o modo de previsão intra e informações de posição do coeficiente final de um coeficiente de transformação.
[0078] 0 decodifiçador de símbolos 24 pode realizar decodificação aritmética usando um contexto de um índice
19/82 predeterminado, anteriormente alocado de acordo com as posições dos bits da sequência de bits do prefixo, quando o símbolo for uma informação sobre a posição final do coeficiente de transformação.
[0079] A unidade restauradora de imagens 26 pode restaurar uma região de prefixo e uma região de sufixo de um símbolo, realizando a decodificação aritmética e a binarização inversa em cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo. A unidade restauradora de imagens 26 pode restaurar o símbolo, sintetizando a região de prefixo e a região de sufixo do símbolo.
[0080] A unidade restauradora de imagens 26 realiza previsão e transformação inversa no bloco atual, usando o símbolo atual restaurado através da decodificação aritmética e da binarização inversa. A unidade restauradora de imagens 26 pode restaurar blocos de imagem, através da realização de operações, tais como quantização inversa, transformação inversa, ou previsão intra/ compensação de movimento, usando os símbolos correspondentes para cada um dos blocos de imagem.
[0081] O aparelho para decodificar vídeo 20, segundo uma forma de realização da presente invenção, pode incluir um processador central (não mostrado) para controlar todos dentre o analisador 22, o decodifiçador de símbolos 24, e a unidade restauradora de imagens 26. Alternativamente, o analisador 22, o decodifiçador de símbolos 24, e a unidade restauradora de imagens 26 podem ser operados por processadores (não mostrados) respectivamente neles instalados, e todo o aparelho para decodificar vídeo 20 pode ser operado, por operação sistemática dos processadores (não mostrados). Alternativamente, o analisador 22, o decodifiçador
20/82 de símbolos 24, e a unidade restauradora de imagens 26 podem ser controlados por um processador externo (não mostrado) do aparelho para decodificar vídeo 20.
[0082] 0 aparelho para decodificar vídeo 20 pode incluir pelo menos uma unidade de armazenamento de dados (não mostrada) para armazenar dados que são inseridos/ emitidos no(a)/pelo(a) analisador 22, decodifiçador de símbolos 24, e unidade restauradora de imagens 26. O aparelho para decodificar vídeo 20 pode incluir um controlador de memória (não mostrado) para controlar a entrada/saída de dados armazenados na unidade de armazenamento de dados (não mostrada).
[0083] O aparelho para decodificar vídeo 20 é operado, por ser ligado a um processador interno para decodificar vídeo ou um processador externo para decodificar vídeo, para realizar decodificação de vídeo incluindo transformação inversa. O processador interno para decodificar vídeo do aparelho para decodificar vídeo 20 pode executar uma operação de decodificação básica de vídeo, não só usando um processador separado, mas também incluindo um módulo de processamento para decodificar vídeo no aparelho para decodificar vídeo 20, um aparelho de operação central, ou um aparelho operacional gráfico.
[0084] Codificação aritmética binária adaptativa baseada em contexto (CABAC) é amplamente utilizada como um método de codificação e decodificação aritmética, com base em um contexto para codificação e decodificação de símbolos. De acordo com a codificação/ decodificação aritmética baseada em contexto, cada bit de uma sequência de bits do símbolo pode ser um binário de um contexto, e a posição de cada bit pode ser mapeada em um índice de binários. Um comprimento da sequência de bits, ou
21/82 seja, um comprimento do binário, pode variar de acordo com um tamanho de um valor de símbolo. Modelagem de contexto para determinar um contexto de um símbolo é necessária para executar a codificação/ decodificação aritmética baseada em contexto. 0 contexto é renovado, de acordo com posições de bits da sequência de bits do símbolo, ou seja, em cada índice de binários, para executar a modelagem de contexto e, portanto, um processo complicado de operação é necessário.
[0085] De acordo com o aparelho para codificar vídeo 10 e o aparelho para decodificar vídeo 20, descritos com referência às Figuras 1 e 2, o símbolo é classificado na região de prefixo e na região de sufixo, e um método de binarização relativamente simples pode ser utilizado para a região de sufixo, em comparação com a região de prefixo. Além disso, a codificação/ decodificação aritmética através da modelagem de contexto é realizada na sequência de bits do prefixo, e a modelagem de contexto não é executada na sequência de bits do sufixo e, assim, um custo de um valor de operação para a codificação/ decodificação aritmética baseada em contexto pode ser reduzido. Nesse sentido, o aparelho para codificar vídeo 10 e o aparelho para decodificar vídeo 20 podem melhorar a eficiência de um processo de codificação/ decodificação de símbolos, realizando um método de binarização tendo um valor relativamente pequeno de custo de operação na região de sufixo ou na sequência de bits do sufixo, ou omitindo a modelagem de contexto durante a codificação/ decodificação aritmética baseada em contexto para codificação e decodificação de símbolos.
[0086] A seguir, várias formas de realização para codificação aritmética, que podem ser realizadas pelo aparelho para
22/82 codificar video 10 e o aparelho para decodificar video 20, serão descritas.
[0087] As Figuras 3 e 4 são diagramas para descrever codificação aritmética, classificando um símbolo em uma sequência de bits do prefixo e uma sequência de bits do sufixo, de acordo com um valor limite predeterminado, de acordo com uma forma de realização da presente invenção.
[0088] Referindo-se à Fig. 3, um processo para executar codificação de símbolos, de acordo com uma forma de realização da presente invenção, sobre informações de posição do coeficiente final de um símbolo, será descrito em detalhes. As informações de posição do coeficiente final são um símbolo que representa uma localização de um coeficiente final, diferente de 0, entre coeficientes de transformação de um bloco. Uma vez que um tamanho do bloco é definido como uma largura e uma altura, as informações de posição do coeficiente final podem ser representadas por coordenadas bidimensionais, ou seja, uma coordenada x em uma direção da largura e um coordenada y na direção da altura. Para conveniência de descrição, a Fig. 3 mostra um caso, onde codificação de símbolos é realizada sobre a coordenada x na direção da largura entre as informações de posição do coeficiente final, quando a largura de um bloco for w.
[0089] Um intervalo da coordenada x das informações de posição do coeficiente final está dentro da largura do bloco e, assim, coordenada x das informações de posição do coeficiente final igual a ou maior que 0, e igual ou inferior a w-1. Para codificação aritmética do símbolo, o símbolo pode ser classificado em uma região de prefixo e uma região de sufixo,
23/82 com base em um enésimo valor limite predeterminado. Assim, a codificação aritmética pode ser executada na sequência de bits do prefixo, na qual a região de prefixo é binarizada, com base no contexto determinado através da modelagem de contexto. Além disso, a codificação aritmética pode ser realizada na sequência de bits de sufixo, na qual a região de sufixo é binarizada, em um modo bypass, em que a modelagem de contexto é omitida.
[0090] Aqui, o enésimo valor limite para classificar o símbolo na região de prefixo e a região de sufixo pode ser determinado com base na largura w do bloco. Por exemplo, o enésimo valor limite pode ser determinado como sendo (w/2)-l, para dividir a sequência de bits por dois (fórmula 1 de determinação do valor limite). Alternativamente, a largura w do bloco geralmente tem um quadrado de 2 e, portanto, o enésimo valor limite pode ser determinado, baseado num valor de registro da largura w (fórmula 2 de determinação do valor limite).
<fórmula 1 de determinação do valor limite> enésimo = (w/2) - 1;
<fórmula 2 de determinação do valor limite> enésimo = (log2w « 1) - 1;
[0091] Na Fig. 3, de acordo com a fórmula 1 de determinação do valor limite, quando a largura w do bloco for 8, a fórmula fornece o enésimo valor limite = (8/2) - 1=3. Assim, na coordenada x das informações de posição do coeficiente final, 3 pode ser classificado como a região de prefixo, e o restante dos valores diferentes de 3 pode ser classificado como a região de sufixo. A região de prefixo e a região de sufixo podem ser binarizadas, de acordo com o método de binarização determinado para cada uma dentre a região de prefixo e a região de sufixo.
24/82 [0092] Quando uma coordenada χ N das informações de posição coeficiente final atual for 5, a coordenada x das informações de posição do coeficiente final pode ser classificada como N = enésimo +2=3+2. Em outras palavras, na coordenada x das informações de posição do coeficiente final, 3 pode ser classificada como região de prefixo, e 2 pode ser classificada como região de sufixo.
[0093] De acordo com uma forma de realização da presente invenção, a região de prefixo e a região de sufixo podem ser binarizadas, de acordo com diferentes métodos de binarização determinados para a região de prefixo e a região de sufixo, respectivamente. Por exemplo, a região de prefixo pode ser binarizada, de acordo com um método de binarização unária, e a região de sufixo pode ser binarizada, de acordo com um método de binarização geral.
[0094] Nesse sentido, após 3 ser binarizada, de acordo com o método de binarização unária, uma sequência de bits do prefixo 32 '0001' pode ser gerada a partir da região de prefixo, e após ser binarizada de acordo com o método de binarização geral, uma sequência de bits do sufixo 34 '010' pode ser gerada a partir da região de sufixo.
[0095] Além disso, codificação aritmética baseada em contexto pode ser realizada na sequência de bits do prefixo 32 '0001', através da modelagem de contexto. Assim, um índice de contexto pode ser determinado para cada binário da sequência de bits do prefixo 32 '0001'.
[0096] Codificação aritmética pode ser executada na sequência de bits do sufixo 34 '010', em um modo by-pass, sem executar modelagem de contexto. A codificação aritmética pode ser
25/82 realizada, sem executar a modelagem de contexto, supondo que, no modo by-pass, cada binário tenha um contexto de um estado de probabilidade igual, ou seja, o contexto de 50%.
[0097] Por conseguinte, a codificação aritmética baseada em contexto pode ser realizada em cada uma dentre a sequência de bits do prefixo 32 '0001' e a sequência de bits do sufixo 34 '010', para completar a codificação de símbolos em relação à coordenada χ N das informações de posição do coeficiente final atual.
[0098] Embora a forma de realização, em que a codificação de símbolos é realizada através da binarização e a codificação aritmética, tenha sido descrita, decodificação de símbolos pode ser realizada da mesma maneira. Em outras palavras, uma sequência de bits do símbolo analisada pode ser classificada em uma sequência de bits do prefixo e uma sequência de bits do sufixo, com base na largura w do bloco, a decodificação aritmética pode ser realizada na sequência de bits do prefixo 32 através da modelagem de contexto, e a decodificação aritmética pode ser realizada na sequência de bits do sufixo 34 sem executar a modelagem de contexto. Binarização inversa pode ser executada na sequência de bits do prefixo 32 após a decodificação aritmética, usando o método de binarização unária,
e a região | de prefixo pode | ser restaurada. Além | disso, | a | ||
binarização | inversa | pode ser executada na | sequência | de bits | do | |
sufixo 34 após a | codificação | aritmética, | usando o | método | de | |
binarização | geral | e, assim, | a região | de sufixo | pode | ser |
restaurada. O símbolo pode ser restaurado, por sintetizar a região de prefixo e a região de sufixo restauradas.
26/82 [0099] Embora a forma de realização, em que o método de binarização unária é usado para a região de prefixo (sequência de bits do prefixo) , e o método de binarização geral é usado para a região de sufixo (sequência de bits do sufixo), tenha sido descrita, o método de binarização não é por este aspecto limitado. Como alternativa, um método de binarização unária truncada pode ser utilizado para a região de prefixo (sequência de bits do prefixo), e um método de binarização de comprimento fixo pode ser usado para a região de sufixo (sequência de bits do sufixo).
[00100] Embora seja descrita apenas a forma de realização em relação às informações de posição do coeficiente final no sentido da largura do bloco, uma forma de realização em relação às informações de posição do coeficiente final no sentido da altura do bloco pode ser também utilizada.
[00101] Além disso, não há nenhuma necessidade de realizar modelagem de contexto na sequência de bits do sufixo, para executar a codificação aritmética usando um contexto tendo uma probabilidade fixa, mas há necessidade de realizar modelagem de contexto variável na sequência de bits do prefixo. A modelagem de contexto a ser executada na sequência de bits do prefixo pode ser determinada, de acordo com um tamanho do bloco.
<Tabela de Mapeamento de Contexto
Tamanho do bloco | N°. de índice de binários do contexto selecionado |
4x4 | 0, 1, 2, 2 |
8x8 | 3, 4, 5, 5 |
16 x 16 | 6, 7, 8, 9, 10, 10, 11, 11 |
32 x 32 | 12, 13, 14, 15, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18 |
27/82 [00102] Na tabela de mapeamento de contexto, um local de cada número corresponde ao índice de binários da sequência de bits do prefixo, e o número indica um índice de contexto a ser usado em um local do bit correspondente. Para conveniência de descrição, por exemplo, em um bloco de 4 x 4, a sequência de bits do prefixo é composta por um total de quatro bits, e quando k é 0, 1, 2 e 3, de acordo com a tabela de mapeamento de contexto, os índices de contexto 0, 1, e 2 são determinados por um k-ésimo índice de binários e, assim, codificação aritmética com base na modelagem de contexto pode ser realizada.
[00103] A Fig. 4 mostra uma forma de realização, em que um modo de previsão intra inclui um modo intra de luminância e um modo intra de crominância, indicando uma direção de previsão intra de um bloco de luminância e um bloco de crominância, respectivamente. Quando o modo de previsão intra for 6, uma sequência de bits do símbolo 40 '0000001' é gerada, de acordo com um método de binarização unária. Neste caso, codificação aritmética pode ser executada em um primeiro bit 41 '0' da sequência de bits do símbolo 40 do modo de previsão intra, através de modelagem de contexto, e codificação aritmética pode ser executada no restante dos bits 45 '000001' da sequência de bits de símbolo 40, em um modo bypass. Em outras palavras, o primeiro bit 41 da sequência de bits do símbolo 40 corresponde a uma sequência de bits do prefixo, e o restante dos bits 45 da sequência de bits do símbolo 40 corresponde a uma sequência de bits do sufixo.
[00104] A quantidade de bits da sequência de bits do símbolo 40 codificada em codificação aritmética como a sequência de bits do prefixo, através da modelagem de contexto, e a quantidade de
28/82 bits da sequência de bits do símbolo 40 codificada em codificação aritmética como a sequência de bits do sufixo no modo by-pass, podem ser determinadas, de acordo com um tamanho de um bloco ou um tamanho de um conjunto de blocos. Por exemplo, com relação a um bloco de 64 x 64, codificação aritmética pode ser executada somente em um primeiro bit dentre sequências de bits de um modo de previsão intra, e codificação aritmética pode ser executada no restante dos bits em um modo bypass. Com relação a blocos tendo outros tamanhos, codificação aritmética pode ser executada em todos os bits das sequências de bits do modo previsão intra no modo bypass.
[00105] Em geral, informações sobre bits perto de um bit menos significativo (LSB) são relativamente menos importantes do que informações sobre bits perto um bit mais significativo (MSB) de uma sequência de bits do símbolo. Nesse sentido, o aparelho para codificar vídeo 10 e o aparelho para decodificar vídeo 20 podem selecionar um método de codificação aritmética, de acordo com um método de binarização tendo uma precisão relativamente alta em relação à sequência de bits do prefixo perto do MSB, mesmo que haja um custo de um valor de operação, e pode selecionar uma método de codificação aritmética, de acordo com um método de binarização capaz de realizar uma simples operação com relação à sequência de bits do sufixo perto do LSB. Além disso, o aparelho para codificar vídeo 10 e o aparelho para decodificar vídeo 20 podem selecionar um método de codificação aritmética, com base na modelagem de contexto com relação à modelagem de contexto, e podem selecionar um método de codificação aritmética não realizando modelagem de contexto, no que diz respeito a sequência de bits do sufixo perto do LSB.
29/82 [00106] Na descrição acima, a forma de realização, na qual binarização é executada na sequência de bits do prefixo e na sequência de bits do sufixo das informações de posição do coeficiente final do coeficiente de transformação usando diferentes métodos, foi descrita disso, a forma de realização, na com referência à Fig. 3. Além qual codificação aritmética é realizada na sequência de bits do prefixo e na sequência de bits do sufixo dentre as sequências de bits do modo de previsão intra usando diferentes métodos, foi descrita com referência à Fig. 4.
[00107] No entanto, de acordo com várias formas de realização da presente invenção, um método para codificar símbolos, no qual métodos de binarização/ codificação aritmética individualmente determinados para a sequência de bits do prefixo e a sequência de bits do sufixo são utilizados, ou diferentes métodos de binarização/ codificação aritmética são utilizados, não é limitado às formas de realização descritas com referência às Figuras 3 e 4, e vários métodos de binarização/ codificação aritmética podem ser utilizados para vários símbolos.
[00108] A Fig. 5 é um fluxograma para descrever um método para codificar vídeo, de acordo com uma forma de realização da presente invenção.
[00109] Na operação 51, símbolos são gerados por meio de previsão e transformação em blocos de imagem.
[00110] Nas operações 53, um símbolo atual é classificado em uma região de prefixo e uma região de sufixo, com base em um valor limite determinado, de acordo com um tamanho de um bloco atual.
[00111] Na operação 55, uma sequência de bits do prefixo e uma sequência de bits do sufixo são geradas, usando métodos de
30/82 binarização individualmente determinados para a região de prefixo e a região de sufixo do símbolo.
[00112] Na operação 57, codificação de símbolos é realizada por meio de métodos de codificação aritmética, individualmente determinados para a sequência de bits do prefixo e a sequência de bits do sufixo.
[00113] Na operação 59, sequências de bits geradas através da codificação de símbolos são emitidas sob a forma de fluxos de bits.
[00114] Na operação 57, a codificação de símbolos pode ser realizada na sequência de bits do prefixo, usando um método de codificação aritmética para realizar modelagem de contexto, de acordo com posições de bits, e a codificação de símbolos pode ser também realizada na sequência de bits do sufixo usando um método de codificação aritmética, para omitir a modelagem de contexto em um modo bypass.
[00115] Na operação 57, quando o símbolo for a informação de posição do coeficiente final de um coeficiente de transformação, a codificação aritmética pode ser realizada usando um contexto de um índice predeterminado, anteriormente alocado para os posições dos bits da sequência de bits do prefixo.
[00116] A Fig. 6 é um fluxograma para descrever um método para decodificar vídeo, de acordo com uma forma de realização da presente invenção.
[00117] Na operação 61, símbolos de blocos de imagem são analisados a partir de um fluxo de bits recebido.
[00118] Na operação 63, um símbolo atual é classificado em uma sequência de bits do prefixo e uma sequência de bits do sufixo,
31/82 com base em um valor limite determinado de acordo com um tamanho de um bloco atual.
[00119] Na operação 65, decodificação aritmética é realizada usando um método de decodificação aritmética determinado para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo do símbolo atual.
[00120] Na operação 67, após a decodificação aritmética, binarização inversa é realizada usando um método de binarização determinado para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo.
[00121] A região de prefixo e a região de sufixo do símbolo podem ser restauradas, por realizar a binarização inversa usando o método de binarização determinado para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo.
[00122] Na operação 69, os blocos de imagem podem ser restaurados, por realizar previsão e transformação inversa no bloco atual, usando o símbolo atual restaurado através da decodificação aritmética e a binarização inversa.
[00123] Na operação 65, a decodificação aritmética para determinar a modelagem de contexto, de acordo com as posições dos bits, pode ser realizada na sequência de bits do prefixo, e a decodificação aritmética para omitir a modelagem de contexto pode ser realizada na sequência de bits do sufixo em um modo bypass.
[00124] Na operação 65, quando o símbolo for a informação de posição do coeficiente final do coeficiente de transformação, a decodificação aritmética pode ser realizada, usando o contexto do índice predeterminado, anteriormente alocado para as posições dos bits da sequência de bits do prefixo.
32/82 [00125] No aparelho para codificar vídeo 10, de acordo com uma forma de realização da presente invenção, e no aparelho para decodificar vídeo 20, de acordo com outra forma de realização da presente invenção, blocos, em que dados de vídeo são divididos, são divididos em unidades de codificação tendo uma estrutura em árvore, unidades de previsão são usadas para executar previsão intra nas unidades de codificação, e uma unidade de transformação é usada para transformar as unidades de codificação.
[00126] A seguir, serão descritos um método e aparelho para codificar um vídeo e um método e aparelho para decodificar um vídeo, baseado em uma unidade de codificação tendo uma estrutura em árvore, uma unidade de previsão, e uma unidade de transformação.
[00127] A Fig. 7 é um diagrama de blocos de um aparelho para codificar vídeo 100, baseado em unidades de codificação tendo uma estrutura em árvore, de acordo com uma forma de realização da presente invenção.
[00128] O aparelho para codificar vídeo 100, envolvendo previsão de vídeo com base na unidade de codificação tendo uma estrutura em árvore, inclui um divisor da unidade de codificação máxima 110, um determinador da unidade de codificação 120, e uma unidade de saída 130. Para conveniência de descrição, o aparelho para codificar vídeo 100 envolvendo previsão de vídeo, com base na unidade de codificação tendo uma estrutura em árvore, será referido como um aparelho para codificar vídeo 100.
[00129] 0 divisor da unidade de codificação máxima 110 pode dividir um quadro atual, com base em uma unidade de codificação máxima para o quadro atual de uma imagem. Se o quadro atual for
33/82 maior que a unidade de codificação máxima, dados de imagem do quadro atual podem ser divididos em pelo menos uma unidade de codificação máxima. A unidade de codificação máxima, de acordo com uma forma de realização da presente invenção, pode ser uma unidade de dados tendo um tamanho de 32x32, 64x64, 128x128,
256x256 etc., em que um formato da unidade de dados é um quadrado com uma largura e comprimento em quadrados de 2. Os dados de imagem podem ser emitidos para o determinador da unidade de codificação 120, de acordo com pelo menos uma unidade de codificação máxima.
[00130] Uma unidade de codificação, de acordo com uma forma de realização da presente invenção, pode ser caracterizada por um tamanho máximo e uma profundidade. A profundidade denota um número de vezes que a unidade de codificação é dividida espacialmente, a partir da unidade de codificação máxima, e conforme a profundidade aumenta, unidades de codificação mais profundas, de acordo com profundidades, podem ser divididas a partir da unidade de codificação máxima em uma unidade de codificação mínima. Uma profundidade da unidade de codificação máxima é uma profundidade mais superior, e uma profundidade da unidade de codificação mínima é uma profundidade mais inferior. Uma vez que um tamanho de uma unidade de codificação correspondente a cada profundidade diminui, à medida que a profundidade da unidade de codificação máxima aumenta, uma unidade de codificação correspondente a uma profundidade superior pode incluir uma pluralidade de unidades de codificação correspondentes a menores profundidades.
[00131] Conforme acima descrito, os dados de imagem do quadro atual são divididos nas unidades de codificação máxima, de
34/82 acordo com um tamanho máximo da unidade de codificação, e cada uma das unidades de codificação máxima pode incluir unidades de codificação mais profundas, que são divididas de acordo com profundidades. Uma vez que a unidade de codificação máxima, de acordo com uma forma de realização da presente invenção, é dividida de acordo com profundidades, os dados de imagem de um domínio espacial incluído na unidade de codificação máxima podem ser classificados hierarquicamente, de acordo com profundidades.
[00132] Uma profundidade máxima e um tamanho máximo de uma unidade de codificação, que limitam o número total de vezes que uma altura e uma largura da unidade de codificação máxima são divididas hierarquicamente, podem ser predeterminados.
[00133] O determinador da unidade de codificação 120 codifica pelo menos uma região de divisão obtida, dividindo-se uma região da unidade de codificação máxima, de acordo com profundidades, e determina uma profundidade para emitir dados de imagem finalmente codificados, de acordo com pelo menos uma região de divisão. Em outras palavras, o determinador da unidade de codificação 120 determina uma profundidade codificada, por codificação dos dados de imagem nas unidades de codificação mais profundas, de acordo com profundidades, de acordo com a unidade de codificação máxima do quadro atual, e seleção de uma profundidade tendo o menor erro de codificação. A profundidade codificada, determinada, e os dados de imagem codificados, de acordo com a profundidade codificada, determinada, são emitidos para a unidade de saída 130.
[00134] Os dados de imagem na unidade de codificação máxima são codificados, com base nas unidades de codificação mais profundas correspondentes a pelo menos uma profundidade igual ou inferior
35/82 à profundidade máxima, e resultados de codificação dos dados de imagem são comparados, com base em cada uma das unidades de codificação mais profundas. Uma profundidade tendo o menor erro de codificação pode ser selecionada, depois de comparar os erros de codificação das unidades de codificação mais profundas. Pelo menos uma profundidade codificada pode ser selecionada para cada unidade de codificação máxima.
[00135] 0 tamanho da unidade de codificação máxima é dividido, quando uma unidade de codificação é dividida hierarquicamente, de acordo com profundidades, e quando o número de unidades de codificação aumenta. Além disso, mesmo se unidades de codificação corresponderem a uma mesma profundidade em uma unidade de codificação máxima, é determinada a necessidade de dividir cada uma das unidades de codificação correspondentes à mesma profundidade em uma menor profundidade, medindo-se um erro de codificação dos dados de imagem de cada unidade da codificação, em separado. Nesse sentido, mesmo quando dados de imagem estiverem incluídos em uma unidade de codificação máxima, os dados de imagem são divididos em regiões, de acordo com as profundidades, e os erros de codificação podem diferir, de acordo com regiões na unidade de codificação máxima e, assim, as profundidades codificadas podem diferir, de acordo com as regiões nos dados de imagem. Assim, uma ou mais profundidades codificadas podem ser determinadas em uma unidade de codificação máxima, e os dados de imagem da unidade de codificação máxima podem ser divididos, de acordo com unidades de codificação de pelo menos uma profundidade codificada.
[00136] Nesse sentido, o determinador da unidade de codificação 120 pode determinar unidades de codificação tendo uma estrutura
36/82 em árvore incluída na unidade de codificação máxima. As 'unidades de codificação tendo uma estrutura em árvore', de acordo com uma forma de realização da presente invenção, incluem unidades de codificação que correspondem a uma profundidade determinada como sendo a profundidade codificada, dentre todas as unidades de codificação mais profundas incluídas na unidade de codificação máxima.
Uma unidade de codificação de uma profundidade codificada pode ser determinada hierarquicamente, de acordo com profundidades na mesma região da unidade de codificação máxima, e pode ser determinada de forma independente em diferentes regiões. Da mesma forma, uma profundidade codificada em uma região atual pode ser determinada independentemente, através de uma profundidade codificada em outra região.
[00137] Uma profundidade máxima, de acordo com uma forma de realização da presente invenção, é um índice relacionado ao número de vezes que a divisão é realizada, de uma unidade de codificação máxima em uma unidade de codificação mínima. Uma primeira profundidade máxima, de acordo com uma forma de realização da presente invenção, pode denotar o número total de vezes que a divisão é realizada, da unidade de codificação máxima na unidade de codificação mínima. Uma segunda profundidade máxima, de acordo com uma forma de realização da presente invenção, pode denotar o número total de níveis de profundidade, da unidade de codificação máxima para a unidade de codificação mínima. Por exemplo, quando uma profundidade da unidade de codificação máxima for 0, uma profundidade de uma unidade de codificação, em que a unidade de codificação máxima é dividida uma vez, pode ser definida como 1, e uma profundidade
37/82 de uma unidade de codificação, em que a unidade de codificação máxima é dividida duas vezes, pode ser definida como 2. Aqui, se a unidade de codificação mínima for uma unidade de codificação, em que a unidade de codificação máxima é dividida quatro vezes, 5 níveis de profundidade de profundidades 0, 1, 2, 3 e 4 existem e, portanto, a primeira profundidade máxima pode ser definida como 4, e a segunda profundidade máxima pode ser definida como 5.
[00138] Codificação por previsão e transformação podem ser realizadas, de acordo com a unidade de codificação máxima. A codificação por previsão e a transformação são também executadas, com base nas unidades de codificação mais profundas, de acordo com uma profundidade igual, ou profundidades inferiores, à profundidade máxima, de acordo com a unidade de codificação máxima.
[00139] Uma vez que o número de unidades de codificação mais profundas aumenta, sempre que a unidade de codificação máxima é dividida, de acordo com profundidades, codificação, incluindo a codificação por previsão e a transformação, é mais profundas as unidades de codificação realizada em todas geradas, quando a profundidade aumenta. Para conveniência de descrição, a codificação por previsão a transformação serão agora descritas, com base em uma unidade de codificação de uma profundidade atual, em uma unidade de codificação máxima.
[00140] O aparelho para codificar vídeo 100 pode selecionar, de forma variável, um tamanho ou formato de uma unidade de dados para codificar os dados de imagem. Para codificar os dados de imagem, operações, tais como codificação por previsão, transformação, e codificação por entropia, são executadas e,
38/82 neste momento, a mesma unidade de dados pode ser usada para todas as operações, ou diferentes unidades de dados podem ser utilizadas para cada operação.
[00141] Por exemplo, o aparelho para codificar video 100 pode selecionar, não só uma unidade de codificação para codificar os dados de imagem, mas também uma unidade de dados diferente da unidade de codificação, a fim de realizar a codificação por previsão nos dados de imagem, na unidade de codificação.
[00142] Para realizar codificação por previsão na unidade de codificação máxima, a codificação por previsão pode ser realizada com base em uma unidade de codificação correspondente a uma profundidade codificada, ou seja, com base em uma unidade de codificação, que não é mais dividida nas unidades de codificação correspondentes a uma menor profundidade. A seguir, a unidade de codificação, que não é mais dividida e se torna uma unidade básica para codificação por previsão, será agora referida como uma 'unidade de previsão'. Uma partição obtida, dividindo-se a unidade de previsão, pode incluir uma unidade de previsão ou uma unidade de dados obtida, dividindo-se pelo menos uma dentre a altura e a largura da unidade de previsão. Uma partição é uma unidade de dados tendo um formato, em que a unidade de previsão da unidade de codificação é dividida, e a unidade de previsão pode ser uma partição tendo o mesmo tamanho que a unidade de codificação.
[00143] Por exemplo, quando uma unidade de codificação de 2Nx2N (onde N é um número inteiro positivo) não é mais dividida e se torna uma unidade de previsão de 2Nx2N, e um tamanho de uma partição pode ser 2Nx2N, 2NxN, Nx2N ou NxN. Exemplos de um tipo de partição incluem partições simétricas, que são obtidas,
39/82 dividindo-se simetricamente uma altura ou largura da unidade de previsão, partições obtidas, dividindo-se assimetricamente a altura ou largura da unidade de previsão, como l:n ou n:l, partições que são obtidas, dividindo-se geometricamente a unidade de previsão, e partições tendo formatos arbitrários.
[00144] Um modo de previsão da unidade de previsão pode ser pelo menos aquele dentre um modo intra, um modo inter e um modo ignorar. Por exemplo, o modo intra ou o modo inter pode ser executado na partição de 2Nx2N, 2NxN, Nx2N ou NxN. Além disso, o modo ignorar pode ser realizado somente na partição de 2Nx2N. A codificação é realizada independentemente na unidade de previsão em uma unidade de codificação, selecionando, assim, um modo de previsão tendo um menor erro de codificação.
[00145] O aparelho para codificar vídeo 100 pode também executar a transformação nos dados de imagem, em uma unidade de codificação, baseado não apenas na unidade de codificação para codificar os dados de imagem, mas também com base em uma unidade de dados, que é diferente da unidade de codificação. Para realizar a transformação na unidade de codificação, a transformação pode ser realizada, com base em uma unidade de transformação tendo um tamanho menor ou igual à unidade de codificação. Por exemplo, a unidade de transformação pode incluir uma unidade de transformação para um modo intra e uma unidade de transformação para um modo inter.
[00146] Da mesma forma que para a unidade de codificação, a unidade de transformação na unidade de codificação pode ser recursivamente dividida em regiões com menores tamanhos. Assim, dados residuais na unidade de codificação podem ser divididos,
40/82 de acordo com a transformação tendo uma estrutura em árvore, de acordo com profundidades de transformação.
[00147] Uma profundidade de transformação, indicando o número de vezes que a divisão é executada para alcançar a unidade de transformação, dividindo-se a altura e largura da unidade de codificação, pode ser também definida na unidade de transformação Por exemplo, em uma unidade de codificação atual da 2Nx2N, uma profundidade de transformação pode ser 0, quando o tamanho de uma unidade de transformação for também 2Nx2N, pode ser 1, quando o tamanho da unidade de transformação for NxN, e pode ser 2, quando o tamanho da unidade de transformação for N/2xN/2. Em outras palavras, a unidade de transformação tendo uma estrutura em árvore pode ser definida, de acordo com profundidades de transformação.
[00148] Informações de codificação, de acordo com unidades de codificação, que correspondem a uma profundidade codificada, requerem não só informações sobre a profundidade codificada, mas também informações relacionadas à codificação por previsão e transformação. Nesse sentido, o determinador da unidade de codificação 120, não só determina uma profundidade codificada tendo um menor erro de codificação, mas também determina um tipo de partição em uma unidade de previsão, um modo de previsão de acordo com unidades de previsão, e um tamanho de uma unidade de transformação para transformação.
[00149] Unidades de codificação, de acordo com uma estrutura em árvore cm uma unidade de codificação máxima, e um método para determinar uma unidade de previsão/ partição e uma unidade de transformação, de acordo com formas de realização da presente
41/82 invenção, serão descritas em detalhes mais tarde, com referência às Figs. 7 a 19.
[00150] O determinador da unidade de codificação 120 pode medir um erro de codificação das unidades de codificação mais profundas, de acordo com profundidades, usando otimização de taxa-distorção baseado em multiplicadores de Lagrange.
[00151] A unidade de saída 130 emite os dados de imagem da unidade de codificação máxima, que são codificados, baseado em pelo menos uma profundidade codificada, determinada pelo determinador da unidade de codificação 120, e informações sobre o modo de codificação, de acordo com a profundidade codificada, em fluxos de bits.
[00152] Os dados de imagem codificados podem ser obtidos, por codificação de dados residuais de uma imagem.
[00153] As informações sobre o modo de codificação, de acordo com profundidades codificadas, podem incluir informações sobre a profundidade codificada, o tipo de partição na unidade de previsão, o modo de previsão, e o tamanho da unidade de transformação.
[00154] As informações sobre a profundidade codificada podem ser definidas, usando informações de divisão de acordo com profundidades, que indicam se a codificação foi executada em unidades de codificação de menor profundidade, em vez de uma profundidade atual. Se a profundidade atual da unidade de codificação atual for a profundidade codificada, dados de imagem na unidade de codificação atual são codificados e emitidos e, portanto, as informações de divisão podem ser definidas para não dividir a unidade de codificação atual em uma menor profundidade. Alternativamente, se a profundidade atual da
42/82 unidade de codificação atual não for a profundidade codificada, a codificação é realizada na unidade de codificação da menor profundidade e, portanto, as informações de divisão podem ser definidas para dividir a unidade de codificação atual, para obter as unidades de codificação da menor profundidade.
[00155] Se a profundidade atual não for a profundidade codificada, codificação é realizada na unidade de codificação, que foi dividida na unidade de codificação da menor profundidade. Uma vez que pelo menos uma unidade de codificação da menor profundidade existe em uma unidade de codificação da profundidade atual, a codificação é executada repetidamente em cada unidade de codificação da menor profundidade e, portanto, a codificação pode ser recursivamente realizada para as unidades de codificação tendo a mesma profundidade.
[00156] Uma vez que as unidades de codificação tendo uma estrutura em árvore são determinadas para uma unidade de codificação máxima, e informações sobre pelo menos um modo de codificação são determinadas para uma unidade de codificação de uma profundidade codificada, informações sobre pelo menos um modo de codificação podem ser determinadas para uma unidade de codificação máxima. Além disso, uma profundidade codificada dos dados de imagem da unidade de codificação máxima pode ser diferente, de acordo com posições, uma vez que os dados de imagem são hierarquicamente divididos, de acordo com profundidades e, portanto, informações sobre a profundidade codificada e modo de codificação podem ser definidas para os dados de imagem.
[00157] Por conseguinte, a unidade de saída 130 pode atribuir informações de codificação sobre uma profundidade codificada
43/82 correspondente e um modo de codificação para pelo menos uma dentre a unidade de codificação, a unidade de previsão, e uma unidade mínima incluída na unidade de codificação máxima.
[00158] A unidade mínima, de acordo com uma forma de realização da presente invenção, é uma unidade de dados retangulares obtida, dividindo-se a unidade de codificação mínima, que constitui a profundidade mais inferior, por 4. Alternativamente, a unidade mínima pode ser uma unidade máxima de dados retangulares, que pode ser incluída em todas as unidades de codificação, unidades de previsão, unidades de partição, e unidades de transformação, incluídas na unidade de codificação máxima.
[00159] Por exemplo, as informações de codificação emitidas através da unidade de saída 130 podem ser classificadas em informações de codificação, de acordo com unidades de codificação, e informações de codificação, de acordo com unidades de previsão. As informações de codificação, de acordo com as unidades de codificação, podem incluir as informações sobre o modo de previsão e sobre o tamanho das partições. As informações de codificação, de acordo com as unidades de previsão, podem incluir informações sobre uma direção estimada de um modo inter, sobre um índice de imagens de referência do modo inter, sobre um vetor de movimento, sobre um componente de crominância de um modo intra, e sobre um método de interpolação do modo intra. Além disso, informações sobre um tamanho máximo da unidade de codificação, definido de acordo com grupos de quadros (GOPs), fatias, ou quadros, e informações sobre uma profundidade máxima podem ser inseridas em um conjunto de
44/82 parâmetros da sequência (SPS) ou um conjunto de parâmetros de quadro (PPS).
[00160] Além disso, informações sobre o tamanho máximo da unidade de transformação permitido para o video atual, e informações sobre o tamanho mínimo da unidade de transformação, podem ser emitidas através de um cabeçalho de um fluxo de bits, um SPS ou um PPS. A unidade de saída 130 pode codificar e emitir informações de referência, informações de previsão de único sentido, informações do tipo de fatia incluindo um quarto tipo de fatia etc., relacionadas à previsão acima descrita com referência às Fig. 1 a 6.
[00161] No aparelho para codificar de vídeo 100, a unidade de codificação mais profunda pode ser uma unidade de codificação obtida, dividindo-se uma altura ou largura de uma unidade de codificação de uma profundidade superior, que está uma camada acima, por dois. Em outras palavras, quando o tamanho da unidade de codificação da profundidade atual for 2Nx2N, o tamanho da unidade de codificação da menor profundidade é NxN. Além disso, a unidade de codificação da profundidade atual tendo o tamanho de 2Nx2N pode incluir no máximo 4 unidades de codificação da menor profundidade.
[00162] Nesse sentido, o aparelho para codificar vídeo 100 pode formar as unidades de codificação tendo a estrutura em árvore, determinando unidades de codificação tendo um formato ideal e um tamanho ideal para cada unidade de codificação máxima, baseado no tamanho da unidade decodificação máxima e na profundidade máxima determinada, tendo em conta as características do quadro atual. Além disso, uma vez que a codificação pode ser realizada em cada unidade de codificação máxima usando qualquer um dos
45/82 vários modos de previsão e transformações, um modo de codificação ideal pode ser determinado, considerando características da unidade de codificação de vários tamanhos de imagem.
[00163] Assim, se uma imagem tendo alta resolução ou uma grande quantidade de dados for codificada em um macrobloco convencional, um número de macroblocos por quadro aumenta excessivamente. Por conseguinte, um número de segmentos de informações compactados, gerados para cada macrobloco aumenta e, assim, é difícil transmitir as informações comprimidas, e a eficiência de compressão de dados diminui. No entanto, usando o aparelho para codificar vídeo 100, a eficiência da compressão de imagem pode ser aumentada, visto que uma unidade de codificação é ajustada, enquanto que considerando características de uma imagem, aumentando, ao mesmo tempo, um tamanho máximo de uma unidade de codificação, ao considerar um tamanho da imagem.
[00164] O aparelho para codificar vídeo 100 da Fig. 7 pode executar operações do aparelho para codificar vídeo 10, descrito com referência à Fig. 1.
[00165] O determinador da unidade de codificação 120 pode executar operações do codificador de imagem 12 do aparelho para codificar vídeo 10. 0 determinador da unidade de codificação 120 pode determinar uma unidade de previsão para previsão intra, de acordo com unidades de codificação tendo uma estrutura em árvore para cada unidade de codificação máxima, realizar a previsão intra em cada unidade de previsão, determinar uma unidade de transformação para transformação, e executar a transformação em cada unidade de transformação.
46/82 [00166] A unidade de saída 130 pode executar operações de uma unidade de codificação de símbolos 14 e uma unidade de saída do fluxo de bits 16 do aparelho para codificar vídeo 10. Símbolos para várias unidades de dados, como um quadro, uma fatia, uma unidade de codificação máxima, uma unidade de codificação, uma unidade de previsão, e uma unidade de transformação, são gerados, e cada um dos símbolos é classificado em uma região de prefixo, e uma região de sufixo, de acordo com um valor limite determinado com base em um tamanho da unidade de dados correspondente. A unidade de saída 130 pode gerar uma sequência de bits do prefixo e uma sequência de bits do sufixo, usando um método de binarização determinado para cada uma dentre a região de prefixo e a região de sufixo do símbolo. Qualquer uma dentre uma binarização geral, uma binarização unária, uma binarização unária truncada, uma binarização golomb exponencial, e uma binarização de comprimento fixo, é selecionada para binarizar a região de prefixo e a região de sufixo, gerando, assim, a sequência de bits do prefixo e a sequência de bits do sufixo.
[00167] A unidade de saída 130 pode executar codificação de símbolos, através da realização de codificação aritmética, determinada para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo. A unidade de saída 130 pode executar codificação de símbolos, através da realização de codificação aritmética para realizar modelagem de contexto, de acordo com posições de bits na sequência de bits do prefixo, e realizar codificação aritmética para omitir modelagem de contexto na sequência de bits do sufixo em um modo bypass.
[00168] Por exemplo, quando informações de posição do coeficiente final de um coeficiente de transformação da unidade
47/82 de transformação forem codificadas, o valor limite para classificar a sequência de bits do prefixo e a sequência de bits do sufixo pode ser determinado, de acordo com um tamanho (largura ou altura) da unidade de transformação. Alternativamente, o valor limite pode ser determinado, de acordo com tamanhos de uma fatia, incluindo a unidade de transformação atual, uma unidade de codificação máxima, uma unidade de codificação, uma unidade de previsão etc..
[00169] Como alternativa, pode ser determinado por um indice máximo de um modo de previsão intra, quantos bits de uma sequência de bits do símbolo são codificados em codificação aritmética como a sequência de bits do prefixo através da modelagem de contexto no modo de previsão intra, e quantos bits da sequência de bits do símbolo são codificados em codificação aritmética como a sequência de bits do sufixo em um modo bypass. Por exemplo, um total de 34 modos de previsão intra pode ser utilizado para unidades de previsão com tamanhos de 8 x 8, 16 x 16 e 32 x 32, um total de 17 modos de previsão intra pode ser utilizado para uma unidade de previsão tendo um tamanho de 4 x 4, e um total de modos de previsão intra pode ser utilizado para uma unidade de previsão tendo um tamanho de 64 x 64. Neste caso, uma vez que as unidades de previsão capazes de usar o mesmo número de modos de previsão intra são consideradas como tendo caracter!sticas estatísticas semelhantes, um primeiro bit dentre sequências de bits no modo de previsão intra pode ser codificado através da modelagem de contexto para codificação aritmética em relação às unidades de previsão tendo tamanhos de 8 x 8, 16 x 16 e 32 x 32. Além disso, todos os bits dentre as sequências de bits no modo de previsão intra podem ser codificados no modo
48/82 bypass para codificação aritmética em relação ao restante das unidades de previsão, ou seja, as unidades de previsão tendo tamanhos de 4 x 4 e 64 x 64.
[00170] A unidade de saída 130 pode emitir as sequências de bits geradas através da codificação de símbolos na forma de fluxos de bits.
[00171] A Fig. 8 é um diagrama de blocos de um aparelho para decodificar vídeo 200 com base em uma unidade de codificação tendo uma estrutura em árvore, de acordo com uma forma de realização da presente invenção.
[00172] O aparelho para decodificar vídeo 200, realizando previsão de video com base na unidade de codificação tendo uma estrutura em árvore, inclui um receptor 210, um extrator de informações de codificação e dados de imagem 220, e um decodificador de dados de imagem 230.
[00173] Definições de vários termos, tais como uma unidade de codificação, uma profundidade, uma unidade de previsão, uma unidade de transformação, e informações sobre vários modos de codificação, para diversas operações do aparelho para decodificar vídeo 200, são idênticas àquelas descritas com referência à Fig. 7 e ao aparelho para codificar vídeo 100.
[00174] O receptor 210 recebe e analisa um fluxo de bits de um vídeo codificado. O extrator de informações de codificação e dados de imagem 220 extrai dados de imagem codificados para cada unidade de codificação, a partir do fluxo de bits analisado, no qual as unidades de codificação têm uma estrutura em árvore, de acordo com cada unidade de codificação máxima, e emite os dados de imagem extraídos para o decodificador de dados de imagem 230. O extrator de informações de codificação e dados de imagem 220
49/82 pode extrair informações sobre um tamanho máximo de uma unidade de codificação de um quadro atual, de um cabeçalho sobre o quadro atual, ou um SPS ou um PPS.
[00175] Além disso, o extrator de informações de codificação e dados de imagem 220 extrai informações sobre uma profundidade codificada e um modo de codificação para as unidades de codificação tendo uma estrutura em árvore, de acordo com cada unidade de codificação máxima, do fluxo de bits analisado. As informações extraídas sobre a profundidade codificada e o modo de codificação são emitidas para o decodifiçador de dados de imagem 230. Em outras palavras, os dados de imagem em uma sequência de bits são divididos na unidade de codificação máxima, para que o decodifiçador de dados de imagem 230 decodifique os dados de imagem para cada unidade de codificação máxima.
[00176] As informações sobre a profundidade codificada e o modo de codificação, de acordo com a unidade de codificação máxima, podem ser definidas para obter informações sobre pelo menos uma unidade de codificação correspondente à profundidade codificada, e informações sobre um modo de codificação podem incluir informações sobre um tipo de partição de uma unidade de codificação correspondente à profundidade codificada, um modo de previsão, e um tamanho de uma unidade de transformação. Além disso, informações de divisão, de acordo com profundidades, podem ser extraídas como as informações sobre a profundidade codificada.
[00177] As informações sobre a profundidade codificada e o modo de codificação, de acordo com cada unidade de codificação máxima extraída pelo extrator de informações de codificação e dados de
50/82 imagem 220, são informações sobre uma profundidade codificada e um modo de codificação determinado para gerar um menor erro de codificação, quando um codificador, tal como o aparelho para codificar video 100, executa repetidamente codificação para cada unidade de codificação mais profunda, de acordo com profundidades, de acordo com cada unidade de codificação máxima. Por conseguinte, o aparelho para decodificar video 200 pode restaurar uma imagem, por decodificação dos dados de imagem, de acordo com uma profundidade codificada e um modo de codificação que gera o menor erro de codificação.
[00178] Uma vez que informações de codificação sobre a profundidade codificada e o modo de codificação podem ser atribuídas a uma unidade de dados predeterminada dentre uma unidade de codificação correspondente, uma unidade de previsão, e uma unidade mínima, o extrator de informações de codificação e dados de imagem 220 pode extrair as informações sobre a profundidade codificada e o modo de codificação, de acordo com as unidades de dados predeterminadas. As unidades de dados predeterminadas, às quais são atribuídas as mesmas informações sobre a profundidade codificada e o modo de codificação, podem ser inferidas como sendo as unidades de dados incluídas na mesma unidade de codificação máxima.
[00179] 0 decodifiçador de dados de imagem 230 restaura o quadro atual, por decodificação dos dados de imagem em cada unidade de codificação máxima, com base nas informações sobre a profundidade codificada e o modo de codificação, de acordo com as unidades de codificação máxima. Em outras palavras, o decodifiçador de dados de imagem 230 pode decodificar os dados de imagem codificados com base nas informações extraídas sobre o
51/82 tipo de partição, o modo de previsão, e a unidade de transformação para cada unidade de codificação dentre as unidades de codificação tendo a estrutura em árvore, incluídas em cada unidade de codificação máxima. Um processo de decodificação pode incluir previsão, incluindo previsão intra e compensação de movimento e transformação inversa.
[00180] 0 decodifiçador de dados de imagem 230 pode realizar previsão intra ou compensação de movimento, de acordo com uma partição e um modo de previsão de cada unidade de codificação, com base nas informações sobre o tipo de partição e o modo de previsão da unidade da unidade de previsão da unidade de codificação, de acordo com profundidades codificadas.
[00181] Além disso, o decodifiçador de dados de imagem 230 pode realizar transformação inversa, de acordo com cada unidade de transformação na unidade de codificação, com base nas informações sobre a unidade de transformação, de acordo com as unidades de codificação tendo uma estrutura em árvore, a fim de executar a transformação inversa, de acordo com unidades de codificação máxima. Um valor de pixel de um domínio espacial na unidade de codificação pode ser restaurado através da transformação inversa.
[00182] O decodifiçador de dados de imagem 230 pode determinar pelo menos uma profundidade codificada dc uma unidade de codificação máxima atual, usando informações de divisão de acordo com profundidades. Se as informações de divisão indicarem que dados de imagem não são mais divididos na profundidade atual, a profundidade atual é uma profundidade codificada. Nesse sentido, o decodifiçador de dados de imagem 230 pode decodificar dados codificados de pelo menos uma unidade de codificação
52/82 correspondente a cada profundidade codificada na unidade de codificação máxima atual, usando as informações sobre o tipo de partição da unidade de previsão, o modo de previsão e o tamanho da unidade de transformação para cada unidade de codificação correspondente à profundidade codificada, e emitir os dados de imagem da unidade de codificação máxima atual.
[00183] Em outras palavras, unidades de dados contendo as informações de codificação, incluindo as mesmas informações de divisão, podem ser obtidas, observando o conjunto de informações de codificação atribuído para a unidade de dados predeterminada dentre a unidade de codificação, a unidade de previsão, e a unidade mínima, e as unidades de dados obtidas podem ser consideradas como uma unidade de dados a ser decodificada pelo decodif içador de dados de imagem 230 no mesmo modo de codificação. Decodificação da unidade de codificação atual pode ser realizada, através da obtenção de informações sobre o modo de codificação para cada unidade de codificação, de tal forma determinada.
[00184] Além disso, o aparelho para decodificar vídeo 200 da Fig. 8 pode executar operações do aparelho para decodificar vídeo 20 acima descrito com referência à Fig. 2.
[00185] O receptor 210 e o extrator de informações de codificação e dados de imagem 220 podem executar operações do analisador 22 e o decodifiçador de símbolos 24 do aparelho para decodificar vídeo 20. O decodifiçador de dados de imagem 230 pode executar operações do decodifiçador de símbolos 24 do aparelho para decodificar vídeo 20.
53/82 [00186] O receptor 210 recebe um fluxo de bits de uma imagem, e o extrator de informações de codificação e dados de imagem 220 analisa símbolos de blocos de imagem do fluxo de bits recebido.
[00187] 0 extrator de informações de codificação e dados de imagem 220 pode classificar um símbolo atual em uma sequência de bits do prefixo e uma sequência de bits do sufixo, com base em um valor limite determinado, de acordo com um tamanho de um bloco atual. Por exemplo, quando as informações de posição do coeficiente final do coeficiente de transformação da unidade de transformação forem decodificadas, o valor limite para classificar a sequência de bits do prefixo e a sequência de bits do sufixo pode ser determinado, de acordo com um tamanho (largura ou altura) da unidade de transformação. Alternativamente, o valor limite pode ser determinado, de acordo com tamanhos da fatia, incluindo unidade de transformação corrente, a unidade de codificação máxima, a unidade de codificação, a unidade de previsão etc.. Como alternativa, pode ser determinado pelo índice máximo do modo de previsão intra, quantos bits da sequência de bits do símbolo são codificados em codificação aritmética como a sequência de bits do prefixo, através da modelagem de contexto no modo de previsão intra, e quantos bits da sequência de bits do símbolo são codificados em codificação aritmética como a sequência de bits do sufixo no modo bypass.
[00188] Decodificação aritmética é executada, usando um método de decodificação aritmética determinado para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo do símbolo atual. Decodificação aritmética para determinar a modelagem de contexto, de acordo com as posições de bits, pode
54/82 ser executada na sequência de bits do prefixo, e decodificação aritmética para omitir a modelagem de contexto pode ser realizada na sequência de bits do sufixo usando o modo bypass. [00189] Após a decodificação aritmética, binarização inversa é realizada, de acordo com um método de binarização determinado para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo. A região de prefixo e a região de sufixo do símbolo podem ser restauradas, por realizar a binarização inversa, de acordo com o método de binarização determinado para cada uma dentre a sequência de bits do prefixo e a sequência de bits do sufixo.
[00190] blocos de
O decodificador de dados de imagem 230 pode restaurar imagem, por realizar previsão e transformação inversa no bloco atual usando o símbolo atual restaurado através da decodificação aritmética e a binarização inversa.
[00191] Consequentemente, o aparelho para decodificar vídeo
200 pode obter informações sobre pelo menos uma unidade de codificação que gera o menor erro de codificação, quando codificação é recursivamente executada para cada unidade de codificação máxima, e pode usar as informações para decodificar o quadro atual. Em outras palavras, as unidades de tendo a estrutura em árvore, determinadas como as codificação unidades de codificação ideal em cada unidade de codificação máxima, podem ser decodificadas.
[00192] Nesse sentido, mesmo se dados de imagem tiverem alta resolução e uma grande quantidade de dados, os dados de imagem podem ser eficientemente decodificados e restaurados, usando um tamanho de uma unidade de codificação e um modo de codificação, que são adaptavelmente determinados, de acordo com
55/82 características dos dados de imagem, por meio de informações sobre um modo de codificação ideal recebidas de um codificador. [00193] A Fig. 9 é um diagrama conceituai de unidades de codificação, de acordo com uma forma de realização da presente invenção.
[00194] Um tamanho de uma unidade de codificação pode ser expresso em largura x altura, e pode ser de 64 x 64, 32 x 32,16 x 16 e 8 x 8. Uma unidade de codificação de 64 x 64 podeser dividida em partições de 64 x 64, 64 x 32, 32 x 64, ou 32 x32, uma unidade de codificação de 32 x 32 pode ser divididaem partições de 32 x 32, 32 x 16, 16 x 32 ou 16 x 16, uma unidade de codificação de 16 x 16 pode ser dividida em partições de 16 x 16, 16 x 8, 8 x 16 ou 8 x 8, e uma unidade de codificação de 8 x pode ser dividida em partições de 8x8, 8x4, 4x8ou4x .
[00195] Nos dados de vídeo 310, uma resolução é 1920 x 1080, um tamanho máximo de uma unidade de codificação é 64, e uma profundidade máxima 2. Nos dados de vídeo 320, uma resolução é 1920 x 1080, um tamanho máximo de uma unidade de codificação é
64, e uma profundidade máxima é 3. Nos dados de vídeo 330, uma resolução é 352 x 288, um tamanho máximo de uma unidade de codificação é 16, e uma profundidade máxima é 1. A profundidade máxima mostrada na Fig. 9 indica um número total de divisões, a partir de uma unidade de codificação máxima para uma unidade de decodificação mínima.
[00196] Se uma resolução for alta ou uma quantidade de dados for grande, um tamanho máximo de uma unidade de codificação pode ser grande, de modo não só a aumentar a eficiência de codificação, mas também para refletir com precisão as
56/82 características de uma imagem. Consequentemente, o tamanho máximo da unidade de codificação dos dados de vídeo 310 e 320 tendo uma resolução maior do que os dados de vídeo 330 pode ser 64 .
[00197] Uma vez que a profundidade máxima dos dados de vídeo 310 é 2, unidades de codificação 315 dos dados de vídeo 310 pode incluir uma unidade de codificação máxima tendo um tamanho de eixo longo de 64, e unidades de codificação com tamanhos de eixo longo de 32 e 16, uma vez que profundidades são aprofundadas em duas camadas, dividindo-se a unidade de codificação máxima por duas vezes. Entretanto, uma vez que a profundidade máxima dos dados de vídeo 330 é 1, as unidades de codificação 335 dos dados de vídeo 330 podem incluir uma unidade de codificação máxima tendo um tamanho de eixo longo de 16, e unidades de codificação com um tamanho de eixo longo de 8, visto que profundidades são aprofundadas em uma camada, dividindo-se a unidade de codificação máxima uma vez.
[00198] Uma vez que a profundidade máxima dos dados de vídeo 320 é 3, as unidades de codificação 325 dos dados de vídeo 320 podem incluir uma unidade de codificação máxima tendo um tamanho de eixo longo de 64, e unidades de codificação tendo tamanhos de eixo longo de 8, 16 e 32, visto que as profundidades são aprofundadas em 3 camadas, dividindo-se as unidades de codificação máxima três vezes. Quando uma profundidade aumenta, informações detalhadas podem ser precisamente expressas.
[00199] A Fig. 10 é um diagrama de blocos de um codificador de imagens 400 com base em unidades de codificação, de acordo com uma forma de realização da presente invenção.
57/82 [00200] O codificador de imagens 400 executa operações do determinador da unidade de codificação 120 do aparelho para codificar video 100, para codificar dados de imagem. Em outras palavras, um previsor intra 410 executa previsão intra em unidades de codificação em um modo intra, dentre uma moldura atual 405, e um estimador de movimento 420 e um compensador de movimento 425 realizam estimativa inter e compensação de movimento nas unidades de codificação em um modo inter dentre a moldura atual 405 usando a moldura atual 405 e uma moldura de referência 495.
[00201] Dados emitidos pelo previsor intra 410, o estimador de movimento 420, e o compensador de movimento 425 são emitidos como um coeficiente de transformação quantizada através de um transformador 430 e um quantizador 440. O coeficiente de transformação quantizada é restaurado como dados em um domínio espacial através de um quantizador inverso 460 e um transformador inverso 470, e os dados restaurados no domínio espacial são emitidos como a moldura de referência 495, após serem pós-processados através de uma unidade de desbloqueio 480 e uma unidade de filtragem de circuito 490. O coeficiente de transformação quantizada pode ser emitido como um fluxo de bits 455, através de um codificador por entropia 450.
[00202] A fim de que o codificador de imagens 400 seja aplicado no aparelho para codificar vídeo 100, todos os elementos do codificador de imagem 400, ou seja, o previsor intra 410, o estimador de movimento 420, o compensador de movimento 425, o transformador 430, o quantizador 440, o codificador por entropia 450, o quantizador inverso 460, o transformador inverso 470, a unidade de desbloqueio 480, e a unidade de filtragem de circuito
58/82
490 executam operações com base em cada unidade de codificação dentre unidades de codificação tendo uma estrutura em árvore, enquanto que considerando a profundidade máxima de cada unidade de codificação máxima.
[00203]
Especificamente, o previsor intra 410, o estimador do movimento
420, e o compensador de movimento
425, determinam partições e um modo de previsão de cada unidade de codificação dentre as unidades de codificação tendo uma estrutura em árvore, enquanto que considerando o tamanho máximo e a profundidade máxima de uma unidade de codificação máxima atual, e o transformador 430 determina o tamanho da unidade de transformação em cada unidade de codificação dentre as unidades de codificação tendo uma estrutura em árvore.
[00204]
Em particular, o codificador por entropia 450 pode executar codificação de símbolos na região de prefixo e na região de sufixo, classificando um símbolo na região de prefixo e na região de sufixo, de acordo com um valor limite predeterminado e usando diferentes métodos de binarização e codificação aritmética em relação à região de prefixo e à região de sufixo.
[00205] O valor limite para classificar o símbolo na região de prefixo e na região de sufixo pode ser determinado com base em tamanhos de unidades de dados do símbolo, isto é, uma fatia, uma unidade de codificação máxima, uma unidade de codificação, uma unidade de previsão, uma unidade de transformação etc..
[00206] A Fig. 11 é um diagrama de blocos de um decodifiçador de imagens 500 com base em unidades de codificação, de acordo com uma forma de realização da presente invenção.
59/82 [00207] Um analisador 510 analisa dados de imagem codificados a serem decodificados e informações sobre codificação necessárias para decodificação de um fluxo de bits 505. Os dados de imagem codificados são emitidos como dados quantizados inversos, através de um decodificador por entropia 520 e um quantizador inverso 530, e os dados quantizados inversos são restaurados em dados de imagem em um domínio espacial através de um transformador inverso 540.
[00208] Um previsor intra 550 executa previsão intra nas unidades de codificação em um modo intra em relação aos dados de imagem no domínio espacial, e um compensador de movimento 560 executa compensação de movimento em unidades de codificação em um modo inter, usando uma moldura de referência 585.
[00209] Os dados de imagem no domínio espacial, que passaram pelo previsor intra 550 e o compensador de movimento 560, podem ser emitidos como uma moldura restaurada 595, após ser pósprocessados através de uma unidade de desbloqueio 570 e uma unidade de filtragem de circuito 580. Além disso, os dados de imagem, que são pós-processados através da unidade de desbloqueio 570 e da unidade de filtragem de circuito 580, podem ser emitidos como a moldura de referência 585.
[00210] Para decodificar os dados de imagem no decodificador de dados de imagem 230 do aparelho para decodificar vídeo 200, o decodificador de imagens 500 pode realizar operações, que são executadas após o analisador 510.
[00211] A fim de que o decodif icador de imagens 500 seja aplicado no aparelho para decodificar vídeo 200, todos os elementos do decodificador de imagem 500, ou seja, o analisador 510, o decodificador por entropia 520, o quantizador inverso
60/82
530, o transformador inverso 540, o previsor intra 550, o compensador de movimento 560, a unidade de desbloqueio 570, e a unidade de filtragem de circuito 580 executam operações com base em unidades de codificação com uma estrutura em árvore para cada unidade de codificação máxima.
[00212] Especificamente, o previsor intra 550 e o compensador de movimento 560 executam operações, com base em partições e um modo de previsão para cada uma das unidades de codificação tendo uma estrutura em árvore, e o transformador inverso 540 executa operações com base em um tamanho de uma unidade de transformação para cada unidade de codificação.
[00213] Em particular, o decodifiçador por entropia 520 pode realizar decodificação de símbolos para cada uma dentre a sequência de bits do prefixo de bits e a sequência de bits do sufixo, ao classificar a sequência de bits do símbolo analisado na sequência de bits do prefixo e na sequência de bits do sufixo, de acordo com um valor limite predeterminado, e usando diferentes métodos de binarização e decodificação aritmética com relação à sequência de bits do prefixo e à sequência de bits do sufixo.
[00214] 0 valor limite para classificar a sequência de bits de símbolos na sequência de bits do prefixo e na sequência de bits do sufixo pode ser determinada com base em tamanhos de unidades de dados do símbolo, isto é, uma fatia, uma unidade de codificação máxima, uma unidade de codificação, uma unidade de previsão, uma unidade de transformação etc..
[00215] A Fig. 12 é um diagrama mostrando unidades de codificação mais profundas, de acordo com profundidades e
61/82 partições, de acordo com uma forma de realização da presente invenção.
[00216] O aparelho para codificar vídeo 100 e o aparelho para decodificar vídeo 200 usam unidades de codificação hierárquicas, a fim de considerar características de uma imagem. Uma altura máxima, uma largura máxima, e uma profundidade máxima de unidades de codificação podem ser adaptavelmente determinadas, de acordo com as características da imagem, ou podem ser definidas de forma diferente por um usuário.
Tamanhos das unidades de codificação mais profundas, de acordo com profundidades, podem ser determinados, de acordo com o tamanho máximo predeterminado da unidade de codificação.
[00217] Em uma estrutura hierárquica 600 de unidades de codificação, de acordo com uma forma de realização da presente invenção, a altura máxima e a largura máxima das unidades de codificação são, cada qual,
64, e a profundidade máxima é
Aqui, a máxima profundidade denota um número total de vezes que a divisão é realizada, da unidade de codificação máxima na unidade de codificação mínima. Visto que uma profundidade aumenta ao longo de um eixo vertical da estrutura hierárquica
600, uma altura e uma largura da unidade de codificação mais profunda são, cada qual, divididas. Além disso, uma unidade de previsão e partições, que são as bases para a codificação por previsão de cada unidade de codificação mais profunda, são mostradas ao longo de um eixo horizontal da estrutura hierárquica 600.
uma unidade de codificação 610 é [00218] Em outras palavras, uma unidade de codificação máxima na estrutura hierárquica 600, onde a profundidade é 0 e um tamanho, ou seja, uma altura pela
62/82 largura, é 64 x 64. A profundidade aumenta ao longo do eixo vertical, existindo uma unidade de codificação 620 tendo um tamanho de 32 x 32 e uma profundidade de 1, uma unidade de codificação 630 tendo um tamanho de 16 x 16 e uma profundidade de 2, uma unidade de codificação 640 tendo um tamanho de 8 x 8 e uma profundidade de 3, e uma unidade de codificação 650 tendo um tamanho de 4 x 4 e uma profundidade de 4. A unidade de codificação 650 tendo o tamanho de 4 x 4 e a profundidade de 4 é uma unidade de codificação mínima.
[00219] A unidade de previsão e as partições de uma unidade de codificação são dispostas ao longo do eixo horizontal, de acordo com cada profundidade. Em outras palavras, se a unidade de codificação 610 tendo o tamanho de 64x64 e a profundidade de 0 for uma unidade de previsão, a unidade de previsão pode ser dividida em partições incluídas na unidade de codificação 610, ou seja, uma partição 610 tendo um tamanho de 64 x 64, partições 612 tendo o tamanho de 64 x 32, partições 614 tendo o tamanho de 32 x 64, ou partições 616 tendo o tamanho de 32 x 32.
[00220] Da mesma forma, uma unidade de previsão da unidade de codificação 620 tendo o tamanho de 32 x 32 e a profundidade de 1 pode ser dividida em partições incluídas na unidade de codificação 620, ou seja, uma partição 620 tendo um tamanho de 32 x 32, partições 622 tendo um tamanho de 32 x 16, partições 624 tendo um tamanho de 16 x 32, e partições 626 tendo um tamanho de 16 x 16.
[00221] Da mesma forma, uma unidade de previsão da unidade de codificação 630 tendo o tamanho de 16 x 16 e a profundidade de 2 pode ser dividida em partições incluídas na unidade de codificação 630, ou seja, uma partição tendo um tamanho de 16 x
63/82 incluída na unidade de codificação 630, partições 632 tendo um tamanho de 16 x 8, partições 634 tendo um tamanho de 8 x 16, e partições 636 tendo um tamanho de 8 x 8.
[00222] Da mesma forma, uma unidade de previsão da unidade de codificação 640 tendo o tamanho de 8 x 8 e a profundidade de 3 pode ser dividida em partições incluídas na unidade de codificação 640, ou seja, uma partição tendo um tamanho de 8 x 8 incluída na unidade de codificação 640, partições 642 tendo um tamanho de 8 x 4, partições 64 4 tendo um tamanho de 4 x 8, e partições 646 tendo um tamanho de 4 x 4.
[00223] A unidade de codificação 650 tendo o tamanho de 4 x 4 e a profundidade de 4 é a unidade de codificação mínima e uma unidade de codificação da profundidade mais inferior. Uma unidade de previsão da unidade de codificação 650 só é atribuída a uma partição tendo um tamanho de 4 x 4.
[00224] A fim de determinar pelo menos uma profundidade codificada das unidades de codificação, que constituem a unidade de codificação máxima 610, o determinador da unidade de codificação 120 do aparelho para codificar vídeo 100 executa codificação para unidades de codificação correspondentes a cada profundidade incluída na unidade de codificação máxima 610.
[00225] Um número de unidades de codificação mais profundas, de acordo com profundidades incluindo dados na mesma faixa e do mesmo tamanho, aumenta à medida que a profundidade aumenta. Por exemplo, quatro unidades de codificação correspondentes a uma profundidade de 2 são necessárias para processar dados, que estão incluídos em uma unidade de codificação correspondente a uma profundidade de 1. Nesse sentido, a fim de comparar resultados de codificação dos mesmos dados, de acordo com
64/82 profundidades, a unidade de codificação correspondente à profundidade de 1 e quatro unidades de codificação correspondentes à profundidade de 2 são, cada qual, codificadas. [00226] Para realizar codificação para uma profundidade atual dentre as profundidades, um menor erro de codificação pode ser escolhido para a profundidade atual, através da realização de codificação para cada unidade de previsão nas unidades de codificação correspondentes à profundidade atual, ao longo do eixo horizontal da estrutura hierárquica 600. Como alternativa, o menor erro de codificação pode ser procurado, comparando os menores erros de codificação, de acordo com profundidades, através da realização de codificação para cada profundidade, enquanto a profundidade aumenta ao longo do eixo vertical da estrutura hierárquica 600. Uma profundidade e uma partição com o menor erro de codificação na unidade de codificação 610 podem ser selecionadas, como a profundidade codificada e um tipo de partição da unidade de codificação 610.
[00227] A Fig. 13 entre uma unidade de acordo com uma forma é um diagrama para descrever uma relação codificação e unidades de transformação, de de realização da presente invenção.
[00228] O aparelho para codificar vídeo 100 ou
200 codifica ou decodifica uma imagem, de acordo com unidades de codificação tendo tamanhos menores ou iguais a uma unidade de codificação máxima para cada unidade de codificação máxima.
Tamanhos de unidades de transformação para transformação durante codificação podem ser selecionados, com base em unidades de dados que não são maiores do que uma unidade de codificação correspondente.
65/82 [00229] Por exemplo, no aparelho para codificar vídeo 100 ou 200, se um tamanho da unidade de codificação 710 for 64 x 64, transformação pode ser realizada usando as unidades de transformação 720 tendo um tamanho de 32 x 32.
[00230] Além disso, dados da unidade de codificação 710 tendo o tamanho de 64x64 podem ser codificados por meio de transformação em cada uma das unidades de transformação tendo o tamanho de 32 x 32, 16 x 16, 8 x 8 e 4 x 4, que são menores do que 64 x 64 e, então, uma unidade de transformação tendo o menor erro de codificação pode ser selecionada.
[00231] A Fig. 14 é um diagrama para descrever informações de codificação de unidades de codificação, de acordo com profundidades, de acordo com uma forma de realização da presente invenção.
[00232] A unidade de saída 130 do aparelho para codificar vídeo 100 pode codificar e transmitir informações 800 sobre um tipo de partição, informações 810 sobre um modo de previsão, e informações 820 sobre um tamanho de uma unidade de transformação para cada unidade de codificação correspondente a uma profundidade codificada, como informações sobre um modo de codificação.
[00233] As informações 800 indicam informações sobre um formato de uma partição obtida, dividindo-se uma unidade de previsão de uma unidade de codificação atual, em que a partição é uma unidade de dados para codificação por previsão da unidade de codificação atual. Por exemplo, uma unidade de codificação atual CU_0 tendo um tamanho de 2Nx2N pode ser dividida em qualquer uma dentre a partição 802 tendo um tamanho de 2Nx2N, uma partição 804 tendo um tamanho de 2NxN, uma partição 806 tendo um tamanho
66/82 de Nx2N, e uma partição 808 tendo um tamanho de NxN. Aqui, as informações 800 sobre um tipo de partição são definidas para indicar uma dentre a partição 804 tendo um tamanho de 2NxN, a partição 806 tendo um tamanho de Nx2N, e a partição 808 tendo um tamanho de NxN.
[00234] As informações 810 indicam um modo de previsão de cada partição. Por exemplo, as informações 810 podem indicar um modo de codificação por previsão realizado em uma partição indicada pelas informações 800, ou seja, um modo intra 812, um modo inter 814, ou um modo ignorar 816.
[00235] As informações 820 indicam uma unidade de transformação a ser baseada, quando a transformação for realizada em uma unidade de codificação atual. Por exemplo, a unidade de transformação pode ser uma primeira unidade de transformação intra 822, uma segunda unidade de transformação intra 824, uma primeira unidade de transformação inter 826, ou uma segunda unidade de transformação inter 828.
[00236] O extrator de informações de codificação e dados de imagem 220 do aparelho para decodificar video 200 pode extrair e usar as informações 800, 810 e 820 para decodificação, de acordo com cada unidade de codificação mais profunda.
[00237] A Fig. 15 é um diagrama mostrando unidades de codificação mais profundas, de acordo com profundidades, de acordo com uma forma de realização da presente invenção.
[00238] Informações de divisão podem ser usadas para indicar uma mudança de profundidade. As informações de divisão indicam se uma unidade de codificação de uma profundidade atual foi dividida em unidades de codificação de menor profundidade.
67/82 [00239] Uma unidade de previsão 910 para codificação por previsão de uma unidade de codificação 900 tendo uma profundidade de 0 e um tamanho de 2N_0x2N_0 pode incluir partições de um tipo de partição 912 tendo um tamanho de 2N_0x2N_0, um tipo de partição 914 tendo um tamanho de 2N_0xN_0, um tipo de partição 916 tendo um tamanho de N_0x2N_0, e um tipo de partição 918 tendo um tamanho de N_0xN_0. A Fig. 15 só ilustra os tipos de partição 912 a 918 obtidos, dividindo-se simetricamente a unidade de previsão 910, mas um tipo de partição não é por este aspecto limitado, e as partições de unidade a previsão 910 podem incluir partições assimétricas, partições tendo um formato predeterminado, e partições tendo um formato geométrico.
[00240] Codificação por previsão é executada repetidamente em uma partição tendo um tamanho de 2N_0x2N_0, duas partições tendo um tamanho de 2N_0xN_0, duas partições tendo um tamanho de N_0x2N_0, e quatro partições tendo um tamanho de N_0xN_0, de acordo com cada tipo de partição. A codificação por previsão em um modo intra e um modo inter pode ser efetuada nas partições tendo os tamanhos de 2N_0x2N_0, N_0x2N_0, 2N_0xN_0 e N_0xN_0. A codificação por previsão em um modo ignorar é realizada somente na partição com o tamanho de 2N_0x2N_0.
[00241] Erros de codificação, incluindo a codificação por previsão nos tipos de partição 912 a 918 são comparados, e o menor erro de codificação é determinado entre os tipos de partição. Se um erro de codificação for o menor deles em um dos tipos de partição 912 a 916, a unidade de previsão 910 pode não ser dividida em uma menor profundidade.
68/82 [00242] Se o erro de codificação for o menor deles no tipo de partição 918, uma profundidade é alterada de 0 para 1, para dividir o tipo de partição 918 na operação 920, e codificação é executada repetidamente nas unidades de codificação 930 tendo uma profundidade de 2 e um tamanho de N_0xN_0, para procurar um menor erro de codificação.
[00243] Uma unidade de previsão 940 para codificar por previsão as unidades de codificação 930, tendo uma profundidade de 1 e um tamanho de 2N_lx2N_l (= N_0xN_0), pode incluir partições de um tipo de partição 942 tendo um tamanho de 2N_lx2N_l, um tipo de partição 94 4 tendo um tamanho de 2N_lxN_l, um tipo de partição 94 6 tendo um tamanho de N_lx2N_l, e um tipo de partição 948 tendo um tamanho de N_lxN_l.
[00244] Se um erro de codificação for o menor deles no tipo de partição 948, uma profundidade é alterada de 1 para 2, para dividir o tipo de partição 948 na operação 950, e codificação é executada repetidamente nas unidades de codificação 960, que têm uma profundidade de 2 e um tamanho de N_2xN_2, para procurar um menor erro de codificação.
[00245] Quando uma profundidade máxima for d, a unidade de codificação, de acordo com cada profundidade, pode ser realizada até quando uma profundidade se torne d-1, e informações de divisão podem ser codificadas até quando uma profundidade for uma de 0 a d-2. Em outras palavras, quando codificação for realizada até quando a profundidade for d-1, depois de uma unidade de codificação correspondente a uma profundidade de d-2 ser dividida na operação 970, uma unidade de previsão 990 para codificar por previsão uma unidade de previsão 980 tendo uma profundidade de d-1 e um tamanho de 2N_(d-1)x2N_(d-1) pode
69/82 incluir partições de um tipo de partição 992 tendo um tamanho de 2N_(d-1)x2N_(d-1), um tipo de partição 994 tendo um tamanho de 2N_(d-1)xN_(d-1), um tipo de partição 996 tendo um tamanho de N_(d-1)x2N_(d-1), e um tipo de partição 998 tendo um tamanho de N_(d-1)xN_(d-l).
[00246] Codificação por previsão pode ser executada repetidamente em uma partição tendo um tamanho de 2N_(dl)x2N_(d-l), duas partições tendo um tamanho de 2N_(d-1)xN_(d1), duas partições tendo um tamanho de N_(d-1)x2N_(d-1), quatro partições tendo um tamanho de N_(d-1)xN_(d-1) dentre os tipos de partição 992 a 998, para procurar um tipo de partição tendo um menor erro de codificação.
[00247] Mesmo quando o tipo de partição 998 tiver o menor erro de codificação, uma vez que a profundidade máxima é d, uma unidade de codificação CU_(d-l) tendo uma profundidade de d-1 não é mais dividida em uma menor profundidade, e uma profundidade codificada para as unidades de codificação, constituindo uma unidade de codificação máxima atual 900, é determinada como sendo d-1, e um tipo de partição da unidade de codificação máxima atual 900 pode ser determinado como N_(dl)xN_(d-l). Além disso, uma vez que a profundidade máxima é d, e uma unidade de codificação mínima 980 tendo uma profundidade mais inferior de d-1 não é mais dividida em uma menor profundidade, informações de divisão para a unidade de codificação mínima 980 não são definidas.
[00248] Uma unidade de dados 999 pode ser uma 'unidade mínima' para a unidade de codificação máxima atual. Uma unidade mínima, de acordo com uma forma de realização da presente invenção, pode ser uma unidade de dados retangulares obtida, dividindo-se uma
70/82 unidade de codificação mínima 980 por 4. Ao realizar a codificação repetidamente, o aparelho para codificar vídeo 100 pode selecionar uma profundidade tendo o menor erro de codificação, comparando erros de codificação, de acordo com profundidades da unidade de codificação 900, para determinar uma profundidade codificada, e definir um tipo de partição correspondente e um modo de previsão como um modo de codificação da profundidade codificada.
[00249] Assim sendo, os menores erros de codificação, de acordo com profundidades, são comparados em todas as profundidades de 1 a d, e uma profundidade tendo o menor erro de codificação pode ser determinada como uma profundidade codificada. A profundidade codificada, o tipo de partição da unidade de previsão, e o modo de previsão podem ser codificados e transmitidos como informações sobre um modo de codificação. Além disso, como uma unidade de codificação é dividida de uma profundidade de 0 a uma profundidade codificada, só informações de divisão da profundidade codificada são definidas como 0, e informações de divisão de profundidades, excluindo a profundidade codificada, são definidas como 1.
[00250] O extrator de informações de codificação e dados de imagem 220 do aparelho para decodificar video 200 pode extrair e usar as informações sobre a profundidade codificada e a unidade de previsão da unidade de codificação 900, para decodificar a partição 912. O aparelho para decodificar vídeo 200 pode determinar uma profundidade, em que informações de divisão são 0, como uma profundidade codificada usando informações de divisão, de acordo com profundidades, e usar informações sobre
71/82 um modo de codificação da profundidade correspondente para decodificação.
[00251] As Figs. 16 a 18 são diagramas para descrever uma relação entre unidades de codificação, unidades de previsão, e unidades de transformação, de acordo com uma forma de realização da presente invenção.
[00252] As unidades de codificação 1010 são unidades de codificação tendo uma estrutura em árvore, correspondendo a profundidades codificadas determinadas pelo aparelho para codificar vídeo 100, em uma unidade de codificação máxima. As unidades de previsão 1060 são partições de unidades de previsão de cada uma das unidades de codificação 1010, e as unidades de transformação 1070 são unidades de transformação de cada uma das unidades de codificação 1010.
[00253] Quando uma profundidade de uma unidade de codificação máxima for 0 nas unidades de codificação 1010, profundidades das unidades de codificação 1012 e 1054 são 1, profundidades das unidades de codificação 1014, 1016, 1018, 1028, 1050 e 1052 são 2, profundidades das unidades de codificação 1020, 1022, 1024, 1026, 1030, 1032 e 1048 são 3, e profundidades das unidades de codificação 1040, 1042, 1044 e 1046 são 4.
[00254] Nas unidades de previsão 1060, algumas unidades de codificação 1014, 1016, 1022, 1032, 1048, 1050, 1052 e 1054 são obtidas, dividindo-se as unidades de codificação nas unidades de codificação 1010. Em outras palavras, os tipos de partição nas unidades de codificação 1014, 1022, 1050 e 1054 têm um tamanho de 2NxN, tipos de partição nas unidades de codificação 1016, 1048 e 1052 têm um tamanho de Nx2N, e um tipo de partição da unidade de codificação 1032 tem um tamanho de NxN. Unidades de
72/82 previsão e partições das unidades de codificação 1010 são menores ou iguais a cada unidade de codificação.
[00255] Transformação ou transformação inversa é realizada em dados de imagem da unidade de codificação 1052 nas unidades de transformação 1070 em uma unidade de dados, que é menor do que a unidade de codificação
1052 .
Além disso, as unidades de codificação
1014, 1016,
1022,
1032,
1048, 1050 e 1052 nas unidades de transformação 1070 são diferentes daquelas nas unidades de previsão 1060, em termos de tamanhos e formatos.
Em outras palavras, os aparelhos para codificar e decodificar video
100 e 200 podem executar previsão intra, estimativa de movimento, compensação de movimento, transformação, transformação inversa, individualmente em uma unidade de dados na mesma unidade de codificação.
[00256] Nesse sentido, codificação é recursivamente executada em cada uma das unidades de codificação tendo uma estrutura hierárquica em cada região de uma unidade de codificação máxima, para determinar uma unidade de codificação ideal e, assim, unidades de codificação tendo uma estrutura em árvore recursiva podem ser obtidas. Informações de codificação podem incluir informações de divisão sobre uma unidade de codificação, informações sobre um tipo de partição, informações sobre um modo de previsão, e informações sobre um tamanho de uma unidade de transformação. A Tabela 1 mostra as informações de codificação, que podem ser definidas pelos aparelhos para codificar e decodificar video 100 e 200.
Tabela 1
Informações de divisão 0 (Codificação em unidade de codificação tendo tamanho de 2Nx2N | Informações de divisão 1 |
73/82
e profundidade atual de d) | ||||
Modo de previsão | Tipo de partição | Tamanho da unidade de transformação | Codificar repetidamente unidades de codificação tendo menor profundidade de d + 1 | |
Intra Inter Ignorar (apenas 2Nx2N) | Tipo de partição simétrico | Tipo de partição assimétrico | Informações de divisão 0 da unidade de transformação | Informações de divisão 1 da unidade de transformação |
2Nx2N 2NxN Nx2N NxN | 2NxnU 2NxnD nLx2N nRx2N | 2Nx2N | NxN (Tipo simétrico) N/2xN/2 (Tipo assimétrico) |
[00257] A unidade de saída 130 do aparelho para codificar vídeo 100 pode emitir as informações de codificação sobre as unidades de codificação tendo uma estrutura em árvore, e o extrator de informações de codificação e dados de imagem 220 do aparelho para decodificar vídeo 200 pode extrair as informações de codificação sobre as unidades de codificação tendo uma estrutura em árvore, a partir de um fluxo de bits recebido.
[00258] Informações de divisão indicam se uma unidade de codificação atual foi dividida em unidades de codificação de menor profundidade. Se informações de divisão de uma profundidade atual d forem 0, uma profundidade, na qual uma unidade de codificação atual não é mais dividida em uma menor profundidade, é uma profundidade codificada e, assim, informações sobre um tipo de partição, modo de previsão, e um tamanho de uma unidade de transformação podem ser definidas para a profundidade codificada. Se a unidade de codificação atual for ainda dividida, de acordo com as informações de divisão,
74/82 codificação é independentemente realizada em quatro unidades de codificação de divisão de menor profundidade.
[00259] Um modo de previsão pode ser aquele de um modo intra, um modo inter, e um modo ignorar. O modo intra e o modo inter
podem ser | definidos em todos os tipos | de | partição, e | o modo | |||
ignorar | é | definido apenas em | um tipo | de | partição tendo um | ||
tamanho | de | 2Nx2N. | |||||
[00260] | As informações | sobre | o tipo de | partição podem | indicar |
tipos de partição simétricos tendo tamanhos de 2Nx2N, 2NxN, Nx2N e NxN, que são obtidos, dividindo-se simetricamente uma altura ou uma largura de uma unidade de previsão, e tipos de partição assimétricos tendo tamanhos de 2NxnU, 2NxnD, nLx2N e nRx2N, que são obtidos, dividindo-se assimetricamente a altura ou largura da unidade de previsão. Os tipos de partição assimétricos tendo os tamanhos de 2NxnU e 2NxnD podem ser obtidos, respectivamente, dividindo-se a altura da unidade de previsão em 1:3 e 3:1, e os tipos de partição assimétricos tendo os tamanhos de nLx2N e nRx2N podem ser obtidos, respectivamente, dividindo-se a largura da unidade de previsão em 1:3 e 3:1.
[00261] O tamanho da unidade de transformação pode ser definido, como sendo de dois tipos no modo intra e de dois tipos no modo inter. Em outras palavras, se informações de divisão da unidade de transformação forem 0, o tamanho da unidade de transformação pode ser 2Nx2N, que é o tamanho da unidade de codificação atual. Se informações de divisão da unidade de transformação forem 1, as unidades de transformação podem ser obtidas, dividindo-se a unidade de codificação atual. Além disso, se um tipo de partição da unidade de codificação atual tendo o tamanho de 2Nx2N for um tipo de partição simétrico, um
75/82 tamanho de uma unidade de transformação pode ser NXN, e se o tipo de partição da unidade de codificação atual for um tipo de partição assimétrica, o tamanho da unidade de transformação pode ser N/2xN/2.
[00262] As informações de codificação sobre unidades de codificação tendo uma estrutura em árvore podem incluir pelo menos uma dentre a unidade de codificação correspondente a uma profundidade codificada, uma unidade de previsão, e uma unidade mínima. A unidade de codificação correspondente à profundidade codificada pode incluir pelo menos uma dentre uma unidade de previsão e uma unidade mínima que contém as mesmas informações de codificação.
[00263] Nesse sentido, é determinado se unidades de dados adjacentes são incluídas na mesma unidade de codificação correspondente à profundidade codificada, comparando as informações de codificação das unidades de dados adjacentes.
Além disso, uma unidade de codificação correspondente a uma profundidade codificada é determinada, usando informações de codificação de uma unidade de dados e, portanto, uma distribuição de profundidades codificadas em uma unidade de codificação máxima pode ser determinada.
[00264] Nesse sentido, se uma unidade de codificação atual for prevista com base em informações de codificação das unidades de dados adjacentes, informações de codificação das unidades de dados em unidades de codificação mais profundas adjacentes unidade de codificação atual podem usadas.
[00265] Como alternativa, se uma ser diretamente referidas unidade de codificação atual for prevista com base em informações de codificação das unidades
76/82 de dados adjacentes, unidades de dados adjacentes à unidade de codificação atual são pesquisadas, usando informações codificadas das unidades de dados, e as unidades de codificação pesquisadas adjacentes podem ser referidas para prever a unidade de codificação atual.
[00266] A Fig. 19 é um diagrama para descrever uma relação entre uma unidade de codificação, uma unidade de previsão e uma unidade de transformação, de acordo com informações do modo de codificação da Tabela 1.
[00267] Uma unidade de codificação máxima 1300 inclui unidades de codificação 1302, 1304, 1306, 1312, 1314, 1316 e 1318 de profundidades codificadas. Aqui, uma vez que a unidade de codificação 1318 é uma unidade de codificação de uma profundidade codificada, informações de divisão podem ser definidas como 0. Informações sobre um tipo de partição da unidade de codificação 1318 tendo um tamanho de 2Nx2N podem ser configuradas para ser aquelas dentre um tipo de partição 1322 tendo um tamanho de 2Nx2N, um tipo de partição 1324 tendo um tamanho de 2NxN, um tipo de partição 1326 tendo um tamanho de Nx2N, um tipo de partição 1328 tendo um tamanho de NxN, um tipo de partição 1332 tendo um tamanho de 2NxnU, um tipo de partição 1334 tendo um tamanho de 2NxnD, um tipo de partição 1336 tendo um tamanho de nLx2N, e um tipo de partição 1338 tendo um tamanho de nRx2N.
[00268] Informações de divisão (sinalizador de tamanho da TU) de uma unidade de transformação são um tipo de um índice de transformação, e um tamanho da unidade de transformação correspondente ao índice de transformação pode variar, de acordo
77/82 com um tipo da unidade de previsão ou da partição da unidade de codificação.
[00269] Por exemplo, quando o tipo de partição for definido para ser simétrico, ou seja, o tipo de partição 1322, 1324, 1326 ou 1328, uma unidade de transformação 1342 tendo um tamanho de 2Nx2N é definido, se as informações de divisão da unidade de
transformação | forem | 0, e | uma unidade de transformação 1344 tendo | |||
um tamanho de | NxN é | definido, | se um sinalizador de tamanho da TU | |||
for 1. | ||||||
[00270] Quando | o | tipo | de | partição for definido | para ser | |
assimétrico, | ou | sej | a, o | tipo | de partição 1332, 1334 | , 1336 ou |
1338, uma unidade de transformação 1352 tendo um tamanho de 2Nx2N é definido, se um sinalizador de tamanho da TU for 0, e uma unidade de transformação 1354 tendo um tamanho de N/2xN/2 é definido, se um sinalizador de tamanho da TU for 1.
[00271] Referindo-se à Fig. 19, o sinalizador de tamanho da TU é um sinalizador tendo um valor de 0 ou 1, mas o sinalizador de tamanho da TU não está limitado a 1 bit, e uma unidade de transformação pode ser dividida hierarquicamente tendo uma estrutura em árvore, enquanto o sinalizador de tamanho da TU aumenta a partir de 0. O sinalizador de tamanho da TU pode ser usado como uma forma de realização do índice de transformação.
[00272] Neste caso, se informações de divisão da unidade de transformação forem usadas junto com o tamanho da unidade de transformação máxima e o tamanho da unidade de transformação mínima, o tamanho da unidade de transformação, que é realmente usado, pode ser expresso. O aparelho para codificar vídeo 100 pode codificar informações de tamanho da unidade de transformação máxima, informações de tamanho da unidade de
78/82 transformação minima, e informações de divisão da unidade de transformação máxima. As informações codificadas de tamanho da unidade de transformação máxima, informações de tamanho de unidade de transformação minima, e informações de divisão da unidade de transformação máxima podem ser inseridas num SPS. 0 aparelho para decodificar video 200 pode realizar decodificação de video, usando as informações de tamanho da unidade de transformação máxima, as informações de tamanho da unidade de transformação minima, e as informações de divisão da unidade de transformação máxima.
[00273] Por exemplo, se uma unidade de codificação atual tiver um tamanho de 64 x 64 e o tamanho da unidade de transformação máxima for de 32 x 32, quando as informações de divisão da unidade de transformação forem 0, um tamanho da unidade de transformação pode ser definido como 32 x
32, quando as informações de divisão da unidade de transformação forem 1, tamanho da unidade de transformação pode ser definido como 16 x
16, e quando as informações de divisão da unidade de transformação forem 2, o tamanho da unidade de transformação pode ser definido como 8x8.
[00274] Como alternativa, se a unidade de codificação atual tiver um tamanho de 32 x 32, e o tamanho da unidade de transformação minima for de 32 x 32, quando as informaçõesde divisão da unidade de transformação forem 1, o tamanhoda unidade de transformação pode ser definido como 32 x 32, e uma vez que o tamanho da unidade de transformação for igual ou maior do que 32 x 32, nenhuma informação de divisão da unidadede transformação pode ser definida.
79/82 [00275] Como alternativa, se a unidade de codificação atual tiver um tamanho de 64 x 64, e as informações de divisão da unidade de transformação máxima forem 1, as informações de divisão da unidade de transformação podem ser definidas como 0 ou 1, e outras informações de divisão da unidade de transformação podem não ser definidas.
[00276] Por conseguinte, se as informações de divisão da unidade de transformação máxima forem definidas como 'MaxTransformSizelndex', se um tamanho da unidade de transformação mínima for definido como 'MinTransformSize', e se um tamanho da unidade de transformação for definido como 'RootTuSize' , quando as informações de divisão da unidade de transformação forem 0, 'CurrMinTuSize', que é um tamanho da unidade de transformação mínima disponível na unidade de codificação atual, pode ser definido pela fórmula (1) abaixo
CurrMinTuSize = max (MinTransformSize, RootTuSize/(2AMaxTransformSizeIndex))... (1) [00277] Em comparação com 'CurrMinTuSize', que é o tamanho da unidade de transformação mínima disponível na unidade de codificação atual, 'RootTuSize', que é um tamanho da unidade de transformação, quando as informações de divisão da unidade de transformação forem 0, pode representar um tamanho da unidade de transformação máxima, que pode ser adotado em um sistema. Em outras palavras, de acordo com a fórmula (1), 'RootTuSize/(2AMaxTransformSizeIndex)' é um tamanho da unidade de transformação, em que 'RootTuSize' é dividido por um número de vezes correspondente às informações de divisão da unidade de transformação máxima, e 'MinTransformSize' é um tamanho da
80/82
unidade de | transformação minima e, portanto, | um | valor menor | ||
entre | ’RootTuSize/ | (2AMaxTransformSizeIndex) | 1 | e | |
'MinTransformSize' pode ser | 'CurrMinTuSize', que | é | o tamanho | da | |
unidade de | transformação | minima disponível | na | unidade | de |
codificação | atual. | ||||
[00278] 0 | 'RootTuSize', | que é o tamanho | da | unidade | de |
transformação máxima, pode | variar, de acordo | com | um modo | de |
previsão.
[0027 9] Por exemplo, se um modo de previsão atual for um modo inter, o 'RootTuSize' pode ser determinado, de acordo com a fórmula (2) abaixo. Na fórmula (1), 'MaxTransformSize' denota um tamanho da unidade de transformação máxima, e 'PUSize' denota um tamanho da unidade de previsão atual.
RootTuSize = min(MaxTransformSize, PUSize)... (2) [00280] Em outras palavras, se o modo de previsão atual for um modo inter, o 'RootTuSize', que é um tamanho da unidade de transformação, quando as informações de divisão da unidade de transformação forem 0, pode ser definido como um valor menor entre o tamanho da unidade de transformação máxima e o tamanho da unidade de previsão atual.
[00281] Se um modo de previsão de uma unidade de partição atual for um modo intra, o 'RootTuSize' pode ser determinado, de acordo com a fórmula (3) abaixo. ' PartitionSize' denota um tamanho da unidade de partição atual.
RootTuSize = min (MaxTransformSize, PartitionSize) ... (3) [00282] Em outras palavras, se o modo de previsão atual for um modo intra, o 'RootTuSize' pode ser definido como um valor menor
81/82 entre o tamanho da unidade de transformação máxima e o tamanho da unidade de partição atual.
[00283] No entanto, o tamanho da unidade de transformação máxima atual 'RootTuSize', variando de acordo com um modo de previsão da unidade de partição, é apenas um exemplo, e um fator para determinar o tamanho da unidade de transformação máxima atual não é por este aspecto limitado.
[00284] Dados de imagem de um domínio espacial são codificados para cada unidade de codificação tendo uma estrutura em árvore, usando um método para codificar vídeo com base em unidades de codificação tendo uma estrutura em árvore, acima descrito com referência às Figs. 7 a 19, e decodificação é executada em cada unidade de codificação máxima, usando um método para decodificar vídeo baseado nas unidades de codificação tendo uma estrutura em árvore e, portanto, os dados de imagem do domínio espacial são restaurados, restaurando, assim, um vídeo, que é um quadro e uma sequência de quadros. 0 vídeo restaurado pode ser reproduzido por um aparelho de reprodução, pode ser armazenado em uma mídia de armazenamento, ou pode ser transmitido através de uma rede.
[00285] As formas de realização da presente invenção podem ser gravadas como programas de computador, e podem ser executadas em computadores digitais de uso geral, que executam os programas usando uma mídia de gravação legível por computador. Suportes magnéticos (por exemplo, ROM, disquetes, discos rígidos etc.) e mídias de gravação ótica (por exemplo, CD-ROMs ou DVDs) são exemplos de mídia de gravação legível por computador.
[00286] Embora essa invenção tenha sido particularmente mostrada e descrita com referência a suas formas de realização preferenciais, deve ficar claro para as pessoas com habilidade
82/82 comum na arte que várias alterações na forma e detalhes podem ser feitas, sem se afastar do espírito e escopo da invenção, como definidos pelas reivindicações acrescentadas. As formas preferenciais de realização devem ser consideradas somente no sentido descritivo, e não para fins de limitação. Portanto, o escopo da invenção é definido, não pela descrição detalhada da invenção, mas pelas reivindicações acrescentadas, e todas as diferenças dentro do escopo devem ser interpretadas como estando incluídas na presente invenção.
Claims (3)
- - REIVINDICAÇÕES -1. MÉTODO PARA DECODIFICAR UM VÍDEO, caracterizado pelo fato dele compreender:receber um fluxo de bits incluindo informações sobre um modo de previsão intra de um bloco atual;quando o fluxo de bits contiver um bit, obter um fluxo de bits do modo de previsão intra, executando decodificação aritmética baseada em contexto naquele bit;quando o fluxo de bits contiver uma pluralidade de bits, obter um fluxo de bits do modo de previsão intra, executando decodificação aritmética baseada em contexto em um primeiro bit do fluxo de bits, e executando decodificação do modo de derivação em pelo menos um bit dentre o fluxo de bits excluindo o primeiro bit; e reconstruir um símbolo indicando uma direção de previsão intra do bloco atual, executando binarização inversa no fluxo de bits do modo de previsão intra, de acordo com um esquema de binarização.
- 2. MÉTODO, de acordo com a reivindicação1, caracterizado pelo fato do modo de previsão intra incluirum modo de previsão de crominância, indicando uma direção de previsão intra para amostras de crominância do bloco atual.
- 3. MÉTODO, de acordo com a reivindicação1, caracterizado pelo fato de ainda compreender:determinar direção de previsão intra do bloco atual usando o símbolo reconstruído; e executar previsão intra no bloco atual, de acordo com a direção de previsão intra determinada.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161502038P | 2011-06-28 | 2011-06-28 | |
BR112013033708A BR112013033708A2 (pt) | 2011-06-28 | 2012-06-27 | método para decodificar um video, através da decodificação de símbolos, método para codificar um vídeo através de codificação de símbolos, aparelho para decodificar um vídeo através da decodificação de símbolos, aparelho para codificar um vídeo através da codificação de símbolos, e mídia de gravação legível por computador |
Publications (1)
Publication Number | Publication Date |
---|---|
BR122015021375A2 true BR122015021375A2 (pt) | 2019-08-27 |
Family
ID=47424665
Family Applications (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BR122015021376A BR122015021376A2 (pt) | 2011-06-28 | 2012-06-27 | aparelho para decodificar um vídeo |
BR122015021375A BR122015021375A2 (pt) | 2011-06-28 | 2012-06-27 | método para decodificar um vídeo |
BR122015021374A BR122015021374A2 (pt) | 2011-06-28 | 2012-06-27 | método para decodificar um vídeo |
BR112013033708A BR112013033708A2 (pt) | 2011-06-28 | 2012-06-27 | método para decodificar um video, através da decodificação de símbolos, método para codificar um vídeo através de codificação de símbolos, aparelho para decodificar um vídeo através da decodificação de símbolos, aparelho para codificar um vídeo através da codificação de símbolos, e mídia de gravação legível por computador |
BR122015021373A BR122015021373A2 (pt) | 2011-06-28 | 2012-06-27 | aparelho para decodificar um vídeo |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BR122015021376A BR122015021376A2 (pt) | 2011-06-28 | 2012-06-27 | aparelho para decodificar um vídeo |
Family Applications After (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BR122015021374A BR122015021374A2 (pt) | 2011-06-28 | 2012-06-27 | método para decodificar um vídeo |
BR112013033708A BR112013033708A2 (pt) | 2011-06-28 | 2012-06-27 | método para decodificar um video, através da decodificação de símbolos, método para codificar um vídeo através de codificação de símbolos, aparelho para decodificar um vídeo através da decodificação de símbolos, aparelho para codificar um vídeo através da codificação de símbolos, e mídia de gravação legível por computador |
BR122015021373A BR122015021373A2 (pt) | 2011-06-28 | 2012-06-27 | aparelho para decodificar um vídeo |
Country Status (27)
Country | Link |
---|---|
US (7) | US9565455B2 (pt) |
EP (7) | EP2849445A1 (pt) |
JP (6) | JP5735710B2 (pt) |
KR (7) | KR101457399B1 (pt) |
CN (9) | CN105516732A (pt) |
AU (6) | AU2012276453B2 (pt) |
BR (5) | BR122015021376A2 (pt) |
CA (2) | CA2840481C (pt) |
CY (2) | CY1119931T1 (pt) |
DK (2) | DK2728866T3 (pt) |
ES (4) | ES2711671T3 (pt) |
HR (2) | HRP20180051T1 (pt) |
HU (4) | HUE044112T2 (pt) |
LT (2) | LT2728866T (pt) |
MX (4) | MX337232B (pt) |
MY (5) | MY160181A (pt) |
NO (1) | NO3064648T3 (pt) |
PH (4) | PH12017500999B1 (pt) |
PL (4) | PL3402206T3 (pt) |
PT (2) | PT2728866T (pt) |
RS (2) | RS58373B1 (pt) |
RU (4) | RU2618511C1 (pt) |
SI (2) | SI2884749T1 (pt) |
TR (1) | TR201902208T4 (pt) |
TW (4) | TWI661716B (pt) |
WO (1) | WO2013002555A2 (pt) |
ZA (5) | ZA201400647B (pt) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ES2711671T3 (es) * | 2011-06-28 | 2019-05-06 | Samsung Electronics Co Ltd | Procedimiento de decodificación de vídeo usando decodificación |
SG187781A1 (en) * | 2011-07-18 | 2013-03-28 | Panasonic Corp | Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus |
CN106101727B (zh) | 2011-08-04 | 2019-10-08 | 寰发股份有限公司 | 基于上下文自适应二进制算术编码的方法及装置 |
EP2779648A4 (en) | 2011-11-07 | 2016-06-01 | Panasonic Ip Corp America | PICTURE CODING METHOD, PICTURE DECODING METHOD, PICTURE CODING DEVICE, PICTURE DECODING DEVICE, AND PICTURE CODING / DECODING DEVICE |
EP3637621B1 (en) | 2012-04-15 | 2023-06-07 | Samsung Electronics Co., Ltd. | Video decoding method using parameter update for de-binarization of entropy coded transformation coefficient, encoding apparatus using same for binarization |
GB2513111A (en) * | 2013-04-08 | 2014-10-22 | Sony Corp | Data encoding and decoding |
US9930348B2 (en) * | 2014-03-14 | 2018-03-27 | Qualcomm Incorporated | Coefficient level coding in a video coding process |
CN110691244B (zh) | 2014-06-20 | 2022-07-08 | 寰发股份有限公司 | 视频编码中的语法的二进制化和上下文自适应编码的方法和装置 |
US20160044339A1 (en) * | 2014-08-07 | 2016-02-11 | Qualcomm Incorporated | System and method for reordering of prefixes and suffixes in variable length coding to increase throughput |
CN107211136B (zh) * | 2015-01-30 | 2019-10-29 | 联发科技股份有限公司 | 具有大字母表的源样本的熵编码与熵解码的方法 |
KR102473209B1 (ko) * | 2015-12-14 | 2022-12-02 | 삼성전자주식회사 | 스토리지 장치 및 스토리지 장치의 동작 방법 |
US10142629B2 (en) * | 2015-12-28 | 2018-11-27 | Mediatek Inc. | Method and apparatus for entropy coding in image compression |
US10708164B2 (en) * | 2016-05-03 | 2020-07-07 | Qualcomm Incorporated | Binarizing secondary transform index |
EP3496401A1 (en) * | 2017-12-05 | 2019-06-12 | Thomson Licensing | Method and apparatus for video encoding and decoding based on block shape |
KR102527184B1 (ko) * | 2018-03-29 | 2023-05-03 | 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. | 변환 계수 블록 코딩 |
AU2018204786A1 (en) * | 2018-06-29 | 2020-01-16 | Canon Kabushiki Kaisha | Method, apparatus and system for encoding and decoding a transformed block of video samples |
PT3799690T (pt) * | 2018-07-11 | 2023-12-22 | Huawei Tech Co Ltd | Sinalização intramodo de luma |
WO2020101321A1 (ko) | 2018-11-12 | 2020-05-22 | 엘지전자 주식회사 | 고주파 제로잉을 기반으로 변환 계수를 코딩하는 방법 및 그 장치 |
KR20230154085A (ko) * | 2018-12-17 | 2023-11-07 | 엘지전자 주식회사 | 고주파 제로잉을 기반으로 변환 계수 스캔 순서를 결정하는 방법 및 장치 |
US11856196B2 (en) | 2019-01-13 | 2023-12-26 | Lg Electronics Inc. | Method and device for processing video signal |
US10986334B2 (en) * | 2019-03-09 | 2021-04-20 | Tencent America LLC | Method and apparatus for video coding |
CN117278752A (zh) | 2019-03-12 | 2023-12-22 | Lg 电子株式会社 | 基于变换的图像编译方法及其装置 |
JP7332873B2 (ja) * | 2019-09-10 | 2023-08-24 | 富士通株式会社 | 符号化回路、復号化回路、符号化方法、復号化方法、伝送装置、及び光伝送システム |
CN110995274B (zh) * | 2019-11-18 | 2022-02-08 | 中国科学院自动化研究所 | 一种解压缩方法及装置 |
JP7388900B2 (ja) * | 2019-12-06 | 2023-11-29 | 日本放送協会 | 符号化装置、復号装置、及びプログラム |
CN114079774B (zh) * | 2020-08-21 | 2024-05-31 | 北京三星通信技术研究有限公司 | 帧间预测信息的编解码方法及装置 |
CN114615504B (zh) * | 2020-12-04 | 2024-09-17 | 腾讯科技(深圳)有限公司 | 视频解码方法、视频编码方法、装置及设备 |
CN113422964B (zh) * | 2021-06-04 | 2024-07-30 | 绍兴市北大信息技术科创中心 | 一种串长度参数编解码方法和装置 |
CN113518222B (zh) * | 2021-06-07 | 2022-11-08 | 同济大学 | 不同类型串采用不同长度二值化方案的编解码方法及装置 |
JP2023026969A (ja) * | 2021-08-16 | 2023-03-01 | キヤノン株式会社 | 撮像システム、サーバ装置、サーバ装置の制御方法、プログラム、および記憶媒体 |
Family Cites Families (64)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2755527B1 (fr) * | 1996-11-07 | 1999-01-08 | Thomson Multimedia Sa | Procede de prediction compensee en mouvement et codeur utilisant un tel procede |
US6859840B2 (en) | 2001-01-29 | 2005-02-22 | Kasenna, Inc. | Prefix caching for media objects |
PT1467491E (pt) * | 2002-05-02 | 2007-03-30 | Fraunhofer Ges Forschung | Codificação aritmética de coeficientes de transformação |
DE10301362B4 (de) * | 2003-01-16 | 2005-06-09 | GEMAC-Gesellschaft für Mikroelektronikanwendung Chemnitz mbH | Blockdatenkompressionssystem, bestehend aus einer Kompressionseinrichtung und einer Dekompressionseinrichtung, und Verfahren zur schnellen Blockdatenkompression mit Multi-Byte-Suche |
US6900748B2 (en) * | 2003-07-17 | 2005-05-31 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Method and apparatus for binarization and arithmetic coding of a data value |
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 |
US7599435B2 (en) * | 2004-01-30 | 2009-10-06 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Video frame encoding and decoding |
JP4418762B2 (ja) * | 2004-05-07 | 2010-02-24 | キヤノン株式会社 | 画像符号化装置及び画像復号装置及びそれらの制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体 |
DE102004049156B4 (de) | 2004-10-08 | 2006-07-13 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Codierschema für einen ein zeitlich veränderliches Graphikmodell darstellenden Datenstrom |
KR100647295B1 (ko) * | 2004-11-10 | 2006-11-23 | 삼성전자주식회사 | 비디오 디코더에서의 인접 정보 처리 장치 및 방법과 그방법을 수행하기 위한 프로그램이 저장된 기록 매체 |
US7430238B2 (en) * | 2004-12-10 | 2008-09-30 | Micronas Usa, Inc. | Shared pipeline architecture for motion vector prediction and residual decoding |
US20060153293A1 (en) * | 2005-01-12 | 2006-07-13 | Ulead Systems, Inc. | Method for transcoding compressed data |
KR100703776B1 (ko) | 2005-04-19 | 2007-04-06 | 삼성전자주식회사 | 향상된 코딩 효율을 갖는 컨텍스트 기반 적응적 산술 코딩및 디코딩 방법과 이를 위한 장치, 이를 포함하는 비디오코딩 및 디코딩 방법과 이를 위한 장치 |
KR100718134B1 (ko) * | 2005-07-21 | 2007-05-14 | 삼성전자주식회사 | 비트율에 적응적인 영상 데이터 이진 산술 부호화/복호화장치 및 방법 |
CN100466739C (zh) * | 2005-10-12 | 2009-03-04 | 华为技术有限公司 | Cabac解码系统及方法 |
KR100873636B1 (ko) * | 2005-11-14 | 2008-12-12 | 삼성전자주식회사 | 단일 부호화 모드를 이용하는 영상 부호화/복호화 방법 및장치 |
WO2007065351A1 (en) | 2005-12-05 | 2007-06-14 | Huawei Technologies Co., Ltd. | Binarizing method and device thereof |
CN1984336A (zh) | 2005-12-05 | 2007-06-20 | 华为技术有限公司 | 一种二进制化方法及装置 |
US7778472B2 (en) * | 2006-03-27 | 2010-08-17 | Qualcomm Incorporated | Methods and systems for significance coefficient coding in video compression |
FR2900004A1 (fr) * | 2006-04-18 | 2007-10-19 | Thomson Licensing Sas | Procede et dispositif de decodage arithmetique |
US7262722B1 (en) * | 2006-06-26 | 2007-08-28 | Intel Corporation | Hardware-based CABAC decoder with parallel binary arithmetic decoding |
CN101175210B (zh) * | 2006-10-30 | 2010-08-11 | 中国科学院计算技术研究所 | 用于视频预测残差系数解码的熵解码方法及熵解码装置 |
JP4739167B2 (ja) * | 2006-10-31 | 2011-08-03 | キヤノン株式会社 | 正規化処理装置 |
JP4878262B2 (ja) | 2006-10-31 | 2012-02-15 | キヤノン株式会社 | エントロピー符号化装置 |
JP4825644B2 (ja) | 2006-11-14 | 2011-11-30 | ルネサスエレクトロニクス株式会社 | 画像復号装置、画像符号化装置、およびシステムlsi |
BRPI0720806B1 (pt) * | 2007-01-18 | 2023-03-28 | Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. | Corrente de dados de vídeo de qualidade escalonável |
CN101933331B (zh) * | 2007-09-06 | 2014-04-09 | 日本电气株式会社 | 视频编码装置、视频编码方法、视频解码方法 |
US8782379B2 (en) * | 2007-09-27 | 2014-07-15 | Qualcomm Incorporated | H.264 video decoder CABAC core optimization techniques |
US8938009B2 (en) * | 2007-10-12 | 2015-01-20 | Qualcomm Incorporated | Layered encoded bitstream structure |
US9008171B2 (en) | 2008-01-08 | 2015-04-14 | Qualcomm Incorporated | Two pass quantization for CABAC coders |
US8891615B2 (en) * | 2008-01-08 | 2014-11-18 | Qualcomm Incorporated | Quantization based on rate-distortion modeling for CABAC coders |
US8509555B2 (en) * | 2008-03-12 | 2013-08-13 | The Boeing Company | Error-resilient entropy coding for partial embedding and fine grain scalability |
US8705622B2 (en) | 2008-04-10 | 2014-04-22 | Qualcomm Incorporated | Interpolation filter support for sub-pixel resolution in video coding |
JP2009272739A (ja) * | 2008-05-01 | 2009-11-19 | Olympus Corp | 撮像装置 |
KR20090129926A (ko) | 2008-06-13 | 2009-12-17 | 삼성전자주식회사 | 영상 부호화 방법 및 그 장치, 영상 복호화 방법 및 그 장치 |
JP5083579B2 (ja) * | 2008-06-23 | 2012-11-28 | 日本電気株式会社 | 復号処理装置、プロセッサ、電子機器、復号処理方法、及び復号処理プログラム |
CN102187583B (zh) * | 2008-08-19 | 2013-09-11 | 汤姆森特许公司 | 基于上下文的自适应二进制算术编码(cabac)的视频流兼容性 |
US20100054326A1 (en) * | 2008-08-26 | 2010-03-04 | General Instrument Corporation | Method and apparatus for detecting start and end of a video sequence |
EP2164176A1 (en) * | 2008-09-12 | 2010-03-17 | Thomson Licensing | Method for lossless compressing prefix-suffix-codes, method for decompressing a bit sequence representing integers or symbols encoded in compressed prefix-suffix-codes and storage medium or signal carrying compressed prefix-suffix-codes |
JP2010200281A (ja) * | 2009-02-27 | 2010-09-09 | Josho Gakuen | 復号装置、及びプログラム |
TWI387314B (zh) * | 2009-03-10 | 2013-02-21 | Univ Nat Central | Image processing apparatus and method thereof |
WO2011002914A1 (en) * | 2009-06-30 | 2011-01-06 | Massachusetts Institute Of Technology | System and method for providing high throughput entropy coding using syntax element partitioning |
US8948241B2 (en) | 2009-08-07 | 2015-02-03 | Qualcomm Incorporated | Signaling characteristics of an MVC operation point |
WO2011050641A1 (en) | 2009-10-28 | 2011-05-05 | Mediatek Singapore Pte. Ltd. | Video coding methods and video encoders and decoders with localized weighted prediction |
US20110110591A1 (en) | 2009-11-09 | 2011-05-12 | Ming-Hwa Sheu | Multi-point image labeling method |
JP4819940B2 (ja) * | 2009-12-04 | 2011-11-24 | 株式会社日立国際電気 | 動画像符号化装置 |
CN101771879B (zh) * | 2010-01-28 | 2011-08-17 | 清华大学 | 基于cabac的并行归一化编码实现电路及编码方法 |
CN103119849B (zh) | 2010-04-13 | 2017-06-16 | 弗劳恩霍夫应用研究促进协会 | 概率区间分割编码器和译码器 |
KR102574591B1 (ko) * | 2010-05-12 | 2023-09-06 | 인터디지털 매디슨 페턴트 홀딩스 에스에이에스 | 통합된 유효성 맵 코딩을 위한 방법 및 장치 |
PL3104616T3 (pl) | 2010-07-09 | 2017-10-31 | Samsung Electronics Co Ltd | Urządzenie do entropijnego dekodowania współczynników przekształcenia |
CN102014283A (zh) * | 2010-11-30 | 2011-04-13 | 上海大学 | 一阶差分前缀表示的图像数据无损压缩的编码方法 |
US9042440B2 (en) * | 2010-12-03 | 2015-05-26 | Qualcomm Incorporated | Coding the position of a last significant coefficient within a video block based on a scanning order for the block in video coding |
US8976861B2 (en) * | 2010-12-03 | 2015-03-10 | Qualcomm Incorporated | Separately coding the position of a last significant coefficient of a video block in video coding |
JP5041060B2 (ja) * | 2010-12-27 | 2012-10-03 | ソニー株式会社 | 符号化装置及び符号化方法 |
WO2012134246A2 (ko) * | 2011-04-01 | 2012-10-04 | 엘지전자 주식회사 | 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치 |
CN107529708B (zh) | 2011-06-16 | 2019-05-07 | Ge视频压缩有限责任公司 | 解码器、编码器、解码和编码视频的方法及存储介质 |
ES2711671T3 (es) * | 2011-06-28 | 2019-05-06 | Samsung Electronics Co Ltd | Procedimiento de decodificación de vídeo usando decodificación |
SG187781A1 (en) * | 2011-07-18 | 2013-03-28 | Panasonic Corp | Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus |
US9154792B2 (en) * | 2011-11-08 | 2015-10-06 | Qualcomm Incorporated | Progressive coding of position of last significant coefficient |
US9357185B2 (en) * | 2011-11-08 | 2016-05-31 | Qualcomm Incorporated | Context optimization for last significant coefficient position coding |
US9253481B2 (en) * | 2012-01-13 | 2016-02-02 | Qualcomm Incorporated | Determining contexts for coding transform coefficient data in video coding |
US9565435B2 (en) * | 2012-02-04 | 2017-02-07 | Google Technology Holdings LLC | Devices and methods for context reduction in last significant coefficient position coding |
US9237344B2 (en) * | 2012-03-22 | 2016-01-12 | Qualcomm Incorporated | Deriving context for last position coding for video coding |
US9621921B2 (en) * | 2012-04-16 | 2017-04-11 | Qualcomm Incorporated | Coefficient groups and coefficient coding for coefficient scans |
-
2012
- 2012-06-27 ES ES12804190T patent/ES2711671T3/es active Active
- 2012-06-27 RU RU2016117406A patent/RU2618511C1/ru active
- 2012-06-27 MY MYPI2016001182A patent/MY160181A/en unknown
- 2012-06-27 AU AU2012276453A patent/AU2012276453B2/en active Active
- 2012-06-27 CN CN201510919040.0A patent/CN105516732A/zh active Pending
- 2012-06-27 MY MYPI2016001180A patent/MY160179A/en unknown
- 2012-06-27 EP EP20140192917 patent/EP2849445A1/en not_active Ceased
- 2012-06-27 LT LTEP12804190.2T patent/LT2728866T/lt unknown
- 2012-06-27 MY MYPI2016001179A patent/MY160178A/en unknown
- 2012-06-27 CN CN201711346630.4A patent/CN107820098B/zh active Active
- 2012-06-27 HU HUE12804190A patent/HUE044112T2/hu unknown
- 2012-06-27 DK DK12804190.2T patent/DK2728866T3/en active
- 2012-06-27 EP EP12804190.2A patent/EP2728866B1/en active Active
- 2012-06-27 RU RU2014102581/07A patent/RU2586321C2/ru active
- 2012-06-27 EP EP15194151.5A patent/EP3013054A1/en not_active Ceased
- 2012-06-27 BR BR122015021376A patent/BR122015021376A2/pt not_active Application Discontinuation
- 2012-06-27 MX MX2015004485A patent/MX337232B/es unknown
- 2012-06-27 RS RS20190212A patent/RS58373B1/sr unknown
- 2012-06-27 PT PT12804190T patent/PT2728866T/pt unknown
- 2012-06-27 CN CN201711346186.6A patent/CN107835431B/zh active Active
- 2012-06-27 RS RS20180026A patent/RS56754B1/sr unknown
- 2012-06-27 CN CN201510919313.1A patent/CN105357541A/zh active Pending
- 2012-06-27 CA CA2840481A patent/CA2840481C/en active Active
- 2012-06-27 CA CA2975695A patent/CA2975695C/en active Active
- 2012-06-27 EP EP17203278.1A patent/EP3306939B1/en active Active
- 2012-06-27 BR BR122015021375A patent/BR122015021375A2/pt not_active Application Discontinuation
- 2012-06-27 MX MX2014000172A patent/MX2014000172A/es active IP Right Grant
- 2012-06-27 CN CN201280042529.9A patent/CN103782597A/zh active Pending
- 2012-06-27 JP JP2014518796A patent/JP5735710B2/ja active Active
- 2012-06-27 CN CN201711346005.XA patent/CN107835421B/zh active Active
- 2012-06-27 LT LTEP15153506.9T patent/LT2884749T/lt unknown
- 2012-06-27 PL PL18180918T patent/PL3402206T3/pl unknown
- 2012-06-27 PL PL12804190T patent/PL2728866T3/pl unknown
- 2012-06-27 US US14/130,052 patent/US9565455B2/en active Active
- 2012-06-27 ES ES17203278T patent/ES2816059T3/es active Active
- 2012-06-27 HU HUE17203278A patent/HUE051665T2/hu unknown
- 2012-06-27 PL PL15153506T patent/PL2884749T3/pl unknown
- 2012-06-27 TR TR2019/02208T patent/TR201902208T4/tr unknown
- 2012-06-27 WO PCT/KR2012/005087 patent/WO2013002555A2/ko active Application Filing
- 2012-06-27 MY MYPI2013004676A patent/MY160326A/en unknown
- 2012-06-27 DK DK15153506.9T patent/DK2884749T3/en active
- 2012-06-27 CN CN201510919253.3A patent/CN105357540B/zh active Active
- 2012-06-27 PL PL17203278T patent/PL3306939T3/pl unknown
- 2012-06-27 CN CN201510919014.8A patent/CN105554510B/zh active Active
- 2012-06-27 MX MX2015004496A patent/MX337230B/es unknown
- 2012-06-27 BR BR122015021374A patent/BR122015021374A2/pt not_active Application Discontinuation
- 2012-06-27 PT PT151535069T patent/PT2884749T/pt unknown
- 2012-06-27 HU HUE15153506A patent/HUE038521T2/hu unknown
- 2012-06-27 SI SI201231183T patent/SI2884749T1/en unknown
- 2012-06-27 HU HUE18180918A patent/HUE050522T2/hu unknown
- 2012-06-27 EP EP18180918.7A patent/EP3402206B1/en active Active
- 2012-06-27 ES ES15153506.9T patent/ES2655917T3/es active Active
- 2012-06-27 BR BR112013033708A patent/BR112013033708A2/pt not_active Application Discontinuation
- 2012-06-27 SI SI201231539T patent/SI2728866T1/sl unknown
- 2012-06-27 CN CN201711346980.0A patent/CN107835432B/zh active Active
- 2012-06-27 KR KR20120069481A patent/KR101457399B1/ko active IP Right Grant
- 2012-06-27 ES ES18180918T patent/ES2797423T3/es active Active
- 2012-06-27 BR BR122015021373A patent/BR122015021373A2/pt not_active Application Discontinuation
- 2012-06-27 MY MYPI2016001181A patent/MY160180A/en unknown
- 2012-06-27 EP EP15194152.3A patent/EP3021591A1/en not_active Withdrawn
- 2012-06-27 EP EP15153506.9A patent/EP2884749B1/en active Active
- 2012-06-28 TW TW106146130A patent/TWI661716B/zh active
- 2012-06-28 TW TW106124837A patent/TWI615020B/zh active
- 2012-06-28 TW TW101123244A patent/TWI562618B/zh active
- 2012-06-28 TW TW105134471A patent/TWI597975B/zh active
-
2014
- 2014-01-07 MX MX2015004494A patent/MX336876B/es unknown
- 2014-01-27 ZA ZA2014/00647A patent/ZA201400647B/en unknown
- 2014-05-07 KR KR1020140054356A patent/KR101560549B1/ko active IP Right Grant
- 2014-10-29 KR KR1020140148731A patent/KR101560550B1/ko active IP Right Grant
-
2015
- 2015-01-22 US US14/603,236 patent/US9247270B2/en active Active
- 2015-01-22 US US14/603,218 patent/US9258571B2/en active Active
- 2015-03-02 US US14/635,725 patent/US9668001B2/en active Active
- 2015-03-02 US US14/635,628 patent/US9554157B2/en active Active
- 2015-03-23 KR KR1020150040055A patent/KR101560551B1/ko active IP Right Grant
- 2015-03-23 KR KR1020150040056A patent/KR101560552B1/ko active IP Right Grant
- 2015-03-23 KR KR1020150040057A patent/KR101835641B1/ko active IP Right Grant
- 2015-04-16 JP JP2015084082A patent/JP5873200B2/ja active Active
- 2015-04-16 JP JP2015084086A patent/JP5873203B2/ja active Active
- 2015-04-16 JP JP2015084085A patent/JP5873202B2/ja active Active
- 2015-04-16 JP JP2015084083A patent/JP5934413B2/ja active Active
- 2015-04-16 JP JP2015084084A patent/JP5873201B2/ja active Active
- 2015-04-23 ZA ZA2015/02762A patent/ZA201502762B/en unknown
- 2015-04-23 ZA ZA2015/02760A patent/ZA201502760B/en unknown
- 2015-04-23 ZA ZA2015/02761A patent/ZA201502761B/en unknown
- 2015-04-23 ZA ZA2015/02759A patent/ZA201502759B/en unknown
-
2016
- 2016-03-01 NO NO16158000A patent/NO3064648T3/no unknown
- 2016-07-19 AU AU2016206259A patent/AU2016206259B2/en active Active
- 2016-07-19 AU AU2016206261A patent/AU2016206261B2/en active Active
- 2016-07-19 AU AU2016206260A patent/AU2016206260B2/en active Active
- 2016-07-19 AU AU2016206258A patent/AU2016206258B2/en active Active
-
2017
- 2017-04-17 RU RU2017113107A patent/RU2654491C1/ru active
- 2017-05-02 US US15/584,523 patent/US10091510B2/en active Active
- 2017-05-30 PH PH12017500999A patent/PH12017500999B1/en unknown
- 2017-05-30 PH PH12017501000A patent/PH12017501000B1/en unknown
- 2017-05-30 PH PH12017501001A patent/PH12017501001A1/en unknown
- 2017-05-30 PH PH12017501002A patent/PH12017501002A1/en unknown
-
2018
- 2018-01-04 AU AU2018200070A patent/AU2018200070B2/en active Active
- 2018-01-11 HR HRP20180051TT patent/HRP20180051T1/hr unknown
- 2018-02-22 CY CY20181100209T patent/CY1119931T1/el unknown
- 2018-02-28 KR KR1020180024732A patent/KR101917239B1/ko active IP Right Grant
- 2018-04-13 RU RU2018113469A patent/RU2689135C1/ru active
- 2018-08-31 US US16/119,706 patent/US10547842B2/en active Active
-
2019
- 2019-02-14 HR HRP20190301TT patent/HRP20190301T1/hr unknown
- 2019-02-28 CY CY20191100255T patent/CY1121340T1/el unknown
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
BR122015021375A2 (pt) | método para decodificar um vídeo | |
ES2657197T3 (es) | Aparato de decodificación de video con intra predicción | |
BR122019014179B1 (pt) | método de decodificação de vídeo | |
JP2017212751A (ja) | 映像の符号化方法及び装置 | |
BR112012025920B1 (pt) | Método de decodificação de vídeo e aparelho de decodificação de vídeo usando unidades de previsão com base em unidades de codificação determinadas de acordo com uma estrutura de árvore | |
BR122018069200B1 (pt) | aparelho de decodificação de vídeo | |
BR122021004622B1 (pt) | Método para decodificar um vídeo | |
BR122020014021B1 (pt) | Aparelho para decodificar um vídeo | |
BR112014018115B1 (pt) | Método de decodificar um vídeo | |
BR112013017395B1 (pt) | Método decodificador de vídeo, e método codificador de vídeo | |
BR122018010479B1 (pt) | Aparelho para decodificar vídeo | |
KR20150022939A (ko) | 영상 복호화 방법 | |
KR20150022941A (ko) | 영상 복호화 방법 | |
BR122020001936B1 (pt) | método de decodificar um vídeo | |
KR20140142195A (ko) | 영상의 부호화 방법 및 장치, 영상 복호화 방법 및 장치 | |
KR20150022940A (ko) | 영상 복호화 방법 | |
BR122021007868A2 (pt) | Método para decodificar um vídeo | |
BR122021004836B1 (pt) | Método para decodificar um vídeo codificado | |
BR122021007878A2 (pt) | Aparelho configurado para decodificar um vídeo | |
BR122021007870A2 (pt) | Aparelho configurado para decodificar um vídeo |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
B06F | Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette] | ||
B03A | Publication of a patent application or of a certificate of addition of invention [chapter 3.1 patent gazette] | ||
B15K | Others concerning applications: alteration of classification |
Free format text: A CLASSIFICACAO ANTERIOR ERA: H04N 7/00 Ipc: H04N 19/13 (2014.01) |
|
B07A | Application suspended after technical examination (opinion) [chapter 7.1 patent gazette] | ||
B09B | Patent application refused [chapter 9.2 patent gazette] |