BR122019014179B1 - método de decodificação de vídeo - Google Patents

método de decodificação de vídeo Download PDF

Info

Publication number
BR122019014179B1
BR122019014179B1 BR122019014179-7A BR122019014179A BR122019014179B1 BR 122019014179 B1 BR122019014179 B1 BR 122019014179B1 BR 122019014179 A BR122019014179 A BR 122019014179A BR 122019014179 B1 BR122019014179 B1 BR 122019014179B1
Authority
BR
Brazil
Prior art keywords
unit
coding
encoding
size
depth
Prior art date
Application number
BR122019014179-7A
Other languages
English (en)
Inventor
Tammy Lee
Jianle Chen
Original Assignee
Samsung Electronics Co., Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co., Ltd filed Critical Samsung Electronics Co., Ltd
Publication of BR122019014179B1 publication Critical patent/BR122019014179B1/pt

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • H04N19/426Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements using memory downsizing methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods 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 bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods 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

Landscapes

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

Abstract

Métodos e aparelhos para codificação e decodificação de vídeo são fornecidos. O método para codificar vídeo inclui: codificar um vídeo com base em unidades de dados com uma estrutura hierárquica; determinação de um modelo de contexto usado para codificação por entropia de um elemento de sintaxe de uma unidade de dados, com base em pelo menos uma parte de informações adicionais das unidades de dados; e codificação por entropia do elemento de sintaxe usando o modelo de contexto determinado.

Description

Domínio Técnico
[0001] A presente invenção refere-se à codificação edecodificação de um vídeo e, mais particularmente, a elementos de sintaxe de codificação por entropia e decodificação por entropia formando dados de vídeo.
Fundamentos da Arte
[0002] Em métodos de compressão de imagens, tais comocodificação avançada de vídeo (AVC) em MPEG-1, MPEG-2, e MPEG-4 H.264/MPEG-4, uma imagem é dividida em uma pluralidade de blocos tendo predeterminados tamanhos e, então, dados residuais dos blocos são obtidos via previsão inter ou previsão intra. Os dados residuais são comprimidos através de transformação, quantização, digitalização, codificação por comprimento de percurso (RLE) e codificação por entropia. Durante a codificação por entropia, um fluxo de bits é emitido por elementos de sintaxe de codificação por entropia, como coeficientes de transformada discreta de cosseno (DCT) ou vetores de movimento. Em termos de um decodificador, elementos de sintaxe são extraídos de um fluxo de bits, e decodificação é executada com base nos elementos de sintaxe extraídos.
Descrição Detalhada da Invenção Problema Técnico
[0003] A presente invenção fornece um método e aparelho paracombinar informações adicionais, incluindo elementos de sintaxe para selecionar um modelo de contexto a ser usado para codificar por entropia os elementos de sintaxe, codificando e decodificando por entropia, desse modo, eficientemente os elementos de sintaxe.
Solução Técnica
[0004] De acordo com uma ou mais formas de realização da presente invenção, é fornecido um modelo de contexto para codificar por entropia um elemento de sintaxe de uma unidade de dados atual, com base em um elemento de sintaxe disponível da unidade de dados atual.Efeitos Vantajosos
[0005] De acordo com uma ou mais formas de realização da presente invenção, um tamanho necessário de uma memória para armazenar informações periféricas pré-restauradas pode ser reduzido, selecionando um modelo de contexto com base em informações sobre uma unidade de dados, incluindo um elemento de sintaxe atual, em vez de usar as informações periféricas previamente restauradas.
Breve Descrição dos Desenhos
[0006] A Fig. 1 é um diagrama de blocos de um aparelho para codificar vídeo, de acordo com uma forma de realização da presente invenção.
[0007] 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.
[0008] A Fig. 3 é um diagrama para descrever um conceito de unidades de codificação, de acordo com uma forma de realização da presente invenção.
[0009] A Fig. 4 é um diagrama de blocos detalhado de um codificador de imagens, com base em unidades de codificação tendo uma estrutura hierárquica, de acordo com uma forma de realização da presente invenção.
[00010] A Fig. 5 é um diagrama de blocos detalhado de um decodificador de imagens, com base em unidades de codificação tendo uma estrutura hierárquica, de acordo com uma forma de realização da presente invenção.
[00011] A Fig. 6 é um diagrama ilustrando unidades de codificação mais profundas, de acordo com profundidades e partições, de acordo com uma forma de realização da presente invenção.
[00012] A Fig. 7 é 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.
[00013] A Fig. 8 é um diagrama para descrever informações de codificação de unidades de codificação, que correspondem a uma profundidade codificada, de acordo com uma forma de realização da presente invenção.
[00014] A Fig. 9 é um diagrama das unidades de codificação mais profundas, de acordo com profundidades, de acordo com uma forma de realização da presente invenção.
[00015] As Figs. 10 a 12 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.
[00016] A Fig. 13 é um diagrama para descrever uma relação entre uma unidade de codificação, uma unidade de previsão ou uma partição, e uma unidade de transformação, de acordo com informações sobre modo de codificação da Tabela 1.
[00017] A Fig. 14 é um diagrama de blocos de um aparelho de codificação por entropia, de acordo com uma forma de realização da presente invenção.
[00018] A Fig. 15 é um diagrama de blocos de um modelador de contexto da Fig. 14.
[00019] A Fig. 16 é um diagrama para descrever uma unidade de dados tendo uma estrutura hierárquica e informações de divisão da unidade de dados tendo uma estrutura hierárquica, de acordo com uma forma de realização da presente invenção.
[00020] As Figs. 17A e 17B são diagramas de referência dos símbolos indicando uma estrutura hierárquica de unidades de dados, de acordo com formas de realização da presente invenção.
[00021] As Figs. 18A e 18B são diagramas de índices de contexto para determinar um modelo de contexto, de acordo com uma combinação de informações adicionais, de acordo com formas de realização da presente invenção.
[00022] A Fig. 19 é um diagrama de referência de um modelo de contexto, de acordo com uma forma de realização da presente invenção.
[00023] A Fig. 20 é um gráfico de um valor de probabilidade de um símbolo mais provável (MPS), de acordo com uma forma de realização da presente invenção.
[00024] A Fig. 21 é um diagrama para descrever uma operação de codificação aritmética binária, realizada por um mecanismo de codificação normal da Fig. 14.
[00025] A Fig. 22 é um fluxograma que ilustra um método para codificação por entropia, de acordo com uma forma de realização da presente invenção.
[00026] A Fig. 23 é um diagrama de blocos de um aparelho de decodificação por entropia, de acordo com uma forma de realização da presente invenção.
[00027] A Fig. 24 é um fluxograma que ilustra um método para decodificação por entropia, de acordo com uma forma de realização da presente invenção.
Melhor Modo
[00028] De acordo com um aspecto da presente invenção, é fornecido um método para codificar vídeo, incluindo: codificar um vídeo baseado em unidades de dados com uma estrutura hierárquica; determinar um modelo de contexto usado para codificação por entropia de um primeiro elemento de sintaxe de uma unidade de dados atual a ser codificado por entropia, baseado em pelo menos um segundo elemento de sintaxe da unidade de dados atual, em que pelo menos um segundo elemento de sintaxe é utilizável e diferente do primeiro elemento de sintaxe da unidade de dados atual; e codificar por entropia o primeiro elemento de sintaxe da unidade de dados atual, usando o modelo de contexto determinado.
[00029] De acordo com outro aspecto da presente invenção, é fornecido um aparelho para codificar vídeo, incluindo: um codificador hierárquico para codificar um vídeo baseado em unidades de dados com uma estrutura hierárquica; e um codificador por entropia para determinar um modelo de contexto usado para codificação por entropia de um primeiro elemento de sintaxe de uma unidade de dados atual a ser codificado por entropia com base em pelo menos um segundo elemento de sintaxe da unidade de dados atual, em que pelo menos um segundo elemento de sintaxe é utilizável e diferente do primeiro elemento de sintaxe da unidade de dados atual, e codificar por entropia o primeiro elemento de sintaxe da unidade de dados atual usando o modelo de contexto determinado.
[00030] De acordo com outro aspecto da presente invenção, é fornecido um método para decodificar vídeo, incluindo: extração de elementos de sintaxe de um quadro codificado com base em unidades de dados tendo uma estrutura hierárquica, ao analisar um fluxo de bits codificado; determinar um modelo de contexto usado para decodificar por entropia um primeiro elemento de sintaxe de uma unidade de dados atual a ser decodificada por entropia baseado em pelo menos um segundo elemento de sintaxe da unidade de dados atual, em que pelo menos um segundo elemento de sintaxe é utilizável e diferente do primeiro elemento de sintaxe da unidade de dados atual; e decodificar por entropia o primeiro elemento de sintaxe usando o modelo de contexto determinado.
[00031] De acordo com outro aspecto da presente invenção, é fornecido um aparelho para decodificar vídeo, incluindo: um extrator de elemento de sintaxe para extrair elementos de sintaxe de um quadro codificado com base em unidades de dados tendo uma estrutura hierárquica, ao analisar um fluxo de bits codificado; e um decodificador por entropia para determinar um modelo de contexto usado para decodificar por entropia um primeiro elemento de sintaxe de uma unidade de dados atual a ser decodificada por entropia baseado em pelo menos um segundo elemento de sintaxe da unidade de dados atual, no qual pelo menos um segundo elemento de sintaxe é utilizável e diferente do primeiro elemento de sintaxe da unidade de dados atual, e decodificar por entropia o primeiro elemento de sintaxe usando o modelo de contexto determinado.
Modo da Invenção
[00032] A seguir, uma 'imagem' usada em várias formas de realização da presente invenção pode não indicar apenas uma imagem estática, mas também pode denotar uma imagem em movimento, como um vídeo.
[00033] Quando várias operações são realizadas em dados relacionados a uma imagem, os dados relacionados à imagem podem ser divididos em grupos de dados, e a mesma operação pode ser executada em dados incluídos no mesmo grupo de dados. A seguir, um grupo de dados, formado de acordo com um padrão predeterminado, é referido como uma ‘unidade de dados'. Além disso, uma operação realizada de acordo com 'unidades de dados'é executada usando dados incluídos em uma unidade de dados correspondente.
[00034] A seguir, métodos e aparelhos para codificar e decodificar vídeo, para codificar e decodificar elementos de sintaxe tendo uma estrutura em árvore com base em unidades de codificação, de acordo com uma estrutura em árvore hierárquica, de acordo com formas de realização da presente invenção, serão descritos com referência às Figs. 1 a 13. Além disso, processos de codificação e decodificação por entropia, usados nos métodos para codificar e decodificar vídeo das Figuras 1 a 14, serãodescritos em detalhes com referência às Figs. 14 a 24.
[00035] A Fig. 1 é um diagrama de blocos de um aparelho para codificar vídeo 100, de acordo com uma forma de realização da presente invenção.
[00036] O aparelho para codificar vídeo 100 inclui um codificador hierárquico 110 e um codificador por entropia 120.
[00037] O codificador hierárquico 110 divide um quadro atual a ser codificado em unidades de dados tendo predeterminados tamanhos, e codifica as unidades de dados. Em detalhes, o codificador hierárquico 110 pode dividir um quadro atual com base em 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 daunidade de dados é um quadrado tendo uma largura e um comprimento que são, cada qual, um múltiplo de 2 e maior que 8.
[00038] 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, 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.
[00039] Conforme acima descrito, os dados de imagem do quadro atual são divididos nas unidades de codificação máxima, de 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.
[00040] 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 largura da unidade de codificação máxima são divididas hierarquicamente, podem ser predeterminados.
[00041] O codificador hierárquico 110 codifica pelo menos umaregião de divisão obtida, dividindo-se uma região da unidade decodificaçã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 codificador hierárquico 110 determina uma profundidade codificada, por codificar os 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 selecionar uma profundidade tendo o menor erro de codificação. Assim, os dados de imagem codificados da unidade de codificação correspondente à determinada profundidade codificada são finalmente emitidos. Além disso, as unidades de codificação correspondentes à profundidade codificada podem ser consideradas como unidades de codificação codificadas. A profundidade codificada, determinada, e os dados de imagem codificados, de acordo com a profundidade codificada determinada, são emitidos para o codificador por entropia 120.
[00042] 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 à 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.
[00043] O tamanho da unidade de codificação máxima é dividido, quando uma unidade de codificação for dividida hierarquicamente, de acordo com profundidades, e com o número de aumentos das unidades de codificação. Além disso, mesmo se as unidades de codificação corresponderem à mesma profundidade em uma unidade de codificação máxima, é determinada a necessidade de se dividir em separado 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 de codificação. Nesse sentido, mesmo quando os dados de imagem estiverem incluídos em uma unidade de codificação máxima, os dados de imagem são divididos nas 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 regiões nos dados de imagem. Assim, podem ser determinadas uma ou mais profundidades codificadas 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.
[00044] Nesse sentido, o codificador hierárquico 110 pode determinar as unidades de codificação tendo uma estrutura 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 de uma profundidade codificada em outra região.
[00045] Uma profundidade máxima, de acordo com uma forma de realização da presente invenção, é um índice relacionado ao número de vezes de divisão, a partir de uma unidade de codificação máxima até 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 de divisão, a partir da unidade de codificação máxima até a 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 até 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 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.
[00046] Codificação por previsão e transformação podem ser realizadas, de acordo com a unidade de codificação máxima. Além disso, a codificação por previsão e a transformação são executadas com base nas unidades de codificação mais profundas, de acordo com uma profundidade igual ou profundidades menores que a profundidade máxima, de acordo com a unidade de codificação máxima. Transformação pode ser realizada, de acordo com o método de transformação ortogonal ou transformação de número inteiro.
[00047] 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 é realizada em todasas unidades de codificação mais profundas geradas, quando a profundidade aumenta. Para conveniência de descrição, a codificação por previsão e 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.
[00048] 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 realizadas e, 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.
[00049] Por exemplo, o aparelho para codificar vídeo 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.
[00050] 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.
[00051] 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, 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 1:n ou n:1, partições que são obtidas, dividindo-se geometricamente a unidade de previsão, e partições tendo formatos arbitrários.
[00052] 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 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 numa unidade de codificação, selecionando, assim, um modo de previsão tendo um menor erro de codificação.
[00053] O aparelho para codificar vídeo 100 pode ainda 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.
[00054] Para realizar a transformação na unidade de codificação, a transformação pode ser realizada com base em uma unidade de dados tendo um tamanho menor ou igual à unidade de codificação. Por exemplo, a unidade de dados para a transformação pode incluir uma unidade de dados para um modo intra e uma unidade de dados para um modo inter.
[00055] Uma unidade de dados usada como base da transformação será agora referida como uma 'unidade de transformação'. Uma profundidade de transformação, indicando o número de vezes de divisão 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 de 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 cada uma dentre altura e largura da unidade de codificação atual for dividida em duas partes iguais, totalmente dividida em 4A1 unidades de transformação, e o tamanho da unidade de transformação é, portanto, NxN, e pode ser 2, quando cada uma dentre a altura e largura da unidade de codificação atual for dividida em quatro partes iguais, totalmente dividida em 4A2 unidades de transformação e o tamanho da unidade de transformação é, assim, N/2xN/2. Por exemplo, a unidade de transformação pode ser definida, de acordo com uma estrutura em árvore hierárquica, em que uma unidade de transformação de uma profundidade de transformação superior é dividida em quatro unidades de transformação de uma menor profundidade de transformação, de acordo com as características hierárquicas de uma profundidade de transformação.
[00056] 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, para que a unidade de transformação possa ser determinada de forma independente em unidades de regiões. Assim, dados residuais na unidade de codificação podem ser divididos, de acordo com a transformação tendo a estrutura em árvore de acordo com profundidades de transformação.
[00057] Informações de codificação, de acordo com as unidades de codificação que correspondem a uma profundidade codificada, requerem não só informações sobre a profundidade codificada, mas também sobre informações relacionadas à codificação por previsão e transformação. Nesse sentido, o codificador hierárquico 110 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.
[00058] Unidades de codificação, de acordo com uma estrutura em árvore em um unidade de codificação máxima, e um método para determinar uma partição, de acordo com formas de realização da presente invenção, serão descritos em detalhes mais tarde com referência às Figuras 3 a 12.
[00059] O codificador hierárquico 110 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.
[00060] O codificador por entropia 120 emite os dados de imagem da unidade de codificação máxima, que é codificada com base 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. Os dados de imagem codificados podem ser obtidos pela codificação de dados residuais de uma imagem. As informações sobre o modo de codificação, de acordo com profundidades codificadas, podem incluir informações sobre a profundidade codificada, sobre o tipo de partição na unidade de previsão, o modo de previsão e o tamanho da unidade de transformação. Em detalhes, como abaixo descrito, o codificador por entropia 120 seleciona um modelo de contexto com base em informações adicionais de uma unidade de dados atual, tais como informações sobre a estrutura hierárquica das unidades de dados e sobre um componente de cor usado em um método para codificar vídeo, e executa a codificação por entropia, enquanto codifica os dados de imagem da unidade de codificação máxima e elementos de sintaxe sobre o modo de codificação de acordo com profundidades. Aqui, o codificador por entropia 120 pode determinar o modelo de contexto para codificar por entropia os elementos de sintaxe da unidade de codificação atual, considerando informações adicionais da unidade de codificação atual, bem como informações adicionais de uma unidade de codificação adjacente. Um processo para determinar o modelo de contexto para codificar por entropia os elementos de sintaxe será descrito em detalhes mais tarde.
[00061] 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 uma 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 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.
[00062] Se a profundidade atual não for a profundidade codificada, codificação é realizada na unidade de codificação, que é 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.
[00063] 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 o modo de codificação podem ser definidas para os dados de imagem.
[00064] Nesse sentido, o codificador por entropia 120 pode atribuir informações de codificação sobre uma profundidade codificada 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.
[00065] A unidade mínima, de acordo com uma forma de realizaçãoda presente invenção, pode ser uma unidade de dados retangularesobtida, dividindo-se a unidade de codificação mínima que constitui a menor profundidade por 4, e 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.
[00066] Por exemplo, as informações de codificação emitidas através do codificador por entropia 120 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 da imagem 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 decodificação definida de acordo com GOPs, fatias ou quadros, einformações sobre uma profundidade máxima, podem ser inseridas em um cabeçalho de um fluxo de bits.
[00067] No aparelho para codificar 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 da unidade de codificação da menor profundidade.
[00068] Nesse sentido, o aparelho para codificar vídeo 100 pode formar as unidades de codificação tendo a estrutura em árvore, determinando as 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 de codificação máxima e na profundidade máxima determinada, levando 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 vários modos de previsão e transformações, um modo de codificação ideal pode ser determinado, considerando as características da unidade de codificação de vários tamanhos de imagem.
[00069] Assim, se uma imagem de alta resolução ou 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 comprimidas geradas 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 de compressão de imagem pode ser aumentada, visto que uma unidade de codificação é ajustada, considerando as características de uma imagem, enquanto que aumentando um tamanho máximo de uma unidade de codificação, ao considerar um tamanho da imagem.
[00070] A Fig. 2 é um diagrama de blocos de um aparelho para decodificar vídeo 200, de acordo com uma forma de realização da presente invenção.
[00071] O aparelho para decodificar vídeo 200 inclui um extrator do elemento de sintaxe 210, um decodificador por entropia 220, e um decodificador hierárquico 230. 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. 1 e ao aparelho para codificar vídeo 100.
[00072] O extrator do elemento de sintaxe 210 recebe e analisa um fluxo de bits de um vídeo codificado. O decodificador por entropia 220 extrai dados de imagem codificados para cada unidade de codificação 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 do quadro para o decodificador hierárquico 230.
[00073] Além disso, o decodificador por entropia 220 extrai informações adicionais sobre uma profundidade codificada, um modo de codificação, um componente de cor, e um modo de previsã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. Informações adicionais extraídas são emitidas para o decodificador hierárquico 230. Em outras palavras, os dados de imagem em um fluxo de bits são divididos na unidade de codificação máxima e, em seguida, codificados, para que o decodificador hierárquico 230 decodifique os dados de imagem para cada unidade de codificação máxima.
[00074] 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, sobre 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.
[00075] 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 decodificador por entropia 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 vídeo 100, executa repetidamente a 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 vídeo 200 pode restaurar uma imagem por decodificação de dados de imagem, de acordo com uma profundidade codificada e um modo de codificação que gera o menor erro de codificação.
[00076] Uma vez que as 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 entre uma unidade de codificação correspondente, uma unidade de previsão e uma unidade mínima, o decodificador por entropia 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 as mesmas informações sobre a profundidade codificada e o modo de codificação são atribuídas, podem ser deduzidas como sendo as unidades de dados incluídas na mesma unidade de codificação máxima.
[00077] Em detalhes, conforme descrito abaixo, o decodificador por entropia 220 seleciona um modelo de contexto e executa a decodificação por entropia com base em vários tipos de informações, tais como informações sobre uma estrutura hierárquica de unidades de dados e componentes de cor acima descritos, ao decodificar elementos de sintaxe.
[00078] O decodificador hierárquico 230 restaura o quadro atual pela decodificação de 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 decodificador de dados de imagem 230 pode decodificar os dados de imagem codificados com base em informações extraídas sobre o tipo de partição, o modo de previsão e a unidade de transformação para cada unidade de codificação entre unidades de codificação tendo a estrutura em árvore incluída em cada unidade de codificação máxima. Um processo de decodificação pode incluir uma previsão, incluindo previsão intra e compensação de movimento, e uma transformação inversa. Transformação inversa pode ser executada, de acordo com o método de transformação inversa ortogonal ou transformação inversa de número inteiro.
[00079] O decodificador hierárquico 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 departição e o modo de previsão da unidade de previsão da unidade de codificação, de acordo com profundidades codificadas.
[00080] Além disso, o decodificador hierárquico 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 o tamanho da unidade de transformação da unidade de codificação, de acordo com profundidades codificadas, a fim de executar a transformação inversa, de acordo com as unidades de codificação máxima.
[00081] O decodificador hierárquico 230 pode determinar pelo menos uma profundidade codificada de 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 decodificador hierárquico 230 pode decodificar dados codificados de pelo menos uma unidade de codificação 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.
[00082] Ou seja, unidades de dados contendo as informações de codificação, incluindo as mesmas informações de divisão, podem ser reunidas, observando as informações de codificação definidas, atribuídas à unidade de dados predeterminada entre a unidade de codificação, a unidade de previsão e a unidade mínima, e as unidades de dados reunidas podem ser consideradas como uma unidade de dados a ser decodificada pelo decodificador hierárquico 230 no mesmo modo de codificação.
[00083] 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 a codificação for 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 codificação tendo a estrutura em arvore determinada como sendo as unidades de codificação ideais em cada unidade de codificação máxima, podem ser decodificadas. Além disso, o tamanho máximo da unidade de codificação é determinado, considerando a resolução e uma quantidade de dados de imagem.
[00084] Nesse sentido, mesmo se os 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 adaptavelmente são determinados de acordo com as características dos dados de imagem, por meio de informações sobre um modo de codificação ideal recebidas de um codificador.
[00085] Um método para determinar unidades de codificação com uma estrutura em árvore, uma unidade de previsão e uma unidade de transformação, de acordo com uma forma de realização da presente invenção, será agora descrito com referência às Figuras 3 a 13.
[00086] A Fig. 3 é um diagrama para descrever um conceito de unidades de codificação, de acordo com uma forma de realização da presente invenção.
[00087] 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 pode ser dividida em partições de 64 x 64, 64 x 32, 32 x 64 ou 32 x 32, e uma unidade de codificação de 32 x 32 pode ser dividida em 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 8 pode ser dividida em partições de 8 x 8, 8 x 4, 4 x 8, ou 4 x 4.
[00088] Nos dados de vídeo 310, uma resolução é de 1920 x 1080, o tamanho máximo de uma unidade de codificação é de 64, e uma profundidade máxima é de 2. Nos dados de vídeo 320, uma resolução é de 1920 x 1080, um tamanho máximo de uma unidade de codificação é de 64, e uma profundidade máxima é de 3. Nos dados de vídeo 330, uma resolução é de 352 x 288, um tamanho máximo de uma unidade de codificação é de 16, e uma profundidade máxima é de 1. A profundidade máxima mostrada na Fig. 3 denota um número total de divisões, a partir de uma unidade de codificação máxima até uma unidade de decodificação mínima.
[00089] 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, a fim de aumentar a eficiência de codificação e para refletir com precisão as características de uma imagem. Consequentemente, o tamanho máximo da unidade de codificação dos dados de vídeo 310 e 320, tendo maior resolução que os dados de vídeo 330, pode ser de 64.
[00090] 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 podem 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 aumentadas 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, 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 aumentadas em uma camada, dividindo-se a unidade de codificação máxima por uma vez.
[00091] Uma vez que a profundidade máxima dos dados de vídeo 320 é 3, 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 aumentadas em 3 camadas, dividindo-se a unidade de codificação máxima por três vezes. Quando uma profundidade aumenta, informações detalhadas podem ser precisamente expressas.
[00092] A Fig. 4 é um diagrama de blocos detalhado de um codificador de imagens 400 com base em unidades de codificação tendo uma estrutura hierárquica, de acordo com uma forma de realização da presente invenção.
[00093] Um previsor intra 410 executa previsão intra nas 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 executa compensação de movimento e estimativa inter 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.
[00094] 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 ser 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.
[00095] O codificador por entropia 450 seleciona um modelo de contexto e executa a decodificação por entropia, com base em vários tipos de informações, tais como informações sobre uma estrutura hierárquica de unidades de dados e sobre componentes de cor, ao codificar de dados de imagem de uma unidade de codificação máxima e elementos de sintaxe sobre um modo de codificação, de acordo com profundidades.
[00096] A fim de que o codificador de imagens 400 seja aplicado no aparelho para codificar vídeo 100, todos os elementos do codificador de imagens 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 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.
[00097] Especificamente, o previsor intra 410, o estimador de movimento 420, e o compensador de movimento 425 determinam as partições e um modo de previsão de cada unidade de codificação entre 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 entre unidades de codificação tendo uma estrutura em árvore. Além disso, o codificador por entropia 450 seleciona um modelo de contexto para codificar por entropia elementos de sintaxe, e executa a codificação por entropia, com base em vários tipos de informações, tais como informações sobre uma estrutura hierárquica de unidades de dados e sobre componentes de cor, de acordo com os tipos de elementos de sintaxe.
[00098] A Fig. 5 é um diagrama de blocos detalhado de um decodificador de imagens 500, com base em unidades de codificação tendo uma estrutura hierárquica, de acordo com uma forma de realização da presente invenção.
[00099] Um analisador 510 analisa informações sobre codificação necessárias para decodificar um fluxo de bits 505 e dados de imagem codificados a serem decodificados. Os dados de imagem codificados são emitidos como dados quantizados inversos, através do decodificador por entropia 520 e um quantizador inverso 530, e os dados quantizados inversos são restaurados como dados de imagem em um domínio espacial através de um transformador inverso 540.
[000100] 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.
[000101] Os dados de imagem no domínio espacial, que são restaurados ao passarem pelo previsor intra 550 e o compensador de movimento 560, podem ser pós-processados através de uma unidade de desbloqueio 570 e uma unidade de filtragem de circuito 580, e podem ser emitidos como uma moldura restaurada 595. Além disso, dados pós-processados através da unidade de desbloqueio 570 e a unidade de filtragem de circuito 580 podem ser emitidos como a moldura de referência 585.
[000102] A fim de que o decodificador de imagens 500 seja aplicado no aparelho para decodificar vídeo 200, todos os elementos do decodificador de imagens 500, ou seja, o analisador 510, o decodificador por entropia 520, o quantizador inverso 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, podem executar operações de decodificação com base em unidades de codificação tendo uma estrutura em árvore para cada unidade de codificação máxima.
[000103] Especificamente, a previsão intra 550 e o compensador de movimento 560 podem determinar 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 pode determinar um tamanho de uma unidade de transformação para cada unidade de codificação. Além disso, o decodificador por entropia 520 seleciona um modelo de contexto usado para decodificar por entropia dados de imagem codificados a serem decodificados, e elementos de sintaxe indicando as informações de codificação necessárias para a decodificação, e executa a decodificação por entropia, com base em vários tipos de informações, tais como informações sobre uma estrutura hierárquica de unidades de dados e sobre componentes de cor, de acordo com tipos dos elementos de sintaxe.
[000104] A Fig. 6 é um diagrama ilustrando as unidades de codificação mais profundas, de acordo com profundidades e partições, de acordo com uma forma de realização da presente invenção.
[000105] 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 as características de uma imagem. Uma altura máxima, largura máxima, e uma profundidade máxima das 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.
[000106] 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, de 64, e a profundidade máxima é de 4. 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.
[000107] Em outras palavras, uma unidade de codificação 610 é uma unidade de codificação máxima na estrutura hierárquica 600, onde uma profundidade é 0 e um tamanho, ou seja, uma altura pela 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.
[000108] 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.
[000109] 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.
[000110] 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 16 incluído 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.
[000111] 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ído na unidade de codificação 640, partições 642 tendo um tamanho de 8 x 4, partições 644 tendo um tamanho de 4 x 8, e partições 646 tendo um tamanho de 4 x 4.
[000112] 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 menor profundidade. 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.
[000113] A fim de determinar pelo menos uma profundidade codificada das unidades de codificação, que constitui 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.
[000114] Um número de unidades de codificação mais profundas, de acordo com profundidades incluindo dados na mesma faixa e 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 abranger 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 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.
[000115] Para realizar a 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.
[000116] A Fig. 7 é um diagrama para descrever uma relação entre uma unidade de codificação 710 e unidades de transformação 720, de acordo com uma forma de realização da presente invenção.
[000117] O aparelho para codificar vídeo 100 ou 200 codifica ou decodifica uma imagem, de acordo com as unidades de codificação com 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 a 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.
[000118] 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.
[000119] 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.
[000120] A Fig. 8 é um diagrama para descrever informações de codificação de unidades de codificação que correspondem a uma profundidade codificada, de acordo com uma forma de realização da presente invenção.
[000121] 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.
[000122] 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 de uma partição 802 tendo um tamanho de 2Nx2N, uma partição 804 tendo um tamanho de 2NxN, uma partição 806 tendo um tamanho de Nx2N, uma partição 808 tendo um tamanho de Nx2N e 2Nx2N. 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, uma partição 806 tendo um tamanho 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, uma partição 806 tendo um tamanho de Nx2N, e a partição 808 tendo um tamanho de NxN.
[000123] 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 realizada em uma partição indicada pelas informações 800, ou seja, um modo intra 812, um modo inter 814, ou um modo ignorar 816.
[000124] 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 intra 828.
[000125] O extrator de informações de codificação e dados de imagem 220 do aparelho para decodificar vídeo 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.
[000126] A Fig. 9 é um diagrama das unidades de codificação mais profundas, de acordo com profundidades, de acordo com uma forma de realização da presente invenção.
[000127] Informações de divisão podem ser usadas para indicar uma mudança de uma 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 uma menor profundidade.
[000128] Uma unidade de previsão 910 para codificar por previsão 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 uma 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. 9 ilustra apenas 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 da unidade de previsão 910 podem incluir partições assimétricas, partições tendo um formato predeterminado, e partições tendo um formato geométrico.
[000129] 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.
[000130] 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.
[000131] 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.
[000132] Uma unidade de previsão 940 para codificar por previsão a unidade de codificação 930 tendo uma profundidade de 1 e um tamanho de 2N_1x2N_1 (= N_0xN_0) pode incluir partições de um tipo de partição 942 tendo um tamanho de 2N_1x2N_1, um tipo de partição 944 tendo um tamanho de 2N_1xN_1, um tipo de partição 946 tendo um tamanho de N_1x2N_1, e um tipo de partição 948 tendo um tamanho de N_1xN_1.
[000133] 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.
[000134] Quando uma profundidade máxima for d, operação de divisã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 a codificação for realizada até quando a profundidade for de 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 codificação 980, tendo uma profundidade de d-1 e um tamanho de 2N_(d-1)x2N_(d-1), pode 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-1).
[000135] Codificação por previsão pode ser executada repetidamente em uma partição tendo um tamanho de 2N_(d-1)x2N_(d- 1), duas partições tendo um tamanho de 2N_(d-1)xN_(d-1), 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), entre os tipos de partição 992 a 998, para procurar um tipo de partição tendo um menor erro de codificação.
[000136] 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-1) 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 sendo N_(d-1)xN_(d-1). Além disso, uma vez que a profundidade máxima é de d, e uma unidade de codificação mínima 980, tendo uma menor profundidade 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.
[000137] 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 unidade de codificação mínima 980 por 4. Realizando 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.
[000138] 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 das profundidades, excluindo a profundidade codificada, são definidas como 1.
[000139] O extrator de informações de codificação e dados de imagem 220 do aparelho para decodificar vídeo 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 as informações sobre um modo de codificação da profundidade correspondente para decodificação.
[000140] As Figs. 10 a 12 são diagramas para descrever uma relação entre unidades de codificação 1010, unidades de previsão 1060, e unidades de transformação 1070, de acordo com uma forma de realização da presente invenção.
[000141] As unidades de codificação 1010 são unidades de codificação tendo uma estrutura em árvore correspondente às 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.
[000142] 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.
[000143] 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 previsão e partições das unidades de codificação 1010 são menores ou iguais a cada unidade de codificação.
[000144] 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 vídeo 100 e 200 podem executar previsão intra, estimativa de movimento, compensação de movimento, transformação, e transformação inversa individualmente em uma unidade de dados na mesma unidade de codificação.
[000145] 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 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 vídeo 100 e 200. Tabela 1
Figure img0001
[000146] O codificador por entropia 120 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 decodificador por entropia 210 do aparelho para decodificar vídeo 200 pode analisar um fluxo de bits recebido e extrair as informações de codificação sobre as unidades de codificação tendo uma estrutura em árvore do fluxo de bits recebido.
[000147] 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, em que 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, a codificação é independentemente realizada em quatro unidades de codificação divididas de menor profundidade.
[000148] Um modo de previsão pode ser de um modo intra, um modo inter, e um modo ignorar. O modo intra e 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.
[000149] 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 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:n e n: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:n e n:1. Aqui, n é um número inteiro maior que 1.
[000150] 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 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étrico, o tamanho da unidade de transformação pode ser N/2xN/2.
[000151] 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 a unidade de previsão e a unidade mínima, que contêm as mesmas informações de codificação.
[000152] Nesse sentido, é determinado se as unidades de dados adjacentes estã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 as 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.
[000153] 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 ser diretamente referidas e usadas.
[000154] Como alternativa, se uma unidade de codificação atual for prevista, com base em informações de codificação das unidades 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 adjacentes pesquisadas podem ser encaminhadas para prever a unidade de codificação atual.
[000155] A Fig. 13 é um diagrama para descrever uma relação entre uma unidade de codificação, uma unidade de previsão ou uma partição, e uma unidade de transformação, de acordo com as informações sobre modo de codificação da Tabela 1.
[000156] 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 de 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.
[000157] 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 é definida, se informações de divisão (sinalizador de tamanho da TU) de uma unidade de transformação forem 0, e uma unidade de transformação 1344 tendo um tamanho de NxN é definida, se um sinalizador de tamanho da TU for 1.
[000158] Quando o tipo de partição for definido para ser assimétrico, ou seja, o tipo de partição 1332, 1334, 1336 ou 1338, uma unidade de transformação 1352 tendo um tamanho de 2Nx2N é definida, se um sinalizador de tamanho da TU for 0, e uma unidade de transformação 1354 tendo um tamanho de N/2xN/2 é definida, se um sinalizador de tamanho da TU for 1.
[000159] Informações de divisão da unidade de transformação (sinalizador de tamanho da TU) podem ser um tipo de um índice de transformação, e um tamanho de uma unidade de transformação correspondente a um índice de transformação pode variar, de acordo com um tipo de unidade de previsão ou tipo de partição de uma unidade de codificação.
[000160] 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 é definida, se um sinalizador de tamanho da TU de uma unidade de transformação for 0, e uma unidade de transformação 1344 tendo um tamanho de NxN é definida, se um sinalizador de tamanho da TU for 1.
[000161] Quando o tipo de partição for definido para ser assimétrico, ou seja, o tipo de partição 1332, 1334, 1336 ou 1338, uma unidade de transformação 1352 tendo um tamanho de 2Nx2N é definida, se um sinalizador de tamanho da TU for 0, e uma unidade de transformação 1354 tendo um tamanho de N/2xN/2 é definida, se um sinalizador de tamanho da TU for 1.
[000162] Referindo-se à Fig. 9, o sinalizador de tamanho da TU é um sinalizador tendo um valor 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 um exemplo de um índice de transformação.
[000163] Neste caso, o tamanho de uma unidade de transformação, que tem sido de fato usado, pode ser expresso usando um sinalizador de tamanho da TU de uma unidade de transformação, juntamente com um tamanho máximo e tamanho mínimo da unidade de transformação. O aparelho para codificar vídeo 100 é capaz de codificar informações de tamanho da unidade de transformação máxima, informações de tamanho da unidade de transformação mínima, e um sinalizador de tamanho da TU máxima. O resultado de codificar as informações de tamanho da unidade de transformação máxima, as informações de tamanho da unidade de transformação mínima, e o sinalizador de tamanho da TU máxima, pode ser inserido num SPS. O aparelho para decodificar vídeo 200 pode decodificar vídeo usando as informações de tamanho da unidade de transformação máxima, as informações de tamanho da unidade de transformação mínima, e o sinalizador de tamanho da TU máxima.
[000164] Por exemplo, se o tamanho de uma unidade de codificação atual for 64 x 64, e um tamanho da unidade de transformação máxima for 32 x 32, então o tamanho de uma unidade de transformação pode ser 32 x 32, quando um sinalizador de tamanho da TU for 0, pode ser 16 x 16, quando o sinalizador de tamanho da TU for 1, e pode ser 8 x 8, quando o sinalizador de tamanho da TU for 2.
[000165] Como outro exemplo, se o tamanho da unidade de codificação atual for 32 x 32, e um tamanho da unidade de transformação mínima for 32 x 32, então o tamanho da unidade de transformação pode ser 32 x 32, quando o sinalizador de tamanho da TU for 0. Aqui, o sinalizador de tamanho da TU não pode ser definido como um valor diferente de 0, uma vez que o tamanho da unidade de transformação não pode ser menor que 32 x 32.
[000166] Como outro exemplo, se o tamanho da unidade de codificação atual for 64 x 64 e um sinalizador do tamanho da TU máxima for 1, então o sinalizador de tamanho da TU pode ser 0 ou 1. Aqui, o sinalizador de tamanho da TU não pode ser definido como um valor diferente de 0 ou 1.
[000167] Assim, se for definido que o sinalizador de tamanho da TU máxima é 'MaxTransformSizeIndex', um tamanho da unidade de transformação mínima é 'MinTransformSize', e um tamanho da unidade de transformação é 'RootTuSize', quando o sinalizador de tamanho da TU for 0, então, um tamanho da unidade de transformação mínima atual 'CurrMinTuSize', que pode ser determinado em uma unidade de codificação atual, pode ser definido pela equação (1):CurrMinTuSize = max (MinTransformSize, RootTuSize/(2AMaxTransformSizeIndex)) (1)
[000168] Em comparação com o tamanho da unidade de transformação mínima atual 'CurrMinTuSize', que pode ser determinado na unidade de codificação atual, um tamanho da unidade de transformação 'RootTuSize', quando o sinalizador de tamanho da TU for 0, pode denotar um tamanho da unidade de transformação máxima, que pode ser selecionado no sistema. Na equação (1), 'RootTuSize/(2AMaxTransformSizeIndex)'denota um tamanho da unidade de transformação, quando o tamanho da unidade de transformação 'RootTuSize', quando o sinalizador de tamanho da TU for 0, for dividido um número de vezes correspondente ao sinalizador do tamanho da TU máxima, e 'MinTransformSize' denota um tamanho de transformação mínimo. Assim, um valor menor entre os 'RootTuSize/(2AMaxTransformSizeIndex)' e 'MinTransformSize' pode ser o tamanho da unidade de transformação mínima atual 'CurrMinTuSize', que pode ser determinado na unidade de codificação atual.
[000169] O tamanho da unidade de transformação máxima RootTuSize pode variar, de acordo com o tipo de um modo de previsão.
[000170] Por exemplo, se um modo de previsão atual for um modo inter, então 'RootTuSize' pode ser determinado, usando a equação (2) abaixo. Na equação (2), '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)
[000171] Ou seja, se o modo de previsão atual for o modo inter, o tamanho da unidade de transformação 'RootTuSize', quando o sinalizador de tamanho da TU for 0, pode ser um valor menor entre o tamanho da unidade de transformação máxima e o tamanho da unidade de previsão atual.
[000172] Se um modo de previsão de uma unidade de partição atual for um modo intra, 'RootTuSize' pode ser determinado, usando a Equação (3) abaixo. Na Equação (3), 'PartitionSize' denota o tamanho da unidade de partição atual.RootTuSize = min (MaxTransformSize, PartitionSize)...(3)
[000173] Ou seja, se o modo de previsão atual for o modo intra, o tamanho da unidade de transformação 'RootTuSize', quando o sinalizador de tamanho da TU for 0, pode ser um valor menor entre o tamanho da unidade de transformação máxima e o tamanho da unidade de partição atual.
[000174] No entanto, o tamanho da unidade de transformação máxima atual 'RootTuSize', que varia de acordo com o tipo de um modo de previsão em uma unidade de partição, é apenas um exemplo, e a presente invenção não está limitada ao mesmo.
[000175] A seguir, um processo de codificação por entropia de um elemento de sintaxe, que é realizado pelo codificador por entropia 120 do aparelho para codificar vídeo 100 da Fig. 1, e um processo de codificação por entropia de um elemento de sintaxe, que é executado pelo decodificador por entropia 220 do aparelho para decodificar vídeo 200 da Fig. 2, serão descritos em detalhes.
[000176] Conforme acima descrito, o aparelho para codificar vídeo 100 e o aparelho para decodificar vídeo 200, de acordo com as formas de realização da presente invenção, executam a codificação e decodificação, dividindo uma unidade de codificação máxima usando uma unidade de codificação igual ou menor que a unidade de codificação máxima. Uma unidade de previsão e uma unidade de transformação utilizadas durante os processos de previsão e transformação podem ser determinadas, com base em custos, independentemente de outra unidade de dados. Assim sendo, as unidades de dados com uma estrutura em árvore podem ser configuradas, determinando uma unidade de codificação ideal, quando codificação for recursivamente realizada, de acordo com as unidades de codificação com uma estrutura hierárquica, incluídas em uma unidade de codificação máxima. Em outras palavras, as unidades de codificação tendo uma estrutura em árvore, e unidades de previsão e unidades de transformação tendo uma estrutura em árvore, podem ser determinadas, de acordo com uma unidade de codificação máxima. Para a decodificação, podem ser transmitidas informações hierárquicas, indicando uma estrutura hierárquica de unidades de dados e informações que não sejam as informações hierárquicas para decodificação.
[000177] As informações hierárquicas são necessárias para determinar as unidades de codificação, unidades de previsão, e unidades de transformação tendo a estrutura em árvore acima descrita com referência às Figs. 10 a 12, e incluem um tamanho de uma unidade de codificação máxima, uma profundidade codificada, informações de partição de uma unidade de previsão, um sinalizador de divisão, indicando se uma unidade de codificação foi dividida, informações sobre o tamanho de uma unidade de transformação, e sinalizador do tamanho da TU, indicando se uma unidade de transformação foi dividida. As informações, que não forem as informações hierárquicas, incluem informações sobre o modo de previsão intra/ inter aplicado a cada unidade de previsão, informações do vetor de movimento, informações de direção de previsão, informações de componente de cor aplicadas a uma unidade de dados correspondente, quando uma pluralidade de componentes de cor for usada, e informações de textura, como um coeficiente de transformação. A seguir, as informações hierárquicas e as informações, que não forem informações hierárquicas transmitidas para a decodificação, podem ser referidas como elementos de sintaxe a serem codificados por entropia.
[000178] A Fig. 14 é um diagrama de blocos de um aparelho de codificação por entropia 1400, de acordo com uma forma de realização da presente invenção. O aparelho de codificação por entropia 1400 corresponde ao codificador por entropia 120 do aparelho para codificar vídeo 100 da Fig. 1.
[000179] Referindo-se à Fig. 14, o aparelho de codificação por entropia 1400 inclui um binarizador 1410, um modelador de contexto 1420, e um codificador aritmético binário 1430. Além disso, o codificador aritmético binário 1430 inclui um mecanismo de codificação normal 1432 e um mecanismo de codificação por bypass 1434.
[000180] Elementos de sintaxe inseridos no aparelho de codificação por entropia 1400 podem não ser um valor binário. Quando os elementos de sintaxe não forem um valor binário, o binarizador 1410 binariza os elementos de sintaxe e emite uma sequência de caracteres binários formada de valores binários de 0 e 1. Um binário indica cada bit de um fluxo formado de 0 ou 1, e cada binário é codificado através de codificação aritmética de binário adaptável ao contexto (CABAC). Quando um elemento de sintaxe for composto de dados, nos quais frequências de 0 e 1 são as mesmas, o elemento de sintaxe é emitido para o mecanismo de codificação por bypass 1434, que não usa um valor de probabilidade, e é codificado.
[000181] O modelador de contexto 1420 fornece um modelo de probabilidade de um símbolo de codificação atual para o mecanismo de codificação normal 1432. Em detalhes, o modelador de contexto 1420 emite uma probabilidade binária para codificar um valor binário do símbolo de codificação atual para o codificador aritmético binário 1430. O símbolo de codificação atual denota um valor binário, quando um elemento de sintaxe atual a ser codificado é binarizado.
[000182] A fim de determinar um modelo de contexto para um primeiro elemento de sintaxe de uma unidade de codificação atual a ser codificada, o modelador de contexto 1420 pode determinarum modelo de contexto a ser aplicado ao primeiro elemento desintaxe com base nas informações sobre um segundo elemento desintaxe, que é utilizável na mesma unidade de codificação atual e diferente do primeiro elemento de sintaxe. Em padrões H.264 gerais, a fim de determinar um modelo de contexto para certo elemento de sintaxe de um bloco atual, informações sobre um elemento de sintaxe, que é o mesmo que o determinado elemento desintaxe, são obtidas a partir de um bloco vizinho, e um contextoa ser aplicado ao certo elemento de sintaxe é determinado. No entanto, a fim de determinar um modelo de contexto para codificação por entropia geral como tal, um mesmo tipo de elemento de sintaxe é obtido a partir de um bloco vizinho e, assim, tal elemento de sintaxe do bloco vizinho precisa ser armazenado em uma memória predeterminada em um sistema, e a memória predeterminada precisa ser acessada, para determinar um modelo de contexto para codificação por entropia de um elemento de sintaxe de um bloco atual. No entanto, de acordo com uma formade realização da presente invenção, o modelador de contexto 1420não usa informações sobre uma unidade de codificação vizinha, mas seleciona um modelo de contexto para codificação por entropia de um primeiro elemento de sintaxe, usando um segundo elemento de sintaxe usável em uma unidade de codificação atual e, assim, um número de acesso a uma memória pode ser reduzido, e um tamanho da memória para armazenar elementos de sintaxe pode ser reduzido.
[000183] Além disso, conforme abaixo descrito, o modelador de contexto 1420 pode obter um primeiro elemento de sintaxe tendo o mesmo tipo que o primeiro elemento de sintaxe da unidade de codificação atual, a partir de uma unidade de codificação vizinha, e determinar um modelo de contexto para codificação por entropia do primeiro elemento de sintaxe da unidade de codificação atual, combinando-se o segundo elemento de sintaxe obtido a partir da unidade de codificação atual, e o primeiro elemento de sintaxe obtido a partir da unidade de codificação vizinha.
[000184] Um modelo de contexto é um modelo de probabilidade de um binário, e inclui informações sobre qual dentre 0 e 1 corresponde a um MPS e um LPS, e uma probabilidade do MPS ou LPS.
[000185] O mecanismo de codificação normal 1432 executa codificação aritmética binária em um símbolo de codificação atual, com base em informações sobre o MPS e LPS, e informações sobre a probabilidade do MPS ou LPS fornecidas pelo modelador de contexto 1420.
[000186] Um processo para determinar um modelo de contexto para codificação por entropia dos elementos de sintaxe, que é realizado pelo modelador de contexto 1420 da Fig. 14, será agora descrito em detalhes.
[000187] A Fig. 15 é um diagrama de blocos do modelador de contexto 1420 da Fig. 14.
[000188] Referindo-se à Fig. 15, o modelador de contexto 1420 inclui um captador de informações adicionais 1421 e um determinador de modelo de probabilidade 1422.
[000189] O captador de informações adicionais 1421 obtém informações sobre segundos elementos de sintaxe de uma unidade de codificação atual utilizável durante a codificação por entropia de um primeiro elemento de sintaxe de uma unidade de dados atual. Por exemplo, o segundo elemento de sintaxe inclui informações sobre o tamanho da unidade de dados atual, informações de tamanho relativo indicando um tamanho relativo da unidade de dados atual, incluindo o primeiro elemento de sintaxe em relação a uma unidade de dados em uma camada superior e tendo um tamanho maior do que a unidade de dados atual, informações sobre tipo de cor de um quadro colorido, a que pertence uma unidade de dados, e informações sobre modo de previsão. O segundo elemento de sintaxe são informações adicionais da unidade de codificação atual utilizável em um ponto de tempo, quando o primeiro elemento de sintaxe é codificado por entropia.
[000190] O determinador de modelo de probabilidade 1422 determina um modelo de contexto usado para codificar por entropia um primeiro modelo de sintaxe baseado em informações adicionais obtidas sobre segundos elementos de sintaxe. Em detalhes, quando um segundo elemento de sintaxe usável em codificação por entropia de um primeiro elemento de sintaxe, que é atualmente codificado, tiver valores de estado 'a', em que 'a'é um número inteiro positivo, o determinador de modelo de probabilidade 1422 determina um índice de contexto indicando um dos modelos de contexto 'a', de acordo com os valores de estado do segundo elemento de sintaxe, para determinar um modelo de contexto usado para codificar por entropia um primeiro elemento de sintaxe de uma unidade de codificação atual. Por exemplo, quando um tamanho de uma unidade de dados atual, para o qual um primeiro elemento de sintaxe, que atualmente é codificado, tem 5 valores de estado de 2x2, 4x4, 8x8, 16x16, 32 x 32 e 64 x 64, e o tamanho da unidade de dados atual é usado como um segundo elemento de sintaxe, o determinador de modelo de probabilidade 1422 pode definir 5 ou menos modelos de contexto, de acordo com o tamanho da unidade de dados atual, que é o segundo elemento de sintaxe, e pode determinar e emitir um índice de contexto indicando um modelo de contexto usado durante a codificação por entropia do primeiro elemento de sintaxe da unidade de dados atual, baseado no tamanho da unidade de dados atual, ou seja, o segundo elemento de sintaxe.
[000191] Alternativamente, o determinador de modelo de probabilidade 1422 pode determinar um modelo de contexto para codificação por entropia de um primeiro elemento de sintaxe de uma unidade de codificação atual, por meio de uma pluralidade de segundos elementos de sintaxe. Em detalhes, quando n denota um número de segundos elementos de sintaxe usados para determinar um modelo de contexto, onde n denota um número inteiro, e ai denota um número de valores de estado de cada um dos n segundos elementos de sintaxe, onde i é um número inteiro de 1 a n, um modelo de contexto usado para codificar por entropia o primeiro elemento de sintaxe pode ser determinado dentre uma pluralidade de modelos de contexto baseados em a1*a2*... *an, ou seja, um número de combinações dos valores de estado dos segundos elementos de sintaxe.
[000192] Por exemplo, quando se presume que um sinalizador CBF coded_block_flag, que é um sinalizador que indica se um coeficiente de transformação diferente de zero existe em uma unidade de transformação, tem 12 modelos de contexto, um modelo de contexto para codificar por entropia um sinalizador CBF de uma unidade de transformação atual pode ser determinado com base em informações de componente de cores de um quadro, ao qual pertence a unidade de transformação atual, e informações de tamanho da unidade de transformação corrente. Presume-se que as informações do componente de cor sejam uma dentre Y, Cb e Cr, e um índice color_type_index indicando um componente de cor seja definido como 0, 1 e 2, respectivamente, em relação a Y, Cb e Cr. Além disso, presume-se que um índice TU_Block_size_index indicando um tamanho de uma unidade de transformação seja definido como 0, 1, 2 e 3, respectivamente, em relação ao 4 x 4, 8 x 8, 16 x 16 e 32 x 32. Neste caso, o determinador de modelo de probabilidade 1422 pode obter um índice de contexto CtxIdx, indicando um modelo de contexto para codificação por entropia do sinalizador da CBF da unidade de transformação atual usando o índice color_type_index e o índice TU_Block_size_index, que são outros elementos de sintaxe, de acordo com a equação: CtxIdx = color_type_index * 4 + TU_Block_size_index. Conforme acima descrito, selecionando um modelo de contexto usando informações sobre outros elementos de sintaxe na mesma unidade de codificação atual, um número de acesso a uma memória e um tamanho da memória podem ser reduzidos.
[000193] No exemplo acima, um sinalizador de CBF usa informações de tamanho de uma unidade de transformação e informações de componente de cor, mas um primeiro elemento de sintaxe para ser codificado por entropia e um segundo elemento de sintaxe usado para selecionar um modelo de contexto pode ser definido, de forma variável, usando informações adicionais atualmente utilizáveis de uma unidade de dados.
[000194] O captador de informações adicionais 1421 obtém um primeiro elemento de sintaxe, que é do mesmo tipo que o primeiro elemento de sintaxe a ser atualmente codificado por entropia, de uma unidade de dados vizinha da unidade de dados atual, bem como as informações adicionais da unidade de dados atual. O determinador de modelo de probabilidade 1422 pode determinar um modelo de probabilidade para codificação por entropia do primeiro elemento de sintaxe da unidade de dados atual, usando o segundo elemento de sintaxe da unidade de codificação atual, que é diferente do primeiro elemento de sintaxe obtido a partir da unidade de codificação vizinha. Por exemplo, presume-se que o primeiro elemento de sintaxe da unidade de dados atual a ser codificada seja um sinalizador de divisão, indicando se a unidade de dados atual foi dividida. Neste caso, o determinador de modelo de probabilidade 1422 pode obter um sinalizador de divisão de uma unidade de dados vizinha esquerda ou superior, e selecionar um modelo de contexto para codificação por entropia de um sinalizador de divisão da unidade de dados atual, através de uma equação: ctxIdx = split_flag_left + (depth >> 1), com o uso de outros elementos de sintaxe, excluindo um sinalizador de divisão split_flag_neighbor da unidade de dados vizinha e o sinalizador de divisão da unidade de dados atual, por exemplo, usando uma profundidade da unidade de dados atual, como o segundo elemento de sintaxe. Enquanto isso, o "captador" de informações adicionais 1421 pode obter informações sobre o primeiro elemento de sintaxe, tendo o mesmo tipo que o primeiro elemento de sintaxe da unidade de dados atual da unidade de dados vizinha esquerda da unidade de dados atual, a fim de codificar por entropia o primeiro elemento de sintaxe da unidade de dados atual. Visto que informações sobre uma unidade de dados são geralmente armazenadas e lidas em um buffer, em uma unidade de linha, um tamanho do buffer pode ser reduzido, pela obtenção de informações sobre os primeiros elementos de sintaxe de uma unidade de dados atual e unidade de dados vizinha esquerda da unidade de dados atual, em vez de usar informações sobre primeiros elementos de sintaxe de uma unidade de dados atual e uma unidade de dados vizinhasuperior da unidade de dados atual. Além disso, considerando-se uma ordem de processamento de uma varredura de quadriculação etc., o tamanho do buffer pode ser reduzido, usando informações sobre a unidade de dados vizinha esquerda da unidade de dados atual, que está na mesma linha que a unidade de dados atual, e processadas antes da unidade de dados atual, em vez de usar informações sobre a unidade de dados vizinha superior, durante a codificação por entropia do primeiro elemento de sintaxe da unidade de dados atual.
[000195] Um processo para codificar por entropia informações de unidades de codificação com uma estrutura hierárquica acima descrita com referência às Figs. 1 a 13, como um primeiro elemento de sintaxe, será agora descrito em detalhes.
[000196] A Fig. 16 é um diagrama para descrever uma unidade de dados 1600 tendo uma estrutura hierárquica e informações de divisão da unidade de dados 33 tendo uma estrutura hierárquica, de acordo com uma forma de realização da presente invenção. Aqui, uma unidade de dados pode ser qualquer uma de uma unidade de codificação, uma unidade de previsão, e uma unidade de transformação, acima descritas.
[000197] Conforme acima descrito, de acordo com uma forma de realização da presente invenção, codificação é realizada por meio de unidades de codificação, unidades de previsão, e unidades de transformação tendo estruturas hierárquicas. Na Fig. 16, a unidade de dados 1600 tendo um tamanho de NxN e no nível 0, que é um nível mais superior, é dividida nas unidades de dados 31a a 31d no nível 1, que é um nível inferior ao nível mais alto, e as unidades de dados 31a e 31d são respectivamente divididas nas unidades de dados 32a a 32d e 32e a 32h no nível 2, que é um nível inferior ao nível 1. Um sinalizador de divisão, indicando se cada unidade de dados foi dividida em unidades de dados em um nível mais baixo, pode ser usado como um símbolo para indicar uma estrutura hierárquica de unidades de dados. Por exemplo, quando um sinalizador de divisão de uma unidade de dados atual for 1, a unidade de dados atual pode ser dividida em um nível inferior, e quando um sinalizador de divisão for 0, a unidade de dados atual pode não ser dividida.
[000198] Quando as unidades de dados 30, 31a a 31d, e 32a a 32h formam uma estrutura hierárquica, informações de divisão das unidades de transformação 30, 31a a 31d e 32a a 32h podem, além disso, formar uma estrutura hierárquica. Em outras palavras, as informações de divisão da unidade de dados 33 incluem informações de divisão da unidade de dados 34 no nível 0, que é um nível mais superior, informações de divisão da unidade de dados 35a a 35d no nível 1, e informações de divisão da unidade de dados 36a a 36h no nível 2.
[000199] As informações de divisão da unidade de dados 34 no nível 0, nas informações de divisão da unidade de dados 33 tendo a estrutura hierárquica, denotam que a unidade de dados 30 no nível 0 foi dividida. Da mesma forma, as informações de divisão da unidade de dados 35a e 35d no nível 1 denotam, respectivamente, que as unidades de dados 31a e 31d no nível 1 são divididas nas unidades de dados 32a a 32d e 32e a 32h, no nível 2.
[000200] As unidades de dados 31b e 31c no nível 1 não são mais divididas, e correspondem a nós folha que não incluem um nó filho em uma estrutura em árvore. Da mesma forma, as unidades de dados 32a a 32h no nível 2 correspondem a nós folha, que não são mais divididos em níveis inferiores.
[000201] Assim sendo, um sinalizador de divisão, indicando se uma unidade de dados em um nível superior foi dividida em unidades de dados em níveis mais baixos, pode ser usado como um símbolo que indica uma estrutura hierárquica das unidades de dados.
[000202] Durante a codificação por entropia de um sinalizador de divisão indicando uma estrutura hierárquica das unidades de dados, o codificador por entropia 120 pode codificar por entropia sinalizadores de divisão de unidades de dados de todos os nós, ou codificar por entropia apenas sinalizadores de divisão das unidades de dados correspondentes a nós folha, que não têm um nó filho.
[000203] As Figs. 17A e 17B são diagramas de referência dos símbolos, indicando uma estrutura hierárquica de unidades de dados, de acordo com formas de realização da presente invenção.
[000204] Nas Figs. 17A e 17B, presume-se que um sinalizador seja um sinalizador de divisão de uma unidade de dados, indicando se uma unidade de dados de cada nó foi dividida em unidades de dados, em um nível mais baixo, nas informações de divisão da unidade de dados 33 da Fig. 16. Referindo-se à Fig. 17A, o codificador por entropia 120 pode codificar por entropia sinalizadores de divisão flag0, flag1a a flag1d, e flag2a a flag2h das unidades de dados 30, 31a a 31d, e 32a a 32h, em todos os níveis. Alternativamente, como mostrado na Fig. 17B, o codificador por entropia 120 pode codificar por entropia apenas os sinalizadores de divisão flag1b, flag1c e flag2a a flag2h das unidades de dados 31b, 31c, e 32a a 32h correspondentes a nós folha, que não têm um nó filho, porque é determinado se uma unidade de dados em um nível superior foi dividida com base na existência de um sinalizador de divisão numa unidade de dados em um nível inferior. Por exemplo, na Fig. 17B, quando os sinalizadores de divisão flag2a a flag2d das unidades de dados 32a a 32d existirem no nível 2, a unidade de dados 31a no nível 1, que é o nível superior ao nível 2, é obviamente dividida nas unidades de dados 32a a 32d e, portanto, o sinalizador de divisão flag1a da unidade de dados 31a não pode ser codificado.
[000205] O aparelho para decodificar vídeo 200 determina uma estrutura hierárquica de unidades de dados, por extração e leitura dos sinalizadores de divisão flag, flag1a a flag1d, e flag2a a flag2h das unidades de dados 30, 31a a 31d, e 32a a 32h em todos os níveis, de acordo com um modo de decodificação de símbolos hierárquicos. Como alternativa, quando apenas os sinalizadores de divisão flag1b, flag1c e flag2a a flag2h das unidades de dados 31b, 31c e 32a a 32h correspondentes a nós folha são codificados, o aparelho para decodificar vídeo 200 pode determinar uma estrutura hierárquica de unidades de dados, determinando os sinalizadores de divisão flag0 e flag1a a flag1d das unidades de dados 30 e 31a a 31d, que não são codificadas, com base nos sinalizadores de divisão extraídos flag1b, flag1c e flag2a a flag2h.
[000206] O modelador de contexto 1420 pode determinar uma dentre a pluralidade de modelos de contexto para codificar por entropia sinalizadores de divisão indicando uma estrutura hierárquica de unidades de dados, com base em valores de estado, de acordo com uma combinação de informações adicionais.
[000207] As Figs. 18A e 18B são diagramas dos índices de contexto para determinar um modelo de contexto, de acordo com uma combinação de informações adicionais, de acordo com formas de realização da presente invenção.
[000208] Referindo-se à Fig. 18A, o modelador de contexto 1420 pode determinar um modelo de contexto a ser usado para codificar por entropia um sinalizador de divisão de uma unidade de dados atual, com base em outras informações adicionais utilizáveis, excluindo um sinalizador de divisão de uma unidade de dados. Quando for presumido, que n segmentos de informações adicionais possuem, cada qual, ai valores de estado, onde ai é um número inteiro e i é um número inteiro de 1 a n, o modelador de contexto 1420 pode determinar um modelo de contexto a ser usado para codificar por entropia um sinalizador de divisão dentre uma pluralidade de modelos de contexto, com base em um índice de contexto CtxIdx, determinado de acordo com uma combinação de a1xa2x...xan valores de estado. Como mostrado na Fig. 18A, quando for suposto que valores de a1xa2x...xan, respectivamente, têm valores de combinação de S1, S2,..., e Sm, um índice de contexto é determinado com base em tais m valores de estado de (S1, S2,... e Sm).
[000209] Alternativamente, como mostrado na Fig. 18B, o modelador de contexto 1420 pode determinar um índice de contexto, de acordo com um valor de combinação de informações adicionais, agrupando-se os m valores de estado de (S1, S2,... e Sm).
[000210] A Fig. 19 é uma diagrama de referência de um modelo de contexto, de acordo com uma forma de realização da presente invenção.
[000211] O determinador de modelo de probabilidade 1422 determina e emite informações sobre sinais binários correspondentes a um MPS e um LPS dentre sinais binários de 0 e 1, e sobre um valor de probabilidade do MPS ou LPS, usando o índice de contexto CtxIdx, determinado de acordo com a combinação das informações adicionais. Referindo-se à Fig. 19, o determinador de modelo de probabilidade 1422 armazena probabilidades de sinais binários em uma tabela de pesquisa 1900, e emite informações sobre um valor de probabilidade correspondente ao índice de contexto CtxIdx, determinado de acordo com a combinação das informações adicionais para o mecanismo de codificação normal 1432. Em detalhe, quando um índice de contexto CtxIdx, indicando um modelo de contexto a ser aplicado a um símbolo atual, for determinado com base na combinação de informações adicionais de uma unidade de dados atual, o determinador de modelo de probabilidade 1422 pode determinar um índice pStateIdx de uma tabela de probabilidades correspondente ao índice de contexto CtxIdx, e um sinal binário correspondente a um MPS. Além disso, o modelador de contexto 1420 pode similarmente determinar um modelo de contexto para codificar por entropia um elemento de sintaxe de uma unidade de dados atual, dentre uma pluralidade de modos de contexto, de acordo com uma combinação de informações adicionais da unidade de dados atual e informações adicionais de uma unidade de dados vizinha adjacente à unidade de dados atual.
[000212] A Fig. 20 é um gráfico de um valor de probabilidade de um MPS, de acordo com uma forma de realização da presente invenção.
[000213] Uma tabela de probabilidades mostra valores de probabilidade de um MPS, e quando um índice pStateIdx da tabela de probabilidades for atribuído, um valor de probabilidade de um MPS correspondente é determinado. Por exemplo, quando o modelador de contexto 1420 determinar e emitir um índice de contexto CtxIdx de um modelo de contexto a ser usado para codificação de um símbolo atual, como sendo 1, o determinador de modelo de probabilidade 1422 determina o índice pStateIndx como sendo 7, e o MPS como sendo 0, que correspondem ao índice de contexto CtxIdx 1 dentre os modelos de contexto mostrados na Fig. 19. Além disso, o determinador de modelo de probabilidade 1422 determina um valor de probabilidade do MPS correspondente ao índice pStateIdx 7, dentre os valores de probabilidade do MPS predefinido, como mostrado na Fig. 20. Uma vez que uma soma dos valores de probabilidade de MPS e LPS é 1, após o valor de probabilidade de MPS ou LPS ser determinado, o valor de probabilidade restante pode ser determinado.
[000214] Enquanto isso, o determinador de modelo de probabilidade 1422 pode atualizar o índice pStateIdx, com base no qual, um dentre o MPS e o LPS é codificado, sempre que um binário for codificado pelo mecanismo de codificação normal 1432, atualizando, assim, os valores de probabilidade do MPS e LPS, ao considerar uma estatística de geração de um sinal binário. Por exemplo, o determinador de modelo de probabilidade 1422 pode definir transIdxMPS, que é um valor do índice pStateIdx após uma atualização durante a codificação do MPS, e tranIdxLPS, que é um valor do índice pStateIdx após uma atualização durante a codificação do LPS em uma forma de uma tabela de pesquisa, enquanto que considerando resultados de codificação do mecanismo de codificação normal 1432 e, em seguida, atualizar o índice pStateIdx, por operação de codificação para alterar o valor de probabilidade do MPS.
[000215] O mecanismo de codificação normal 1432 codifica por entropia e envia um sinal binário de um símbolo sobre um elemento de sintaxe atual, com base em informações sobre um sinal binário e valor de probabilidade correspondente a um MPS ou LPS.
[000216] A Fig. 21 é um diagrama para descrever uma operação de codificação aritmética binária realizada pelo mecanismo de codificação normal 1430 da Fig. 14. Na Fig. 21, presume-se que um sinalizador de divisão, indicando uma estrutura hierárquica de unidades de dados, tenha um valor binário de 010, uma probabilidade de 1 seja 0,2, e uma probabilidade de 0 seja 0,8. Aqui, as probabilidades de 1 e 0 são atualizadas, sempre que um valor binário for codificado, mas por conveniência de descrição, presume-se que as probabilidades sejam fixas.
[000217] Referindo-se à Fig. 21, quando um valor de binário inicial "0" for codificado a partir de um valor binário "010", [0,0 a 0,8], que é 80% inferior a uma seção inicial [0,0 a 1,0], é atualizado como uma nova seção, e quando um próximo valor de binário "1" for codificado, [0,64 a 0,8], que é 20% superior a [0,0 a 0,8], é atualizado como uma nova seção. Então, quando um último valor binário "0" for codificado, [0,64 a 0,768], que é 80% inferior a [0,64 a 0,8], é definido como uma nova seção. Em um número binário 0,11 correspondente a um número real 0,75 entre seção final [0,64 ~ 0,768], "11", abaixo de um ponto decimal é emitido em um fluxo de bits correspondente ao valor binário "010" do sinalizador de divisão.
[000218] A Fig. 22 é um fluxograma, que ilustra um método para codificação por entropia, de acordo com uma forma de realização da presente invenção.
[000219] Referindo-se à Fig. 22, o codificador hierárquico 110 codifica um vídeo baseado em unidades de dados com uma estrutura hierárquica, na operação 2210. Na operação 2220, o modelador de contexto 1420 determina um modelo de contexto a ser usado para codificação por entropia de um primeiro elemento de sintaxe de uma unidade de dados atual, a ser codificado por entropia com base em pelo menos um segundo elemento de sintaxe da unidade de dados atual, onde o segundo elemento de sintaxe é utilizável e diferente do primeiro elemento de sintaxe da unidade de dados atual. Como acima descrito, quando um número de segundos elementos de sintaxe for n, onde n é um número inteiro, e um número de valores de estado de cada um dos n segundos elementos de sintaxe for ai, onde i é um número inteiro de 1 a n, o modelador de contexto 1420 pode determinar um modelo de contexto indicado por um índice de contexto CtxIdx, determinado com base em a1*a2*... .an, que é um número de combinações dos valores de estado dos segundos elementos de sintaxe.
[000220] Na operação 2230, o mecanismo de codificação normal 1432 codifica por entropia o primeiro elemento de sintaxe da unidade de dados atual, usando o modelo de contexto determinado.
[000221] A Fig. 23 é um diagrama de blocos de um aparelho de decodificação por entropia 2300, de acordo com uma forma de realização da presente invenção.
[000222] Referindo-se à Fig. 23, o aparelho de decodificação por entropia 2300 inclui um modelador de contexto 2310, um decodificador normal 2320, um decodificador por bypass 2330, e um desbinarizador 2340. O aparelho de decodificação por entropia 2300 executa processos inversos do processo de codificação por entropia realizado pelo aparelho de codificação por entropia 1400 acima descrito.
[000223] Um símbolo codificado, de acordo com codificação por by-pass, é emitido para o, e decodificado pelo, decodificador por bypass 2330, e um símbolo codificado, de acordo com codificação normal, é decodificado pelo decodificador normal 2320. O decodificador normal 2320 executa decodificação aritmética em um valor binário de um símbolo de codificação atual, com base em um modelo de contexto fornecido pelo modelador de contexto 2310.
[000224] Como o modelador de contexto 1420 da Fig. 14, o modelador de contexto 2310 determina um modelo de contexto usado para decodificação por entropia de um primeiro elemento de sintaxe de uma unidade de dados atual, com base em pelo menos um segundo elemento de sintaxe da unidade de dados atual, que é utilizável e diferente do primeiro elemento de sintaxe da unidade de dados atual. Conforme acima descrito, o modelador de contexto 2310 pode obter informações sobre um primeiro elemento de sintaxe tendo o mesmo tipo que o primeiro elemento de sintaxe da unidade de dados atual, a partir de uma unidade de dados vizinha adjacente à unidade de dados atual, e determinar o modelo de contexto para decodificação por entropia do primeiro elemento desintaxe da unidade de dados atual, usando o primeiro elemento desintaxe obtido a partir da unidade de dados vizinha, e o segundoelemento de sintaxe obtido a partir da unidade de dados atual.
[000225] Uma operação do modelador de contexto 2310 da Fig. 23 é igual àquela do modelador de contexto 1420 da Fig. 14, exceto que a operação do modelador de contexto 2310 é realizada em termos de decodificação e, assim, seus detalhes são aqui omitidos.
[000226] O desbinarizador 2340 restaura sequências de caracteres binários, restauradas pelo decodificador normal 2320 ou o decodificador por bypass 2330 em um elemento de sintaxe.
[000227] A Fig. 24 é um fluxograma, que ilustra um método para decodificação por entropia, de acordo com uma forma de realização da presente invenção.
[000228] Referindo-se à Fig. 24, o extrator do elemento de sintaxe 210 extrai elementos de sintaxe de um quadro codificado, com base em unidades de dados tendo uma estrutura hierárquica, ao analisar um fluxo de bits codificado, na operação 2410. Na operação 2420, o modelador de contexto 2310 do aparelho de decodificação por entropia 2300 determina um modelo de contexto para decodificação por entropia de um primeiro elemento de sintaxe de uma unidade de dados atual, a ser decodificado porentropia baseado em pelo menos um segundo elemento de sintaxe da unidade de dados atual, que é utilizável e diferente do primeiroelemento de sintaxe da unidade de dados atual. Conforme acima descrito, o modelador de contexto 2310 pode obter um primeiro elemento de sintaxe tendo o mesmo tipo que o primeiro elemento de sintaxe da unidade de dados atual, a partir de uma unidade de dados vizinha esquerda ou superior da unidade de dados atual, bem como o segundo elemento de sintaxe da unidade de dados atual, e selecionar o modelo de contexto para decodificação por entropia do primeiro elemento de sintaxe da unidade de dados atual, combinando o primeiro elemento de sintaxe, obtido a partir da unidade de dados vizinha esquerda ou superior, e o segundo elemento de sintaxe, obtido a partir da unidade de dados atual. Na operação 2430, o decodificador normal 2320 decodifica por entropia o primeiro elemento de sintaxe da unidade de dados atual, usando o modelo de contexto determinado.
[000229] A invenção pode ser também incorporada como códigos legíveis por computador em uma mídia de gravação legível por computador. A mídia de gravação legível por computador é qualquer dispositivo de armazenamento de dados, que pode armazenar dados, que podem ser lidos posteriormente por um sistema de computador. Exemplos da mídia de gravação legível por computador incluem memória somente de leitura (ROM), memória de acesso aleatório (RAM), CD-ROMs, fitas magnéticas, discos flexíveis, dispositivos de armazenamento de dados óticos etc.. A mídia de gravação legível por computador pode ser também distribuída sobre sistemas de computador ligados em rede, para que o código legível por computador seja armazenado e executado de forma distribuída.
[000230] 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 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. 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 (1)

1. MÉTODO DE DECODIFICAÇÃO DE VÍDEO, caracterizado por compreender:obter, de um fluxo de bits, um sinalizador de transformação de divisão indicando se uma unidade de transformação incluída em uma unidade de codificação está dividida,obter uma unidade de transformação atual da unidade de codificação com base no sinalizador de transformação de divisão, determinar um modelo de contexto usando um índice de modelo de contexto determinado com base em um tamanho da unidadede transformação atual e um valor de um índice de componente de cor de uma imagem incluindo a unidade de transformação atual,sem usar quaisquer elementos de sintaxe de blocos vizinhos àunidade de codificação, em que o índice de componente de cor éestabelecido em relação a um componente de cor de luminância, umprimeiro componente de cor de crominância e um segundo componente de cor de crominância, e oíndice de componente de cor para ocomponente de cor de luminância tem um valor de zero, o índice de componente de cor para o primeiro componente de crominânciade cor tem um valor de um e o índice de componente de cor parao segundo componente de cor de crominância tem um valor de dois, obter um sinalizador de coeficiente de transformação indicando se pelo menos um coeficiente diferente de zero está incluído em um bloco da unidade de transformação atual decodificando o fluxo de bits usando Codificação Aritmética Binária Adaptativa de Contexto CABAC) com base no modelo de contexto eobter um coeficiente de transformação incluído na unidade de transformação atual com base no sinalizador de coeficiente de transformação,em que obter um sinalizador de coeficiente de transformação compreende obter informações indicando um símbolo mais provável (MPS) com base no modelo de contexto,em que a imagem é dividida em uma pluralidade de unidades de codificação máxima de acordo com informações sobre um tamanho máximo da unidade de codificação,uma unidade de codificação máxima, da pluralidade de unidades de codificação máxima, é dividida hierarquicamente em uma ou mais unidades de codificação de profundidades incluindo pelo menos uma profundidade atual e uma profundidade inferior de acordo com informação de divisão,quando a informação de divisão indicar uma divisão para a profundidade atual, uma unidade de codificação da profundidade atual é dividida em quatro unidades de codificação da profundidade inferior, mediante dividir uma largura e uma altura da unidade de codificação da profundidade atual por 2, independentemente das unidades de codificação vizinhas, equando a informação de divisão indicar uma não divisão para a profundidade atual, uma ou mais unidades de transformação são obtidas da unidade de codificação da profundidade atual.
BR122019014179-7A 2011-07-01 2012-07-02 método de decodificação de vídeo BR122019014179B1 (pt)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201161503685P 2011-07-01 2011-07-01
US61/503,685 2011-07-01
US201161548423P 2011-10-18 2011-10-18
US61/548,423 2011-10-18
PCT/KR2012/005255 WO2013005968A2 (ko) 2011-07-01 2012-07-02 계층적 구조의 데이터 단위를 이용한 엔트로피 부호화 방법 및 장치, 복호화 방법 및 장치
BR112013033899-7A BR112013033899B1 (pt) 2011-07-01 2012-07-02 Método de decodificação de vídeo

Publications (1)

Publication Number Publication Date
BR122019014179B1 true BR122019014179B1 (pt) 2021-03-09

Family

ID=47437547

Family Applications (5)

Application Number Title Priority Date Filing Date
BR122019014182A BR122019014182B1 (pt) 2011-07-01 2012-07-02 método de decodificação de vídeo
BR122019014179-7A BR122019014179B1 (pt) 2011-07-01 2012-07-02 método de decodificação de vídeo
BR112013033899-7A BR112013033899B1 (pt) 2011-07-01 2012-07-02 Método de decodificação de vídeo
BR122018016535-9A BR122018016535B1 (pt) 2011-07-01 2012-07-02 Método de decodificação de vídeo
BR122019014181-9A BR122019014181B1 (pt) 2011-07-01 2012-07-02 método de decodificação de vídeo

Family Applications Before (1)

Application Number Title Priority Date Filing Date
BR122019014182A BR122019014182B1 (pt) 2011-07-01 2012-07-02 método de decodificação de vídeo

Family Applications After (3)

Application Number Title Priority Date Filing Date
BR112013033899-7A BR112013033899B1 (pt) 2011-07-01 2012-07-02 Método de decodificação de vídeo
BR122018016535-9A BR122018016535B1 (pt) 2011-07-01 2012-07-02 Método de decodificação de vídeo
BR122019014181-9A BR122019014181B1 (pt) 2011-07-01 2012-07-02 método de decodificação de vídeo

Country Status (14)

Country Link
US (6) US9571842B2 (pt)
EP (2) EP2728873A4 (pt)
JP (5) JP5989772B2 (pt)
KR (7) KR101464978B1 (pt)
CN (6) CN104980746B (pt)
AU (3) AU2012278484B2 (pt)
BR (5) BR122019014182B1 (pt)
CA (3) CA2989032C (pt)
MX (1) MX2014000162A (pt)
MY (5) MY193611A (pt)
RU (3) RU2635893C1 (pt)
SG (4) SG10201706004TA (pt)
WO (1) WO2013005968A2 (pt)
ZA (2) ZA201400767B (pt)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE47366E1 (en) 2011-06-23 2019-04-23 Sun Patent Trust Image decoding method and apparatus based on a signal type of the control parameter of the current block
CA2837532C (en) 2011-06-23 2018-10-02 Panasonic Corporation Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
CA2830046C (en) 2011-06-24 2018-09-04 Panasonic Corporation Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
KR102062283B1 (ko) 2011-06-24 2020-01-03 선 페이턴트 트러스트 화상 복호 방법, 화상 부호화 방법, 화상 복호 장치, 화상 부호화 장치 및 화상 부호화 복호 장치
CN103563375B (zh) 2011-06-27 2017-04-05 太阳专利托管公司 图像解码方法、图像编码方法、图像解码装置、图像编码装置及图像编码解码装置
CA2837535C (en) 2011-06-28 2018-09-04 Panasonic Corporation Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
MX2013010892A (es) 2011-06-29 2013-12-06 Panasonic Corp Metodo de decodificacion de imagenes, metodo de codificacion de imagenes, aparato de decodificacion de imagenes, aparato de codificacion de imagenes y aparato de codificacion y decodificacion de imagenes.
CN103583048B (zh) 2011-06-30 2017-05-17 太阳专利托管公司 图像解码方法、图像编码方法、图像解码装置、图像编码装置及图像编码解码装置
AU2012277219A1 (en) 2011-06-30 2013-09-19 Sun Patent Trust Image decoding method, image encoding method, image decoding device, image encoding device, and image encoding/decoding device
CN104980746B (zh) 2011-07-01 2018-07-31 三星电子株式会社 用于使用分层数据单元进行编码和解码的方法和设备
KR20140034209A (ko) 2011-07-11 2014-03-19 파나소닉 주식회사 화상 복호 방법, 화상 부호화 방법, 화상 복호 장치, 화상 부호화 장치 및 화상 부호화 복호 장치
MY200990A (en) * 2012-07-02 2024-01-29 Samsung Electronics Co Ltd Entrophy Coding of a Video and Entropy Decoding of a Video
EP2952003B1 (en) * 2013-01-30 2019-07-17 Intel Corporation Content adaptive partitioning for prediction and coding for next generation video
US10057578B2 (en) * 2014-10-07 2018-08-21 Qualcomm Incorporated QP derivation and offset for adaptive color transform in video coding
US9936201B2 (en) * 2015-01-27 2018-04-03 Qualcomm Incorporated Contexts for large coding tree units
CN106254888B (zh) 2015-06-09 2020-06-02 同济大学 一种图像编码及解码方法、图像处理设备
WO2017041271A1 (en) * 2015-09-10 2017-03-16 Mediatek Singapore Pte. Ltd. Efficient context modeling for coding a block of data
CN112929659B (zh) 2015-10-13 2023-12-26 三星电子株式会社 用于对图像进行编码或解码的方法和设备
WO2017088810A1 (en) * 2015-11-27 2017-06-01 Mediatek Inc. Method and apparatus of entropy coding and context modelling for video and image coding
WO2017088170A1 (en) * 2015-11-27 2017-06-01 Mediatek Inc. Entropy coding the binary tree block partitioning structure
CN116506601A (zh) 2016-03-11 2023-07-28 数字洞察力有限公司 视频编码方法以及装置
JP2019514308A (ja) * 2016-05-10 2019-05-30 サムスン エレクトロニクス カンパニー リミテッド 映像を符号化/復号する方法及びその装置
US10827186B2 (en) * 2016-08-25 2020-11-03 Intel Corporation Method and system of video coding with context decoding and reconstruction bypass
CN116866616A (zh) * 2016-09-20 2023-10-10 株式会社Kt 对视频进行解码和编码的方法和传输视频数据的方法
CN109923866B (zh) * 2016-11-08 2023-07-21 株式会社Kt 视频解码方法、编码方法
CN109983776B (zh) * 2016-11-18 2023-09-29 株式会社Kt 视频信号处理方法和设备
SG11201911621SA (en) * 2017-07-07 2020-01-30 Samsung Electronics Co Ltd Video coding method and device, video decoding method and device
US10506258B2 (en) * 2017-07-13 2019-12-10 Google Llc Coding video syntax elements using a context tree
WO2019083393A1 (en) 2017-10-27 2019-05-02 Huawei Technologies Co., Ltd. METHODS AND APPARATUSES FOR SIGNALING PARTITIONING INFORMATION FOR IMAGE ENCODING AND DECODING
WO2019194439A1 (ko) * 2018-04-02 2019-10-10 엘지전자 주식회사 컨텍스트 기반 인트라 예측 모드 정보 코딩을 이용한 영상 코딩 방법 및 그 장치
EP3562156A1 (en) 2018-04-27 2019-10-30 InterDigital VC Holdings, Inc. Method and apparatus for adaptive context modeling in video encoding and decoding
US10887594B2 (en) * 2018-07-05 2021-01-05 Mediatek Inc. Entropy coding of coding units in image and video data
CN110891180B (zh) * 2018-09-10 2023-11-17 华为技术有限公司 视频解码方法及视频解码器
CN116886914A (zh) * 2018-10-05 2023-10-13 Lg电子株式会社 图像编码/解码方法、存储介质及数据传输方法
DE102018008114A1 (de) 2018-10-09 2020-04-09 Hydac Process Technology Gmbh Filtervorrichtung für Fluide
CN111435993B (zh) 2019-01-14 2022-08-26 华为技术有限公司 视频编码器、视频解码器及相应方法
JP2022525597A (ja) 2019-03-11 2022-05-18 インターデイジタル ヴィーシー ホールディングス インコーポレイテッド ビデオエンコードおよびデコードのためのエントロピー符号化
US20220277491A1 (en) * 2019-05-31 2022-09-01 Electronics And Telecommunications Research Institute Method and device for machine learning-based image compression using global context
US11190777B2 (en) * 2019-06-30 2021-11-30 Tencent America LLC Method and apparatus for video coding
US11317090B2 (en) * 2019-08-12 2022-04-26 Tencent America LLC Method and apparatus for video coding
CN112449188B (zh) * 2019-08-28 2021-08-20 腾讯科技(深圳)有限公司 视频解码方法、编码方法、装置、介质及电子设备
JP2021048532A (ja) * 2019-09-19 2021-03-25 キヤノン株式会社 画像符号化装置、画像復号装置及びそれらの制御方法及びプログラム
CN114257810B (zh) * 2020-09-23 2023-01-06 腾讯科技(深圳)有限公司 上下文模型的选择方法、装置、设备及存储介质
WO2022197138A1 (ko) * 2021-03-19 2022-09-22 현대자동차주식회사 영상 특성 기반 콘텍스트 모델을 이용하는 비디오 코딩방법 및 장치

Family Cites Families (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2237283C2 (ru) 2001-11-27 2004-09-27 Самсунг Электроникс Ко., Лтд. Устройство и способ представления трехмерного объекта на основе изображений с глубиной
JP2003319391A (ja) 2002-04-26 2003-11-07 Sony Corp 符号化装置および方法、復号装置および方法、記録媒体、並びにプログラム
US8014450B2 (en) 2003-09-07 2011-09-06 Microsoft Corporation Flexible range reduction
US7599438B2 (en) * 2003-09-07 2009-10-06 Microsoft Corporation Motion vector block pattern coding and decoding
US7912291B2 (en) * 2003-11-10 2011-03-22 Ricoh Co., Ltd Features for retrieval and similarity matching of documents from the JPEG 2000-compressed domain
KR20050045746A (ko) 2003-11-12 2005-05-17 삼성전자주식회사 계층 구조의 가변 블록 크기를 이용한 움직임 추정 방법및 장치
JP2005184232A (ja) * 2003-12-17 2005-07-07 Sony Corp 符号化装置、プログラム、およびデータ処理方法
US7522774B2 (en) * 2004-03-10 2009-04-21 Sindhara Supermedia, Inc. Methods and apparatuses for compressing digital image data
US7463781B2 (en) * 2004-04-14 2008-12-09 Lsi Corporation Low overhead context intializations for arithmetic video codecs
KR100679022B1 (ko) 2004-10-18 2007-02-05 삼성전자주식회사 계층간 필터링을 이용한 비디오 코딩 및 디코딩방법과,비디오 인코더 및 디코더
WO2006075901A1 (en) 2005-01-14 2006-07-20 Sungkyunkwan University Methods of and apparatuses for adaptive entropy encoding and adaptive entropy decoding for scalable video encoding
WO2006085725A1 (en) 2005-02-14 2006-08-17 Samsung Electronics Co., Ltd. Video coding and decoding methods with hierarchical temporal filtering structure, and apparatus for the same
KR100703770B1 (ko) 2005-03-25 2007-04-06 삼성전자주식회사 가중 예측을 이용한 비디오 코딩 및 디코딩 방법, 이를위한 장치
KR100694098B1 (ko) 2005-04-04 2007-03-12 한국과학기술원 산술 복호 방법 및 그 장치
KR100664936B1 (ko) 2005-04-13 2007-01-04 삼성전자주식회사 코딩 효율이 향상된 컨텍스트 기반 적응적 산술 코딩 및디코딩 방법과 이를 위한 장치, 이를 포함하는 비디오 코딩및 디코딩 방법과 이를 위한 장치
KR20070006445A (ko) 2005-07-08 2007-01-11 삼성전자주식회사 하이브리드 엔트로피 부호화, 복호화 방법 및 장치
RU2371881C1 (ru) * 2005-07-08 2009-10-27 ЭлДжи ЭЛЕКТРОНИКС ИНК. Способ моделирования информации кодирования видеосигнала для компрессии/декомпрессии информации
RU2368095C1 (ru) 2005-07-22 2009-09-20 Мицубиси Электрик Корпорейшн Кодер изображения и декодер изображения, способ кодирования изображения и способ декодирования изображения, программа кодирования изображения и программа декодирования изображения и компьютерно-считываемый носитель записи, на котором записана программа кодирования изображения, и компьютерно-считываемый носитель записи, на котором записана программа декодирования изображения
AU2006282411B2 (en) 2005-08-22 2010-02-18 Nippon Steel Corporation Seamless steel pipe for line pipe and method for its manufacture
KR100736086B1 (ko) * 2005-09-06 2007-07-06 삼성전자주식회사 엔트로피 코딩의 성능 향상 방법 및 장치, 상기 방법을이용한 비디오 코딩 방법 및 장치
CN100403801C (zh) * 2005-09-23 2008-07-16 联合信源数字音视频技术(北京)有限公司 一种基于上下文的自适应熵编/解码方法
KR100873636B1 (ko) 2005-11-14 2008-12-12 삼성전자주식회사 단일 부호화 모드를 이용하는 영상 부호화/복호화 방법 및장치
US7245241B2 (en) * 2005-11-25 2007-07-17 Microsoft Corporation Image coding with scalable context quantization
EP2011237A1 (en) * 2006-04-21 2009-01-07 Kabushiki Kaisha Toshiba Method and apparatus for entropy coding and decoding
BRPI0714127A2 (pt) 2006-07-13 2012-12-25 Qualcomm Inc codificaÇço de vÍdeo com escalabilidade de granularidade fina utilizando fragmentos alinhados por ciclo.
ES2348686T3 (es) * 2006-07-13 2010-12-10 Qualcomm Incorporated Codificaciã“n de video con escalabilidad granular fina mediante fragmentos alineados con ciclos.
JP4878262B2 (ja) * 2006-10-31 2012-02-15 キヤノン株式会社 エントロピー符号化装置
EP2105025B1 (en) * 2007-01-11 2021-04-07 InterDigital VC Holdings, Inc. Methods and apparatus for using syntax for the coded_block_flag syntax element and the coded_block_pattern syntax element for the cavlc 4:4:4 intra, high 4:4:4 intra, and high 4:4:4 predictive profiles in mpeg-4 avc high level coding
KR101356733B1 (ko) * 2007-03-07 2014-02-05 삼성전자주식회사 컨텍스트 기반 적응적 이진 산술 부호화, 복호화 방법 및장치
US7518536B2 (en) * 2007-03-30 2009-04-14 Hong Kong Applied Science And Technology Research Institute Co. Ltd. Method and apparatus for debinarization of digital video data during decoding
CN100571391C (zh) * 2007-05-09 2009-12-16 安凯(广州)软件技术有限公司 用于视频编解码系统中解块滤波的并行处理方法
US8571104B2 (en) * 2007-06-15 2013-10-29 Qualcomm, Incorporated Adaptive coefficient scanning in video coding
CN100531386C (zh) * 2007-06-15 2009-08-19 上海富瀚微电子有限公司 一种上下文自适应二进制算术编码器及其方法
US7777654B2 (en) * 2007-10-16 2010-08-17 Industrial Technology Research Institute System and method for context-based adaptive binary arithematic encoding and decoding
KR101517768B1 (ko) 2008-07-02 2015-05-06 삼성전자주식회사 영상의 부호화 방법 및 장치, 그 복호화 방법 및 장치
US8406307B2 (en) 2008-08-22 2013-03-26 Microsoft Corporation Entropy coding/decoding of hierarchically organized data
JP5151919B2 (ja) * 2008-11-11 2013-02-27 ソニー株式会社 画像復号化装置と画像復号化方法およびコンピュータ・プログラム
US8290338B2 (en) 2009-05-27 2012-10-16 Panasonic Corporation Recording medium, playback device, encoding device, integrated circuit, and playback output device
WO2010143853A2 (ko) * 2009-06-07 2010-12-16 엘지전자 주식회사 비디오 신호의 디코딩 방법 및 장치
US9635368B2 (en) 2009-06-07 2017-04-25 Lg Electronics Inc. Method and apparatus for decoding a video signal
KR101483750B1 (ko) 2009-07-24 2015-01-19 삼성전자주식회사 영상의 부호화 방법 및 장치, 영상 복호화 방법 및 장치
JP5359657B2 (ja) 2009-07-31 2013-12-04 ソニー株式会社 画像符号化装置および方法、記録媒体、並びにプログラム
KR101474756B1 (ko) 2009-08-13 2014-12-19 삼성전자주식회사 큰 크기의 변환 단위를 이용한 영상 부호화, 복호화 방법 및 장치
KR101456498B1 (ko) 2009-08-14 2014-10-31 삼성전자주식회사 계층적 부호화 단위의 스캔 순서를 고려한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
KR101624649B1 (ko) 2009-08-14 2016-05-26 삼성전자주식회사 계층적인 부호화 블록 패턴 정보를 이용한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
KR20110017719A (ko) 2009-08-14 2011-02-22 삼성전자주식회사 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
US20110249754A1 (en) * 2010-04-12 2011-10-13 Qualcomm Incorporated Variable length coding of coded block pattern (cbp) in video compression
US9717814B2 (en) 2010-10-01 2017-08-01 S. C. Johnson & Son, Inc. Dispensing device
US9172963B2 (en) * 2010-11-01 2015-10-27 Qualcomm Incorporated Joint coding of syntax elements for video coding
PL2663075T3 (pl) * 2011-01-06 2020-10-19 Samsung Electronics Co., Ltd. Sposób i urządzenie do kodowania wideo z wykrzystaniem jednostki danych o strukturze hierarchicznej i sposób i urządzenie do jego dekodowania
US8995523B2 (en) * 2011-06-03 2015-03-31 Qualcomm Incorporated Memory efficient context modeling
CA2837532C (en) 2011-06-23 2018-10-02 Panasonic Corporation Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus
CN104980746B (zh) 2011-07-01 2018-07-31 三星电子株式会社 用于使用分层数据单元进行编码和解码的方法和设备

Also Published As

Publication number Publication date
KR101464978B1 (ko) 2014-11-26
SG10201709427VA (en) 2017-12-28
US20150139333A1 (en) 2015-05-21
KR20150000853A (ko) 2015-01-05
MY193609A (en) 2022-10-20
RU2635893C1 (ru) 2017-11-16
ZA201502922B (en) 2016-06-29
CN104994385A (zh) 2015-10-21
KR20130004182A (ko) 2013-01-09
JP5917744B2 (ja) 2016-05-18
BR112013033899A2 (pt) 2017-12-12
CA2937885A1 (en) 2013-01-10
MY193610A (en) 2022-10-20
AU2016206279B2 (en) 2017-08-10
US9571842B2 (en) 2017-02-14
CA2989032C (en) 2020-02-18
BR122019014181B1 (pt) 2021-03-09
BR112013033899B1 (pt) 2019-08-20
CA2840887A1 (en) 2013-01-10
US20150195586A1 (en) 2015-07-09
KR20150052816A (ko) 2015-05-14
RU2017136059A3 (pt) 2019-04-11
MY193611A (en) 2022-10-20
MY164252A (en) 2017-11-30
KR101945447B1 (ko) 2019-02-07
CA2989032A1 (en) 2013-01-10
KR101842261B1 (ko) 2018-03-26
SG10201706004TA (en) 2017-08-30
CN104883569A (zh) 2015-09-02
US20150195539A1 (en) 2015-07-09
JP5917746B2 (ja) 2016-05-18
WO2013005968A2 (ko) 2013-01-10
US20140219335A1 (en) 2014-08-07
CN104980746A (zh) 2015-10-14
US20170188031A1 (en) 2017-06-29
RU2017136059A (ru) 2019-04-11
BR122019014182B1 (pt) 2019-12-03
EP2728873A4 (en) 2016-02-17
US9596472B2 (en) 2017-03-14
KR20140085395A (ko) 2014-07-07
KR20180031665A (ko) 2018-03-28
CN104994385B (zh) 2018-07-20
US9596473B2 (en) 2017-03-14
RU2597494C2 (ru) 2016-09-10
CN104994384A (zh) 2015-10-21
JP5917745B2 (ja) 2016-05-18
EP2728873A2 (en) 2014-05-07
WO2013005968A3 (ko) 2013-03-14
JP2015159600A (ja) 2015-09-03
JP2014521244A (ja) 2014-08-25
CN104853200B (zh) 2017-04-12
JP2015167380A (ja) 2015-09-24
RU2014103482A (ru) 2015-08-10
AU2017254879B2 (en) 2018-10-04
CN104853200A (zh) 2015-08-19
KR101613977B1 (ko) 2016-04-20
US9596474B2 (en) 2017-03-14
EP3389271A1 (en) 2018-10-17
KR101579114B1 (ko) 2015-12-24
SG10201701379XA (en) 2017-03-30
AU2017254879A1 (en) 2017-11-16
US20150195585A1 (en) 2015-07-09
CN104980746B (zh) 2018-07-31
CA2840887C (en) 2018-06-19
AU2016206279A1 (en) 2016-08-11
KR101613978B1 (ko) 2016-04-20
JP5989772B2 (ja) 2016-09-07
AU2012278484A1 (en) 2014-02-06
JP2015167379A (ja) 2015-09-24
CA2937885C (en) 2018-01-30
CN103765887B (zh) 2017-04-12
CN104883569B (zh) 2018-05-18
ZA201400767B (en) 2016-02-24
RU2696211C2 (ru) 2019-07-31
MX2014000162A (es) 2014-02-19
KR101552909B1 (ko) 2015-09-15
KR20150052818A (ko) 2015-05-14
BR122018016535B1 (pt) 2019-08-20
KR20150052817A (ko) 2015-05-14
CN104994384B (zh) 2018-07-20
AU2012278484B2 (en) 2016-05-05
CN103765887A (zh) 2014-04-30
US10257517B2 (en) 2019-04-09
SG10201605379RA (en) 2016-08-30
JP5989849B2 (ja) 2016-09-07
MY193612A (en) 2022-10-20
JP2015159601A (ja) 2015-09-03
US9591310B2 (en) 2017-03-07

Similar Documents

Publication Publication Date Title
BR122019014179B1 (pt) método de decodificação de vídeo
AU2016201791B2 (en) Method and apparatus for entropy coding video and method and apparatus for entropy decoding video
BR112013017395B1 (pt) Método decodificador de vídeo, e método codificador de vídeo
BR122015021373A2 (pt) aparelho para decodificar um vídeo
BR122013019952A2 (pt) Aparelho de decodificar um vídeo
BR112012025308B1 (pt) Método de codificar um vídeo, método de decodificar um vídeo codificado, equipamento de codificação de vídeo incluindo um processador, equipamento de decodificação de vídeo incluindo um processador, e meio de gravação legível por computador
BR112012002389B1 (pt) Método de decodificar um vídeo
BR122018010479B1 (pt) Aparelho para decodificar vídeo
BR122020014021B1 (pt) Aparelho para decodificar um vídeo
BR112014018115B1 (pt) Método de decodificar um vídeo
BR112013033699B1 (pt) método para decodificar dados de vídeo controlador por um processador
BR122021004152B1 (pt) Aparelho para decodificar vídeo
BR122021004836B1 (pt) Método para decodificar um vídeo codificado
BR122021013566B1 (pt) Método de decodificar um vídeo

Legal Events

Date Code Title Description
B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]
B15K Others concerning applications: alteration of classification

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

Ipc: H04N 19/119 (2014.01), H04N 19/13 (2014.01), H04N

B09B Patent application refused [chapter 9.2 patent gazette]
B12B Appeal against refusal [chapter 12.2 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

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