BR122021013575B1 - Método de decodificação de vídeo, e aparelho de decodificação de vídeo - Google Patents

Método de decodificação de vídeo, e aparelho de decodificação de vídeo Download PDF

Info

Publication number
BR122021013575B1
BR122021013575B1 BR122021013575-4A BR122021013575A BR122021013575B1 BR 122021013575 B1 BR122021013575 B1 BR 122021013575B1 BR 122021013575 A BR122021013575 A BR 122021013575A BR 122021013575 B1 BR122021013575 B1 BR 122021013575B1
Authority
BR
Brazil
Prior art keywords
encoding
slice
unit
quantization
depth
Prior art date
Application number
BR122021013575-4A
Other languages
English (en)
Inventor
Tammy Lee
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
Priority claimed from PCT/KR2013/000776 external-priority patent/WO2013115572A1/ko
Publication of BR122021013575B1 publication Critical patent/BR122021013575B1/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/124Quantisation
    • 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/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Abstract

Um método de decodificar um vídeo inclui obter sintaxe para determinar um valor inicial de um parâmetro de quantização (QP) usado para realizar quantização inversa nas unidades de codificação incluídas em um segmento de fatia, a partir de um fluxo de bits; obter um QP inicial de nível de fatia para predizer o QP usado para realizar quantização inversa nas unidades de codificação incluídas no segmento de fatia, com base na sintaxe obtida; e obter um QP predito de um primeiro grupo de quantização de uma unidade de dados que podem ser decodificados em paralelo, incluída no segmento de fatia, mediante uso do QP inicial de nível de fatia

Description

CAMPO TÉCNICO
[0001] A presente invenção se refere à codificação e decodificação de um vídeo.
FUNDAMENTOS DA TÉCNICA
[0002] Em geral, de acordo com os padrões de compactação de vídeo tal como Moving Picture Expert Group (MPEG) e H.26X, um fluxo de bits é gerado mediante compactação de dados de imagem através de processos de predição, transformação, quantização, e codificação de entropia.
[0003] No processo de predição, uma imagem de predição dos dados de imagem que devem ser codificados é gerada mediante realização de predição intra, utilizando correlações espaciais de imagens, ou predição inter, utilizando correlações temporais de imagens.
[0004] No processo de transformação, os dados de erro, que são uma diferença entre uma imagem original e a imagem de predição gerada no processo de predição, são transformados para o domínio de transformada mediante uso de vários métodos de transformação. Métodos de transformação, representativos, incluem a transformada discreta de cosseno (DCT) e a transformada de ondaleta.
[0005] No processo de quantização, os coeficientes de transformada gerados no processo de transformada são apropriadamente compactados com perda de acordo com o valor de erro e o tamanho do fluxo de bits alvo. A maioria dos codecs de vídeo e imagem padrão com base na compactação de perda realiza quantização e processos de quantização inversa de acordo com uma etapa de quantização. No processo de quantização, um valor quantizado é obtido mediante divisão de um valor de entrada pela etapa de quantização e então arredondando o valor dividido para um número inteiro. Devido ao processo de quantização, a informação é compactada com perda. Uma vez que todas as tecnologias de compactação de perda incluem um processo de quantização, os dados originais podem não ser perfeitamente restaurados, mas uma taxa de compactação pode ser aumentada.
DESCRIÇÃO DETALHADA DA INVENÇÃO PROBLEMA TÉCNICO
[0006] A presente invenção proporciona uma solução para aperfeiçoar um processo de predizer um parâmetro de quantização (QP) usado para realizar quantização ou quantização inversa para processar os dados de vídeo em paralelo.
SOLUÇÃO TÉCNICA
[0007] De acordo com um aspecto da presente invenção, um parâmetro de quantização predito (QP) de um primeiro grupo de quantização de uma unidade de dados que pode ser processada em paralelo é obtido mediante uso de um QP inicial de nível de fatia.
EFEITOS VANTAJOSOS
[0008] De acordo com as modalidades da presente invenção, um parâmetro de quantização (QP) predito de uma unidade de dados inicialmente quantizada ou inversamente quantizada pode ser obtido com base na informação de codificação de uma unidade de dados superior independentemente de uma ordem de processamento das unidades de codificação e, assim um problema de gargalo no qual o processamento de uma unidade de dados é retardado até que outra unidade de dados seja completamente processada, de acordo com uma ordem de processamento das unidades de dados, pode ser resolvido em um processo de quantização ou de quantização inversa.
DESCRIÇÃO DOS DESENHOS
[0009] As características e vantagens mencionadas acima e outras da presente invenção se tornarão mais evidentes mediante descrição em detalhe de suas modalidades exemplares com referência aos desenhos anexos nos quais: A Figura 1 é um diagrama de blocos de um aparelho para codificar um vídeo, de acordo com uma modalidade da presente invenção; A Figura 2 é um diagrama de blocos de um aparelho para decodificar um vídeo, de acordo com uma modalidade da presente invenção; A Figura 3 é um diagrama para descrever um conceito das unidades de codificação de acordo com uma modalidade da presente invenção; A Figura 4 é um diagrama de blocos de um codificador de imagem com base nas unidades de codificação, de acordo com uma modalidade da presente invenção; A Figura 5 é um diagrama de blocos de um decodificador de imagem com base nas unidades de codificação, de acordo com uma modalidade da presente invenção; A Figura 6 é um diagrama ilustrando as unidades de codificação mais profunda de acordo com as profundidades, e partições, de acordo com uma modalidade da presente invenção; A Figura 7 é um diagrama para descrever uma relação ente uma unidade de codificação e as unidades de transformação (TUs), de acordo com uma modalidade da presente invenção; A Figura 8 é um diagrama para descrever a informação de codificação das unidades de codificação correspondendo a uma profundidade codificada, de acordo com uma modalidade da presente invenção; A Figura 9 é um diagrama de unidades de codificação mais profunda de acordo com as profundidades, de acordo com uma modalidade da presente invenção; As Figuras 10 a 12 são diagramas para descrever uma relação entre as unidades de codificação, unidades de predição, e TUs, de acordo com uma modalidade da presente invenção; A Figura 13 é um diagrama para descrever uma relação entre uma unidade de codificação, uma unidade de predição, e uma TU, de acordo com informação de modo de codificação da Tabela 1; A Figura 14 é um diagrama detalhado de blocos de um quantizador ilustrado na Figura 4, de acordo com uma modalidade da presente invenção; A Figura 15 é um diagrama detalhada de blocos de um codificador de entropia ilustrado na Figura 4, de acordo com uma modalidade da presente invenção; A Figura 16 mostra segmentos de fatia, fatias, e unidades de codificação maiores (LCUs) que são unidades de dados usadas para dividir uma imagem, de acordo com uma modalidade da presente invenção; A Figura 17 mostra segmentos de fatia e blocos de pixels que são unidades de dados usadas para dividir uma imagem, de acordo com uma modalidade da presente invenção; As Figuras 18A e 18B mostram correlações entre blocos de pixels, segmentos de fatia, fatias, e LCUs, de acordo com uma modalidade da presente invenção; A Figura 19 é um diagrama de referência para descrever processamento paralelo de frente de onda (WPP), de acordo com uma modalidade da presente invenção; A Figura 20 é um diagrama para descrever um processo de obter um parâmetro de quantização (QP) predito de uma LCU incluída em um segmento de fatia, de acordo com uma modalidade da presente invenção; A Figura 21 é um diagrama para descrever um processo de obter um QP predito de uma unidade de codificação incluída em uma LCU, de acordo com uma modalidade da presente invenção; A Figura 22 é uma tabela mostrando sintaxe relacionada ao QP provida para um conjunto de parâmetros de imagem (PPS), de acordo com uma modalidade da presente invenção; A Figura 23 é uma tabela mostrando sintaxe relacionada ao QP provida para um cabeçalho de segmento de fatia, de acordo com uma modalidade da presente invenção; A Figura 24 é uma tabela mostrando sintaxe relacionada ao QP adicionada em informação de TU, de acordo com uma modalidade da presente invenção; A Figura 25 é um fluxograma de um método de codificação de vídeo de acordo com uma modalidade da presente invenção; A Figura 26 é um diagrama detalhado de blocos de um decodificador de entropia ilustrado na Figura 5, de acordo com uma modalidade da presente invenção; A Figura 27 é um diagrama detalhado de blocos de um quantizador inverso ilustrado na Figura 5, de acordo com uma modalidade da presente invenção; e A Figura 28 é um fluxograma de um método de decodificação de vídeo de acordo com uma modalidade da presente invenção.
MELHOR MODO
[00010] De acordo com um aspecto da presente invenção, é provido um método de decodificar um vídeo, o método incluindo a obtenção de sintaxe para determinar um valor inicial de um parâmetro de quantização (QP) usado para realizar quantização inversa em unidades de codificação incluídas em um segmento de fatia, a partir de um fluxo de bits; obter um QP inicial de nível de fatia para predizer o QP usado para realizar quantização inversa nas unidades de codificação incluídas no segmento de fatia, com base na sintaxe obtida; obter um QP predito de um primeiro grupo de quantização de uma unidade de dados que pode ser decodificada em paralelo incluída no segmento de fatia, mediante uso do QP inicial de nível de fatia; determinar um QP a ser aplicado ao primeiro grupo de quantização com base no QP predito obtido; e realizar quantização inversa em uma unidade de codificação incluída no primeiro grupo de quantização, com base no QP determinado.
[00011] De acordo com outro aspecto da presente invenção, é provido um aparelho para decodificar um vídeo, o aparelho incluindo um decodificador de entropia para obter sintaxe para determinar um valor inicial de um parâmetro de quantização (QP) usado para realizar quantização inversa em unidades de codificação incluídas em um segmento de fatia atual, a partir de um fluxo de bits; e um quantizador inverso para obter um QP inicial de nível de fatia para predizer o QP usado para realizar quantização inversa nas unidades de codificação incluídas no segmento de fatia, com base na sintaxe obtida, obtendo um QP predito de um primeiro grupo de quantização de uma unidade de dados que podem ser decodificados em paralelo incluída no segmento de fatia, mediante uso do QP inicial de nível de fatia, determinando um QP a ser aplicado ao primeiro grupo de quantização com base no QP predito obtido, e realizar quantização inversa em uma unidade de codificação incluída no primeiro grupo de quantização, com base no QP determinado.
[00012] De acordo com outro aspecto da presente invenção, é provido um método de codificar um vídeo, o método incluindo obter um parâmetro de quantização (QP) usado para realizar quantização em unidades de codificação incluídas em um segmento de fatia; determinar um QP inicial de nível de fatia para predizer um QP de um primeiro grupo de quantização de uma unidade de dados que podem ser decodificados em paralelo, incluída no segmento de fatia; obter um QP predito do primeiro grupo de quantização mediante uso do QP inicial de nível de fatia determinado; e gerar um fluxo de bits incluindo informação de sintaxe indicando o QP inicial de nível de fatia determinado.
[00013] De acordo com outro aspecto da presente invenção, é provido um aparelho para codificar um vídeo, o aparelho incluindo um quantizador para realizar quantização em unidades de codificação incluídas em um segmento de fatia, determinando um parâmetro de quantização (QP) inicial de nível de fatia para predizer um QP de um primeiro grupo de quantização de uma unidade de dados que podem ser decodificados em paralelo, incluída no segmento de fatia, obtendo um QP predito do primeiro grupo de quantização mediante uso do QP inicial de nível de fatia determinada, e produzindo uma diferença entre um QP usado para realizar a quantização em uma unidade de codificação incluída no primeiro grupo de quantização e o QP predito, e o QP inicial de nível de fatia determinado; e um codificador de entropia para gerar um fluxo de bits incluindo informação de sintaxe indicando o QP inicial de nível de fatia determinado.
MODO DA INVENÇÃO
[00014] Em seguida, a presente invenção será descrita em detalhe mediante explanação das modalidades da invenção com referência aos desenhos anexos.
[00015] A Figura 1 é um diagrama de blocos de um aparelho de codificação de vídeo 100 de acordo com uma modalidade da presente invenção.
[00016] aparelho de codificação de vídeo 100 inclui um divisor de unidade de codificação maior (LCU) 110, um determinador de unidade de codificação 120, e uma unidade de saída 130.
[00017] divisor LCU 110 pode dividir uma imagem atual de uma imagem com base em uma LCU, que é uma unidade de codificação de um tamanho máximo. Se a imagem atual for maior do que a LCU, os dados de imagem da imagem atual podem ser divididos em pelo menos uma LCU. A LCU de acordo com uma modalidade da presente invenção pode ser uma unidade de dados tendo um tamanho de 32x32, 64x64, 128x128, 256x256, etc., em que o formato da unidade de dados é um quadrado que tem uma largura e comprimento em quadrados de 2 e é maior do que 8. Os dados de imagem podem ser emitidos para o determinador de unidade de codificação 120 de acordo com cada LCU.
[00018] Uma unidade de codificação de acordo com uma modalidade exemplar pode ser caracterizada por um tamanho máximo e uma profundidade. A profundidade denota um número de vezes em que a unidade de codificação é dividida espacialmente a partir da LCU e, à medida que a profundidade é aprofundada ou aumentada, unidades de codificação mais profundas, de acordo com as profundidades, podem ser divididas a partir da LCU para uma unidade de codificação mínima. Uma profundidade da LCU é uma profundidade mais elevada e uma profundidade da unidade de codificação mínima é uma profundidade mais baixa. Como o tamanho de uma unidade de codificação correspondendo a cada profundidade diminui à medida que a profundidade da LCU é aprofundada, uma unidade de codificação correspondendo a uma profundidade superior pode incluir uma pluralidade de unidades de codificação correspondendo às profundidades inferiores.
[00019] Conforme descrito acima, os dados de imagem do imagem 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 profunda que são divididas de acordo com as profundidades. Como a LCU de acordo com uma modalidade exemplar é dividida de acordo com as profundidades, os dados de imagem de um domínio espacial incluído na LCU podem ser classificados de forma hierárquica de acordo com as profundidades.
[00020] Uma profundidade máxima e um tamanho máximo de uma unidade de codificação, que limitam o número total de vezes em que a altura e uma largura da LCU são divididas de forma hierárquica, podem ser predeterminados.
[00021] O determinador de unidade de codificação 120 codifica pelo menos uma região dividida obtida mediante divisão de uma região da LCU de acordo com as profundidades, e determina uma profundidade para produzir os dados de imagem finalmente codificados de acordo com a pelo menos uma região dividida. Em outras palavras, o determinador de unidade de codificação 120 determina uma profundidade codificada mediante codificação dos dados de imagem nas unidades de codificação mais profunda de acordo com as profundidades, de acordo com a LCU da imagem atual, e selecionando uma profundidade tendo o erro de codificação mínimo. A profundidade codificada determinada e os dados de imagem codificados de acordo com a profundidade codificada determinada são emitidos para a unidade de saída 130.
[00022] Os dados de imagem na LCU são codificados com base nas unidades de codificação mais profundas correspondendo a pelo menos uma profundidade igual ou abaixo da profundidade máxima, e os resultados da 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 erro de codificação mínimo pode ser selecionada após comparação dos erros de codificação das unidades de codificação mais profundas. Pelo menos uma profundidade codificada pode ser selecionada para cada LCU.
[00023] tamanho da LCU é dividido à medida que uma unidade de codificação é dividida hierarquicamente de acordo com as profundidades, e à medida que aumenta o número de unidades de codificação. Além disso, mesmo se as unidades de codificação corresponder à mesma profundidade em uma LCU, cada uma das unidades de codificação correspondendo à mesma profundidade pode ser dividida para uma profundidade inferior mediante medição de um erro de codificação dos dados de imagem de cada unidade de codificação, separadamente. Consequentemente, mesmo quando os dados de imagem são incluídos em uma LCU, os dados de imagem são divididos em regiões de acordo com as profundidades e os erros de codificação podem diferir de acordo com as regiões em uma LCU, e assim as profundidades codificadas podem diferir de acordo com as regiões nos dados de imagem. Assim, uma ou mais profundidades codificadas podem ser determinadas em uma LCU, e os dados de imagem da LCU podem ser divididos de acordo com as unidades de codificação de pelo menos uma profundidade codificada.
[00024] Consequentemente, o determinador de unidade de codificação 120 pode determinar unidades de codificação tendo uma estrutura de árvore incluída na LCU. As ‘unidades de codificação tendo uma estrutura de árvore’ de acordo com uma modalidade da presente invenção incluem unidades de codificação correspondendo a uma profundidade determinada para ser a profundidade codificada, dentre todas as unidades de codificação mais profunda incluídas na LCU. Uma unidade de codificação de uma profundidade codificada pode ser determinada hierarquicamente de acordo com as profundidades na mesma região da LCU, e podem ser determinadas independentemente em diferentes regiões. Similarmente, uma profundidade codificada em uma região atual pode ser determinada independentemente a partir de uma profundidade codificada em outra região.
[00025] Uma profundidade máxima de acordo com uma modalidade da presente invenção é um índice relacionado ao número de vezes que a divisão é realizada a partir de uma LCU para uma unidade de codificação mínima. Uma primeira profundidade máxima de acordo com uma modalidade da presente invenção pode denotar o número total de vezes em que a divisão é realizada a partir da LCU para a unidade de codificação mínima. Uma segunda profundidade máxima de acordo com uma modalidade da presente invenção pode denotar o número total de níveis de profundidade a partir da LCU para a unidade de codificação mínima. Por exemplo, quando uma profundidade da LCU é de 0, uma profundidade de uma unidade de codificação, na qual a LCU é dividida uma vez, pode ser ajustada para 1, e uma profundidade de uma unidade de codificação, na qual a LCU dividida duas vezes, pode ser ajustada para 2. Aqui, se a unidade de codificação mínima for uma unidade de codificação na qual a LCU é dividida quatro vezes, 5 níveis de profundidade, de profundidade 0, 1, 2, 3 e 4 existem, e assim a primeira profundidade máxima pode ser ajustada para 4, e a segunda profundidade máxima pode ser ajustada para 5.
[00026] A codificação de predição, e a transformada, podem ser realizadas de acordo com a LCU. A codificação de predição e a transformada também são realizadas com base nas unidades de codificação mais profundas de acordo com uma profundidade igual ou uma profundidade menor do que a profundidade máxima, de acordo com a LCU. A transformação pode ser realizada de acordo com o método de transformada ortogonal ou transformada de número inteiro.
[00027] Como o número de unidades de codificação mais profunda aumenta sempre que a LCU é dividida de acordo com as profundidades, a codificação incluindo a codificação de predição e a transformação é realizada em todas as unidades de codificação mais profunda geradas à medida que aumenta a profundidade. Para conveniência de descrição, a codificação de predição e a transformação serão descritas agora com base na unidade de codificação de uma profundidade atual, em uma LCU.
[00028] O aparelho de codificação de vídeo 100 pode selecionar de forma variada um tamanho ou formato de uma unidade de dados para codificar os dados de imagem. Para codificar os dados de imagem, operações tal como codificação de predição, transformação, e codificação de entropia, são realizadas, e dessa vez, a mesma unidade de dados pode ser usada para todas as operações ou unidades de dados diferentes podem ser usadas para cada operação.
[00029] Por exemplo, o aparelho de codificação de vídeo 100 pode selecionar não apenas uma unidade de codificação para codificar os dados de imagem, mas também uma unidade de dados diferente da unidade de codificação para realizar a codificação de predição nos dados de imagem na unidade de codificação.
[00030] Para realizar codificação de predição na LCU, a codificação de predição pode ser realizada com base em uma unidade de codificação correspondendo a uma profundidade codificada, isto é, com base em uma unidade de codificação que não mais é dividida em unidades de codificação correspondendo a uma profundidade inferior. Em seguida, a unidade de codificação que não é mais dividida e se torna uma unidade básica para codificação de predição será referida agora como uma ‘unidade de predição’. Uma partição obtida mediante divisão da unidade de predição pode incluir uma unidade de predição ou uma unidade de dados obtida mediante divisão de pelo menos uma de uma altura e uma largura da unidade de predição. A partição é uma unidade de dados obtida pela divisão da unidade de predição da unidade de codificação e a unidade de predição pode ser uma partição com o mesmo tamanho que a unidade de codificação.
[00031] 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 predição de 2Nx2N, 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 mediante divisão simétrica de uma altura ou largura da unidade de predição, partições obtidas mediante divisão assimétrica da altura ou largura da unidade de predição, tal como 1:n ou n:1, partições que são obtidas mediante divisão geométrica da unidade de predição, e partições tendo formatos arbitrários.
[00032] Um modo de predição da unidade de predição pode ser pelo menos um de um modo intra, um modo inter, e um modo de salto. Por exemplo, o modo intra ou o modo inter pode ser realizado na partição de 2Nx2N, 2NxN, Nx2N ou NxN. Além disso, o modo de salto pode ser realizado apenas na partição de 2Nx2N. A codificação é realizada independentemente em uma unidade de predição em uma unidade de codificação, desse modo selecionando um modo de predição tendo um erro de codificação mínimo.
[00033] O aparelho de codificação de vídeo 100 também pode realizar a transformação nos dados de imagem em uma unidade de codificação com base 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.
[00034] Para realizar a transformada na unidade de codificação, a transformada pode ser realizada com base em uma unidade de transformada tendo um tamanho menor do que ou igual àquele da unidade de codificação. Por exemplo, a unidade de dados para a transformada pode incluir uma unidade de dados para um modo intra e uma unidade de dados para um modo inter.
[00035] Uma unidade de dados usada como uma base da transformada será referida agora como uma “unidade de transformada (TU)”. Similarmente à unidade de codificação, a TU na unidade de codificação pode ser dividida recursivamente em regiões de tamanhos menores, de modo que a TU pode ser determinada independentemente em unidades de regiões. Assim, os dados residuais na unidade de codificação podem ser divididos de acordo com a TU tendo a estrutura de árvore de acordo com as profundidades de transformada.
[00036] Uma profundidade de transformada indicando o número de vezes que a divisão é realizada para alcançar a TU mediante divisão da altura e largura da unidade de codificação também pode ser estabelecida na TU. Por exemplo, em uma unidade de codificação atual de 2Nx2N, uma profundidade de transformada pode ser 0 quando o tamanho de uma TU for 2Nx2N, pode ser 1 quando o tamanho de uma TU é NxN, e pode ser 2 quando o tamanho de uma TU for N/2xN/2. Isto é, a TU tendo a estrutura de árvore também pode ser estabelecida de acordo com as profundidades de transformada.
[00037] Informação de codificação de acordo com as unidades de codificação correspondendo a uma profundidade codificada requer não apenas informação sobre a profundidade codificada, mas também sobre informação relacionada à codificação de predição e transformação. Consequentemente, o determinador de unidade de codificação 120 não apenas determina uma profundidade codificada tendo o menos erro de codificação, mas também determina um tipo de partição em uma unidade de predição, um modo de predição de acordo com as unidades de predição, e um tamanho de uma TU para transformação.
[00038] As unidades de codificação de acordo com uma estrutura de árvore em uma LCU e um método de determinar uma partição, de acordo com as modalidades da presente invenção, serão descritas em detalhe abaixo com referência às Figuras 3 a 12.
[00039] determinador de unidade de codificação 120 pode medir um erro de codificação de unidades de codificação mais profundo de acordo com as profundidades utilizando Otimização de Distorção de Taxa com base em multiplicadores Lagrangianos.
[00040] A unidade de saída 130 produz os dados de imagem da LCU, que é codificada com base na pelo menos uma profundidade codificada determinada pelo determinador de unidade de codificação 120, e informação sobre o modo de codificação de acordo com a profundidade codificada, em fluxos de bits.
[00041] Os dados de imagem codificados podem ser obtidos mediante codificação de dados residuais de uma imagem.
[00042] A informação sobre o modo de codificação de acordo com a profundidade codificada pode incluir informação sobre a profundidade codificada, sobre o tipo de partição na unidade de predição, o modo de predição, e o tamanho da TU.
[00043] A informação sobre a profundidade codificada pode ser definida pelo uso de informação dividida de acordo com as profundidades, que representa se a codificação é realizada em unidades de codificação de uma profundidade inferior em vez de uma profundidade atual. Se a profundidade atual da unidade de codificação atual for a profundidade codificada, os dados de imagem na unidade de codificação atual são codificados e produzidos, e assim a informação dividida pode ser definida não para dividir a unidade de codificação atual para uma profundidade menor. 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 profundidade inferior, e assim a informação dividida pode ser definida para dividir a unidade de codificação atual para obter as unidades de codificação da profundidade inferior.
[00044] Se a profundidade atual não for a profundidade codificada, a codificação é realizada na unidade de codificação que é dividida para unidade de codificação da profundidade inferior. Como existe pelo menos uma unidade de codificação da profundidade inferior em uma unidade de codificação da profundidade atual, a codificação é realizada repetidamente em cada unidade de codificação da profundidade inferior, e assim a codificação pode ser realizada de forma recursiva para as unidades de codificação tendo a mesma profundidade.
[00045] Como as unidades de codificação tendo uma estrutura de árvore são determinadas para uma LCU, e informação sobre pelo menos um modo de codificação é determinada para uma unidade de codificação de uma profundidade codificada, a informação sobre pelo menos um modo de codificação pode ser determinada para uma LCU. Além disso, uma profundidade codificada dos dados de imagem da LCU pode ser diferente de acordo com os locais, visto que os dados de imagem são divididos hierarquicamente de acordo com as profundidades e, assim, a informação sobre a profundidade codificada, e o modo de codificação, pode ser ajustada para os dados de imagem.
[00046] Consequentemente, a unidade de saída 130 pode atribuir informação de codificação sobre um percurso codificado correspondente e um modo de codificação para pelo menos uma da unidade de codificação, unidade de predição, e um modo de codificação para ao menos uma da unidade de codificação, unidade de predição, e uma unidade mínima incluída na LCU.
[00047] A unidade mínima de acordo com uma modalidade da presente invenção é uma unidade de dados retangular obtida mediante divisão da unidade de codificação mínima constituindo a profundidade mais baixa por 4. Alternativamente, a unidade mínima pode ser uma unidade de dados retangular máxima que pode ser incluída em todas as unidades de codificação, unidades de predição, unidades de partição e TUs incluídas na LCU.
[00048] Por exemplo, a informação de codificação produzida através da unidade de saída 130 pode ser classificada em informação de codificação de acordo com as unidades de codificação, e informação de codificação de acordo com as unidades de predição. A informação de codificação de acordo com as unidades de codificação pode incluir a informação sobre o modo de predição e sobre o tamanho das partições. A informação de codificação de acordo com as unidades de predição pode incluir informação sobre uma direção estimada de um modo inter, em relação a um índice de imagem de referência do modo inter, em relação a um vetor de movimento, em relação a um componente croma de um modo intra, e em relação a um método de interpolação do modo intra. Além disso, informação sobre um tamanho máximo da unidade de codificação definida de acordo com as imagens, fatias ou GOPs, e informação sobre uma profundidade máxima podem ser inseridas em um cabeçalho de um fluxo de bits.
[00049] No aparelho de codificação de vídeo 100, a unidade de codificação mais profunda pode ser uma unidade de codificação obtida mediante divisão de 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 é 2Nx2N, o tamanho da unidade de codificação da profundidade inferior é NxN. Além disso, a unidade de codificação da profundidade atual tendo o tamanho de 2Nx2N pode incluir no máximo 4 das unidades de codificação da profundidade inferior.
[00050] Consequentemente, o aparelho de codificação de vídeo 10 pode formar as unidades de codificação tendo a estrutura de árvore mediante determinação das unidades de codificação tendo um formato ótimo e um tamanho ótimo para cada LCU, com base no tamanho da LCU e profundidade máxima determinada considerando- se as características da imagem atual. Além disso, como a codificação pode ser realizada em cada LCU mediante uso de qualquer um dos vários modos de predição e transformações, um modo de codificação ótima pode ser determinado considerando as características da unidade de codificação de vários tamanhos de imagem.
[00051] Assim, se uma imagem tendo alta resolução ou grande quantidade de dados for codificada em um macro bloco convencional, um número de macro blocos por imagem aumenta excessivamente. Consequentemente, um número de peças de informação compactada gerados para cada macro bloco aumenta, e assim é difícil transmitir a informação compactada e diminui a eficiência de compactação de dados. Contudo, mediante uso do aparelho de codificação de vídeo 100, a eficiência de compactação de imagem pode ser aumentada uma vez que uma unidade de codificação é ajustada enquanto considerando as características de uma imagem enquanto aumentando o tamanho máximo de uma unidade de codificação enquanto considerando um tamanho da imagem.
[00052] A Figura 2 é um diagrama de blocos de um aparelho de decodificação de vídeo 200 de acordo com uma modalidade da presente invenção.
[00053] O aparelho de decodificação de vídeo 200 inclui um receptor 210, um extrator de informação de codificação e dados de imagem 220, e um decodificador de dados de imagem 230. Definições dos vários termos, tal como uma unidade de codificação, uma profundidade, uma unidade de predição, uma TU, e informação sobre vários modos de codificação, para várias operações do aparelho de decodificação de vídeo 200 são idênticas àquelas descritas com referência à Figura 1 e ao aparelho de codificação de vídeo 100.
[00054] O receptor 210 recebe e analisa um fluxo de bits de um vídeo codificado. O extrator de informação de codificação e dados de imagem 220 extrai os dados de imagem codificados para cada unidade de codificação a partir do fluxo de bits analisado, em que as unidades de codificação têm uma estrutura de árvore de acordo com cada LCU, e emite os dados de imagem extraídos para o decodificador de dados de imagem 230. O extrator de informação de codificação e dados de imagem 220 pode extrair a informação sobre uma LCU de uma imagem atual, a partir de um cabeçalho da imagem atual.
[00055] Além disso, o extrator de informação de codificação e dados de imagem 220 extrai informação sobre uma profundidade codificada e um modo de codificação para as unidades de codificação tendo uma estrutura de árvore de acordo com cada LCU, a partir do fluxo de bits analisado. A informação extraída sobre a profundidade codificada e o modo de codificação é emitida para o decodificador de dados de imagem 230. Em mais detalhe, os dados de imagem em um fluxo de bits são divididos para a LCU de modo que o decodificador de dados de imagem 230 decodifica os dados de imagem para cada LCU.
[00056] A informação sobre a profundidade codificada e o modo de codificação de acordo com a LCU pode ser ajustada para informação sobre ao menos uma unidade de codificação correspondendo à profundidade codificada, e informação sobre um modo de codificação pode incluir informação sobre um tipo de partição de uma unidade de codificação correspondente, correspondendo à profundidade codificada, sobre um modo de predição, e um tamanho de uma TU. Além disso, informação de divisão de acordo com as profundidades pode ser extraída como a informação sobre a profundidade codificada.
[00057] A informação sobre a profundidade codificada e o modo de codificação de acordo com cada LCU extraída pelos dados de imagem e extrator de informação de codificação 220 é informação sobre uma profundidade codificada e um modo de codificação determinado para gerar um erro de codificação mínimo quando um codificador, tal como o aparelho de codificação de vídeo 100, realiza repetidamente a codificação para cada unidade de codificação mais profunda de acordo com as profundidades de acordo com cada LCU. Consequentemente, o aparelho de decodificação de vídeo 200 pode restaurar uma imagem mediante decodificação dos dados de imagem de acordo com uma profundidade codificada e um modo de codificação que gera o erro de codificação mínimo.
[00058] Como a informação de codificação sobre a profundidade codificada e o modo de codificação pode ser atribuída a uma unidade de dados predeterminada dentre uma unidade de codificação correspondente, uma unidade de predição, e uma unidade mínima, o extrator de informação de codificação e dados de imagem 220 pode extrair a informação sobre a profundidade codificada e o modo de codificação de acordo com as unidades de dados predeterminadas. As unidades de dados predeterminadas as quais a mesma informação sobre a profundidade codificada e o modo de codificação é atribuída pode ser inferida como sendo a unidade de dados incluída na mesma LCU.
[00059] O decodificador de dados de imagem 230 restaura a imagem atual mediante decodificação dos dados de imagem em cada LCU com base na informação 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 decodificados com base na informação extraída sobre o tipo de partição, o modo de predição, e a TU para cada unidade de codificação dentre as unidades de codificação que têm a estrutura de árvore incluída em cada LCU. Um processo de decodificação pode incluir um processo de predição incluindo predição intra e compensação de movimento, e um processo de transformação inversa.
[00060] O decodificador de dados de imagem 230 pode realizar intra predição ou compensação de movimento de acordo com uma partição e um modo de predição de cada unidade de codificação, com base na informação sobre o tipo de partição e o modo de predição da unidade de predição da unidade de codificação das profundidades codificadas.
[00061] Além disso, o decodificador de dados de imagem 230 pode realizar a transformada inversa de acordo com cada TU na unidade de codificação, com base na informação sobre o tamanho da TU da unidade de codificação de acordo com as profundidades codificadas, de modo a realizar a transformada inversa de acordo com as LCUs.
[00062] O decodificador de dados de imagem 230 pode determinar pelo menos uma profundidade codificada de uma LCU atual mediante uso de informação de divisão de acordo com as profundidades. Se a informação de divisão indicar que os dados de imagem não estão mais divididos na profundidade atual, a profundidade atual é uma profundidade codificada. Consequentemente, o decodificador de dados de imagem 230 pode decodificar a unidade de codificação da profundidade atual com relação aos dados de imagem da LCU atual mediante uso da informação sobre o tipo de partição da unidade de predição, o modo de predição, e o tamanho da TU.
[00063] Em outras palavras, unidades de dados contendo a informação de codificação incluindo a mesma informação de divisão podem ser agrupadas mediante observação do conjunto de informação de codificação atribuído para a unidade de dados predeterminada dentre a unidade de codificação, a unidade de predição, e a unidade mínima, e as unidades de dados agrupados podem ser considerados como uma unidade de dados a ser decodificada pelo decodificador de dados de imagem 230 no mesmo modo de codificação.
[00064] O aparelho de decodificação de vídeo 200 pode obter informação sobre ao menos uma unidade de codificação que gera o erro de codificação mínimo quando a codificação é realizada de forma recursiva para cada LCU, e pode usar a informação para decodificar a imagem atual. Em outras palavras, dados de imagem codificados das unidades de codificação tendo a estrutura de árvore determinada para serem as unidades de codificação ótima em cada LCU, podem ser decodificados.
[00065] Consequentemente, mesmo se os dados de imagem tiverem uma elevada resolução e uma grande quantidade de dados, os dados de imagem podem ser decodificados eficientemente e restaurados mediante uso de um tamanho de uma unidade de codificação e um modo de codificação, que são determinados de forma adaptativa de acordo com as características dos dados de imagem, mediante uso de informação sobre um modo de codificação ótimo recebido a partir de um codificador.
[00066] Um método de determinar unidades de codificação tendo uma estrutura de árvore, uma unidade de predição, e uma TU, de acordo com uma modalidade da presente invenção, serão descritos agora com referência às Figuras 3 a 13.
[00067] A Figura 3 é um diagrama para descrever um conceito das unidades de codificação de acordo com uma modalidade da presente invenção.
[00068] Um tamanho de uma unidade de codificação pode ser expresso em largura x altura, e pode ser 64x64, 32x32, 16x16 e 8x8. Uma unidade de codificação de 64x64 pode ser dividida em partições de 64x64, 64x32, 32x64 ou 32x32, e uma unidade de codificação de 32x32 pode ser dividida em partições de 32x32, 32x16, 16x32, ou 16x16, uma unidade de codificação de 16x16 pode ser dividida em partições de 16x16, 16x8, 8x16 ou 8x8, e uma unidade de codificação de 8x8 pode ser dividida em partições de 8x8, 8x4, 4x8 ou 4x4.
[00069] Nos dados de vídeo 310, uma resolução é de 1920x1080, um 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 1920x1080, um tamanho máximo de codificação é de 64, e uma profundidade máxima é de 3. Nos dados de vídeo 330, uma resolução é de 352x288, 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 Figura 13 denota um número total de divisões a partir de uma LCU para uma unidade de decodificação mínima.
[00070] Se uma resolução for elevada ou se uma quantidade de dados for grande, um tamanho máximo de uma unidade de codificação pode ser tão grande para não apenas aumentar a eficiência de codificação, mas também refletir de forma exata 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 a resolução mais alta do que os dados de vídeo 330 pode ser de 64.
[00071] Como a profundidade máxima dos dados de vídeo 310 é de 2, as unidades de codificação 315 dos dados de vídeo 310 podem incluir uma LCU tendo um tamanho de eixo longo de 64, e unidades de codificação tendo tamanhos de eixo longos de 32 e 16 uma vez que as profundidades são aprofundadas para duas camadas mediante divisão duas vezes da LCU. Entretanto, como a profundidade máxima dos dados de vídeo 330 é de 1, as unidades de codificação 335 dos dados de vídeo 330 podem incluir uma LCU tendo um tamanho de eixo longo de 16, e unidades de codificação tendo um tamanho de eixo longo de 8 uma vez que as profundidades são aprofundadas para uma camada mediante divisão uma vez da LCU.
[00072] Como a profundidade máxima dos dados de vídeo 320 é de 3, as unidades de codificação 325 dos dados de vídeo 320 podem incluir uma LCU tendo um tamanho de eixo longo de 64, e unidades de codificação tendo tamanhos de eixo longo de 32, 16 e 8 uma vez que as profundidades são aprofundadas para 3 camadas mediante divisão da LCU três vezes. À medida que a profundidade é aprofundada, informação detalhada pode ser expressa com exatidão.
[00073] A Figura 4 é um diagrama de blocos de um codificador de imagem 400 com base nas unidades de codificação, de acordo com uma modalidade da presente invenção.
[00074] O codificador de imagem 400 realiza operações do determinador de unidade de codificação 120 do equipamento de codificação de vídeo 100 para codificar os dados de imagem. Em outras palavras, um preditor intra 410 realiza predição intra nas unidades de codificação em um modo intra, dentre uma imagem atual 405, e um estimador de movimento 420 e um compensador de movimento 425 realiza estimação inter e compensação de movimento nas unidades de codificação em um modo inter dentre a imagem atual 405 mediante uso da imagem atual 405, e um quadro de referência 495.
[00075] Os dados emitidos a partir do preditor intra 410, do estimador de movimento 420, e do compensador de movimento 425 são emitidos como um coeficiente de transformação quantizado através do transformador 430 e de um quantizador 440. O coeficiente de transformação quantizado é 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 imagem de referência 495 após ser pós-processado através de uma unidade de desblocagem 480 e uma unidade de filtração de laço 490. O coeficiente de transformação quantizado pode ser emitido como um fluxo de bits 455 através de um codificador de entropia 450.
[00076] Para que o codificador de imagem 400 seja aplicado no equipamento de codificação de vídeo 100, todos os elementos do codificador de imagem 400, isto é, o preditor intra 410, o estimador de movimento 420, o compensador de movimento 425, o transformador 430, o quantizador 440, o codificador de entropia 450, o quantizador inverso 460, o transformador inverso 470, a unidade de desblocagem 480, e a unidade de filtração de laço 490 realizam operações com base em cada unidade de codificação dentre unidades de codificação tendo uma estrutura de árvore enquanto considerando a profundidade máxima de cada LCU.
[00077] Especificamente, o preditor intra 410, o estimador de movimento 420, e o compensador de movimento 425 determinam partições e um modo de predição de cada unidade de codificação dentre as unidades de codificação tendo uma estrutura de árvore enquanto considerando o tamanho máximo e a profundidade máxima de uma LCU atual, e o transformador 430 determina o tamanho da TU em cada unidade de codificação dentre as unidades de codificação tendo uma estrutura de árvore.
[00078] A Figura 5 é um diagrama de blocos de um decodificador de imagem 500 com base nas unidades de codificação, de acordo com uma modalidade da presente invenção.
[00079] Um analisador 510 analisa os dados de imagem codificados a serem decodificados e informação sobre a codificação exigida para decodificação a partir de um fluxo de bits 505. Os dados de imagem codificados são emitidos como dados quantizados inversos através de um decodificador de entropia 520 e um quantizador inverso 530, e os dados quantizados inversos são restaurados para dados de imagem em um domínio espacial através de um transformador inverso 540.
[00080] Um intra preditor 550 realiza predição intra nas unidades de codificação em um modo intra com relação aos dados de imagem no domínio espacial, e um compensador de movimento 560 realiza compensação de movimento nas unidades de codificação em um modo inter, mediante uso de uma imagem de referência 585.
[00081] Os dados de imagem no domínio espacial, os quais passaram através do preditor intra 550 e do compensador de movimento 560, podem ser emitidos como um quadro restaurado 595 após serem pós-processados através de uma unidade de desblocagem 570 e uma unidade de filtração de laço 580. Além disso, os dados de imagem que são pós-processados através da unidade de desblocagem 570 e da unidade de filtração de laço 580 podem ser emitidos como o quadro de referência 595.
[00082] Para que o decodificador de dados de imagem 230 do aparelho de decodificação de vídeo 200 decodifique os dados de imagem, operações após o analisador 510 do decodificador de imagem 500 podem ser realizadas.
[00083] Para que o decodificador de imagem 500 seja aplicado no equipamento de decodificação de vídeo 200, todos os elementos do decodificador de imagem 500, isto é, o analisador 510, o decodificador de entropia 520, o quantizador inverso 530, o transformador inverso 540, o preditor intra 550, o compensador de movimento 560, a unidade de desblocagem 570, e a unidade de filtração de laço 580 realizam operações com base nas unidades de codificação tendo uma estrutura de árvore para cada LCU.
[00084] Especificamente, O preditor intra 550 e o compensador de movimento 560 realizam operações com base nas partições e em um modo de predição para cada uma das unidades de codificação tendo uma estrutura de árvore, e o transformador inverso 540 realiza operações com base em um tamanho de uma TU para cada unidade de codificação.
[00085] A Figura 6 é um diagrama ilustrando unidades de codificação mais profunda de acordo com as profundidades, e partições, de acordo com uma modalidade da presente invenção.
[00086] O aparelho de codificação de vídeo 100 e o aparelho de decodificação de vídeo 200 utilizam unidades de codificação hierárquicas para considerar as características de uma imagem. Uma altura máxima, uma largura máxima, e uma profundidade máxima das unidades de codificação podem ser determinadas de forma adaptativa de acordo com as características da imagem, ou podem ser ajustadas de forma diferente por um usuário. Tamanhos de unidades de codificação mais profundas, de acordo com as profundidades, podem ser determinados de acordo com o tamanho máximo predeterminado da unidade de codificação.
[00087] Em uma estrutura hierárquica 600 das unidades de codificação, de acordo com uma modalidade exemplar, a altura máxima e a largura máxima das unidades de codificação são individualmente de 64, e a profundidade máxima é de 4. Nesse caso a profundidade máxima se refere a um número total de vezes que a unidade de codificação é dividida a partir da LCU para a unidade de codificação mínima. Como uma profundidade é aprofundada 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 individualmente divididas. Além disso, uma unidade de predição e as partições, que são as bases para codificação de predição de cada unidade de codificação mais profunda, são mostradas ao longo de um eixo horizontal da estrutura hierárquica 600.
[00088] Em outras palavras, uma unidade de codificação 610 é uma LCU na estrutura hierárquica 600, em que uma profundidade é de 0 e um tamanho, isto é, uma altura por largura, é de 64x64. A profundidade é aprofundada ao longo do eixo vertical, e existe uma unidade de codificação 620, tendo um tamanho de 32x32, e uma profundidade de 1; uma unidade de codificação 630, tendo um tamanho de 16x16, e uma profundidade de 2; e existe uma unidade de codificação 640, tendo um tamanho de 8x8, e uma profundidade de 3, e existe uma unidade de codificação 650 tendo o tamanho de 4x4 e uma profundidade de 4 é uma unidade de codificação mínima. A unidade de codificação 650 tendo o tamanho de 4x4 e a profundidade de 4 é uma unidade de codificação mínima.
[00089] A unidade de predição e as partições de uma unidade de codificação são arranjadas 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 predição, a unidade de predição pode ser dividida em partições incluídas na unidade de codificação 610, isto é, uma partição 610 tendo um tamanho de 64x64, partições 612 tendo o tamanho de 64x32, partições 614 tendo o tamanho de 32x64, ou partições 616 tendo o tamanho de 32x32.
[00090] Similarmente, uma unidade de predição da unidade de codificação 620 tendo o tamanho de 32x32 e a profundidade de 1 pode ser dividida em partições incluídas na unidade de codificação 620, isto é, uma partição 620 tendo um tamanho de 32x32, partições 622 tendo um tamanho de 32x16, partições 624 tendo um tamanho de 16x32, e partições 626 tendo um tamanho de 16x16.
[00091] Similarmente, uma unidade de predição da unidade de codificação 630 tendo o tamanho de 16x16 e a profundidade de 2 pode ser dividida em partições incluídas na unidade de codificação 630, isto é, uma partição tendo um tamanho de 16x16 incluída na unidade de codificação 630, partições 632 tendo um tamanho de 16x8, partições 634 tendo um tamanho de 8x16, e partições 636 tendo um tamanho de 8x8.
[00092] Similarmente, uma unidade de predição da unidade de codificação 640 tendo o tamanho de 8x8 e a profundidade de 3 pode ser dividida em partições incluídas na unidade de codificação 640, isto é, uma partição tendo um tamanho de 8x8 incluída na unidade de codificação 640, partições 642 tendo um tamanho de 8x4, partições 644 tendo um tamanho de 4x8, e partições 646 tendo um tamanho de 4x4.
[00093] A unidade de codificação 650 tendo o tamanho de 4x4 e a profundidade de 4 é a unidade de codificação mínima e uma unidade de codificação de profundidade mais baixa. Uma unidade de predição da unidade de codificação 650 é atribuída apenas a uma partição tendo um tamanho de 4x4.
[00094] Para determinar a pelo menos uma profundidade codificada das unidades de codificação constituindo a LCU 610, o determinador de unidade de decodificação 120 do aparelho de codificação de vídeo 10 realiza codificação para as unidades de codificação correspondendo a cada profundidade incluída na LCU 610.
[00095] O número de unidades de codificação mais profunda, de acordo com as profundidades incluindo dados na mesma variação e no mesmo tamanho, aumenta à medida que é aprofundada a profundidade. Por exemplo, quatro unidades de codificação correspondendo a uma profundidade de 2 são exigidas para cobrir os dados que são incluídos em uma unidade de codificação correspondendo a uma profundidade de 1. Consequentemente, para comparar os resultados de codificação dos mesmos dados de acordo com as profundidades, a unidade de codificação correspondendo à profundidade de 1; e quatro unidades de codificação correspondendo à profundidade de 2; são individualmente codificadas.
[00096] Para executar a codificação para uma profundidade atual entre as profundidades, um erro de codificação mínimo pode ser selecionado para a profundidade atual mediante realização de codificação para cada unidade de predição nas unidades de codificação correspondendo à profundidade atual, ao longo do eixo horizontal da estrutura hierárquica 600. Alternativamente, o erro de codificação mínimo pode ser pesquisado mediante comparação dos erros de codificação mínimos de acordo com as profundidades, mediante realização de codificação para cada profundidade à medida que a profundidade é aprofundada ao longo do eixo vertical da estrutura hierárquica 600. Uma profundidade e uma partição tendo o erro de codificação mínimo 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.
[00097] A figura 7 é um diagrama para descrever uma relação entre uma unidade de codificação 710 e TUs 720, de acordo com uma modalidade da presente invenção.
[00098] O aparelho de codificação de vídeo 100 ou o aparelho de decodificação de vídeo 200 codifica ou decodifica uma imagem de acordo com as unidades de codificação tendo tamanhos menores do que ou iguais a uma LCU para cada LCU. Tamanhos de TUs para transformação durante codificação podem ser selecionados com base nas unidades de dados que não são maiores do que uma unidade de codificação correspondente.
[00099] Por exemplo, no aparelho de codificação de vídeo 100 ou 200, ou o aparelho de decodificação de vídeo 200, se um tamanho da unidade de codificação 710 é de 64x64, a transformação pode ser realizada mediante uso das TUs 720 tendo um tamanho de 32x32.
[000100] Além disso, os dados da unidade de codificação 710 tendo o tamanho de 64x64 podem ser codificados mediante realização da transformação em cada uma das TUs tendo o tamanho de 32x32, 16x16, 8x8, e 4x4, que são menores do que 64x64, e então uma TU tendo o erro de codificação mínimo pode ser selecionada.
[000101] A figura 8 é um diagrama para descrever informação de codificação das unidades de codificação correspondendo a uma profundidade codificada, de acordo com uma modalidade da presente invenção.
[000102] Uma unidade de saída 130 do aparelho de codificação de vídeo 100 pode codificar e transmitir informação 800 sobre um tipo de partição, informação 810 sobre um modo de predição, e informação 820 sobre um tamanho de uma TU para cada unidade de codificação correspondendo a uma profundidade codificada, como informação sobre um modo de codificação.
[000103] A informação 800 indica informação sobre um formato de uma partição obtida mediante divisão de uma unidade de predição de uma unidade de codificação atual, em que a partição é uma unidade de dados para codificação de prediçã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 de 806 tendo um tamanho de Nx2N, e uma partição 808 tendo um tamanho de NxN. Aqui, a informação 800 sobre um tipo de partição é estabelecida para indicar uma da partição 804 tendo um tamanho de 2NxN, a partição 806 tendo um tamanho de Nx2N, e a partição 808 tendo um tamanho de NxN.
[000104] A informação 810 indica um modo de predição de cada partição. Por exemplo, a informação 810 pode indicar um modo de codificação de predição realizado em uma partição indicada pela informação 800, isto é, um modo intra 812, um modo inter 814, ou um modo de salto 816.
[000105] A informação 820 indica uma TU para ser baseada em quando a transformação é realizada em uma unidade de codificação atual. Por exemplo, a TU pode ser uma primeira TU intra 822, uma segunda TU intra 824, uma primeira TU inter 826, ou uma segunda TU intra 828.
[000106] O extrator de informação de codificação e dados de imagem 220 do aparelho de decodificação de vídeo 200 pode extrair e usar a informação 800, 810 e 820 para decodificação, de acordo com cada unidade de codificação mais profunda.
[000107] A figura 9 é um diagrama de unidades de codificação mais profunda de acordo com as profundidades, de acordo com uma modalidade da presente invenção.
[000108] Informação de divisão pode ser usada para indicar uma mudança de uma profundidade. A informação de divisão indica se uma unidade de codificação de uma profundidade atual é dividida em unidades de codificação de uma profundidade inferior.
[000109] Uma unidade de predição 910 para codificação de predição de uma unidade de codificação 900 tendo uma profundidade de 0 e um tamanho de 2N_0x2N_0 pode incluir partições de um tipo de partição 912 tendo um tamanho de 2N_0x2N_0, um tipo de partição 914 tendo um tamanho de 2N_0xN_0, um tipo de partição 916 tendo um tamanho de N_0x2N_0, e um tipo de partição 918 tendo um tamanho de N_0xN_0. A Figura 9 ilustra apenas os tipos de partição 912 a 918 que são obtidos mediante divisão simétrica da unidade de predição 910, porém um tipo de partição não é limitado a isso, e as partições da unidade de predição 910 podem incluir partições assimétricas, partições tendo um formato predeterminado e partições tendo um formato geométrico.
[000110] A codificação de predição é realizada de forma repetida 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 de predição em um modo intra e em um modo inter pode ser realizada nas partições tendo os tamanhos de 2N_0x2N_0, N_0x2N_0, 2N_0xN_0 e N_0xN_0. A codificação de predição em um modo de salto é realizada apenas na partição tendo o tamanho de 2N_0x2N_0.
[000111] Se um erro de codificação é o menor em um dos tipos de partição 912 a 916, tendo os tamanhos de 2N_0*2N_0, 2N_0*N_0, and N_0x2N_0, a unidade de predição 910 pode não ser dividida em uma profundidade menor.
[000112] Se o erro de codificação for o menor no tipo de partição 918, uma profundidade é mudada de 0 para 1 para dividir o tipo de partição 918 na operação 920, e a codificação é realizada repetidamente nas unidades de codificação 930 tendo uma profundidade de 2 e um tamanho de N_0xN_0 para procurar um erro de codificação mínimo.
[000113] Uma unidade de predição 940 para codificação de predição da 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 N1xN1.
[000114] Se um erro de codificação for o menor no tipo de partição 948, uma profundidade é mudada de 1 para 2 para dividir o tipo de partição 948 Na operação 950, e a codificação é realizada repetidamente nas unidades de codificação 960, as quais têm uma profundidade de 2 e um tamanho de N_2xN_2 para procurar um erro de codificação mínimo.
[000115] Quando uma profundidade máxima é d, a operação de divisão de acordo com cada profundidade pode ser realizada até quando uma profundidade se tornar d-1; e a informação de divisão pode ser codificada até quando uma profundidade for uma de 0 a d-2. Em outras palavras, quando a codificação é realizada até quando a profundidade é d-1 após uma unidade de codificação correspondendo a uma profundidade de d-2 ser dividida na operação 970, uma unidade de predição 990 para codificação de predição de 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), um tipo de partição 998 tendo um tamanho de N_(d-1)xN_(d-1).
[000116] Codificação de predição pode ser realizada 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) dentre os tipos de partição 992 a 998 para procurar um tipo de partição tendo um erro de codificação mínimo.
[000117] Mesmo quando o tipo de partição 998 tem o erro de codificação mínimo, como uma profundidade máxima é d, uma unidade de codificação CU_(d-1), tendo uma profundidade de d-1 não mais é dividida para uma profundidade inferior, e uma profundidade codificada para as unidades de codificação constituindo uma LCU atual 900 é determinada para ser d-1 e um tipo de partição da LCU atual 900 pode ser determinada para ser N_(d-1)xN_(d-1). Além disso, como a profundidade máxima é d e uma unidade de codificação mínima 980 tendo a profundidade mais baixa de d-1 não mais é dividida para uma profundidade inferior, a informação de divisão para a unidade de codificação mínima 980 não é estabelecida.
[000118] A unidade de dados 999 pode ser uma ‘unidade mínima’ para a LCU atual. Uma unidade mínima de acordo com uma modalidade exemplar pode ser uma unidade de dados retangular obtida mediante divisão de uma unidade de codificação mínima 980 por 4. Mediante realização da codificação repetidamente, o equipamento de codificação de vídeo 100 pode selecionar uma profundidade tendo o erro de codificação mínimo mediante comparação dos erros de codificação de acordo com as profundidades da unidade de codificação 900 para determinar uma profundidade codificada, e estabelecer um tipo de partição correspondente e um modo de predição como um modo de codificação da profundidade codificada.
[000119] Como tal, os erros de codificação mínimos de acordo com as profundidades são comparados em todas as profundidades de 1 a d, e a 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 predição, e o modo de predição podem ser codificados e transmitidos como informação sobre um modo de codificação. Além disso, como uma unidade de codificação é dividida a partir de uma profundidade de 0 até uma profundidade codificada, apenas a informação de divisão da profundidade codificada é ajustada para 0, e a informação de divisão das profundidades excluindo a profundidade codificada é ajustada para 1.
[000120] O extrator de informação de codificação e dados de imagem 220 do aparelho de decodificação de vídeo 200 pode extrair e usar a informação sobre a profundidade codificada e a unidade de predição da unidade de codificação 900 para decodificar a partição 912. O aparelho de decodificação de vídeo 200 pode determinar uma profundidade, na qual a informação dividida é 0, como uma profundidade codificada mediante uso da informação dividida de acordo com as profundidades, e usar a informação sobre um modo de codificação da profundidade correspondente para decodificação.
[000121] As figuras 10 a 12 são diagramas para descrever uma relação entre as unidades de codificação 1010, unidades de predição 1060, e TUs 1070, de acordo com uma modalidade da presente invenção.
[000122] As unidades de codificação 1010 são unidades de codificação que têm uma estrutura de árvore, correspondendo às profundidades codificadas determinadas pelo aparelho de codificação de vídeo 100, em uma LCU. As unidades de predição 1060 são partições das unidades de predição de cada uma das unidades de codificação 1010, e as TUs 1070 são TUs de cada uma das unidades de codificação 1010.
[000123] Quando uma profundidade de uma LCU é 0 nas unidades de codificação 1010, as profundidades das unidades de codificação 1012 e 1054 são 1, as profundidades das unidades de codificação 1014, 1016, 1018, 1028, 1050, e 1052 são 2, as profundidades das unidades de decodificação 1020, 1022, 1024, 1026, 1030, 1032 e 1048 são 3, e as profundidades das unidades de codificação 1040, 1042, 1044 e 1046 são 4.
[000124] Nas unidades de predição 1060, algumas unidades de codificação 1014, 1016, 1022, 1032, 1048, 1050, 1052, 1054 são obtidas mediante divisão das unidades de codificação nas unidades de codificação 1010. Em outras palavras, tipos de partição nas unidades de codificação 1014, 1022, 1050, e 1054 têm um tamanho de 2NxN, os 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. As unidades de predição e partições das unidades de codificação 1010 são menores do que ou iguais a cada unidade de codificação.
[000125] Transformada ou transformada inversa é realizada nos dados de imagem da unidade de codificação 1052 nas TUs 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 TUs 1070 são diferentes daquelas nas unidades de predição 1060 em termos de tamanhos e formatos. Em outras palavras, os aparelhos de codificação e decodificação de vídeo 100 e 200 podem realizar predição intra, estimação de movimento, compensação de movimento, transformada, e transformada inversa individualmente em uma unidade de dados na mesma unidade de codificação.
[000126] Consequentemente, a codificação é realizada de forma recursiva em cada uma das unidades de codificação tendo uma estrutura hierárquica em cada região de uma LCU para determinar uma unidade de codificação ótima, e assim unidades de codificação que têm uma estrutura de árvore recursiva podem ser obtidas. A informação de codificação pode incluir informação dividida sobre uma unidade de codificação, informação sobre um tipo de partição, informação sobre um modo de predição, e informação sobre um tamanho de uma TU. A Tabela 1 mostra a informação de codificação que pode ser estabelecida pelo aparelho de codificação de vídeo 100 e pelo aparelho de decodificação de vídeo 200. Tabela 1
Figure img0001
[000127] A unidade de saída 130 do aparelho de codificação de vídeo 100 pode emitir a informação de codificação sobre as unidades de codificação tendo uma estrutura de árvore, e o extrator de informação de codificação e dados de imagem 220, do aparelho de decodificação de vídeo 200, pode extrair a informação de codificação sobre as unidades de codificação tendo uma estrutura de árvore a partir de um fluxo de bits recebido.
[000128] A informação de divisão indica se uma unidade de codificação atual é dividida em unidades de codificação de uma profundidade inferior. Se a informação dividida de uma profundidade atual d for 0, uma profundidade, na qual uma unidade de codificação atual não mais é dividida em uma profundidade inferior, é uma profundidade codificada, e assim a informação sobre um tipo de partição, o modo de predição, e um tamanho de uma TU, pode ser definida para a profundidade codificada. Se a unidade de codificação atual for dividida adicionalmente de acordo com a informação dividida, a codificação é realizada independentemente em quatro unidades de codificação divididas de uma profundidade inferior.
[000129] Um modo de predição pode ser um de: um modo intra, um modo inter, e um modo de salto. O intra-modo e o inter-modo podem ser definidos em todos os tipos de partição, e o modo de salto é definido apenas em um tipo de partição tendo um tamanho de 2Nx2N.
[000130] A informação sobre o tipo de partição pode indicar tipos de partição simétrica tendo tamanhos de 2Nx2N, 2NxN, Nx2N, e NxN, que são obtidos mediante divisão de forma simétrica de uma altura ou de uma largura de uma unidade de predição, e tipos de partição assimétrica tendo tamanhos de 2NxnU, 2NxnD, nLx2N e nRx2N, os quais são obtidos mediante divisão de forma assimétrica da altura ou largura da unidade de predição. Os tipos de partição assimétrica tendo os tamanhos de 2NxnU e 2NxnD podem ser obtidos respectivamente mediante divisão da altura da unidade de predição em 1:3 e 3:1, e os tipos de partição assimétrica tendo os tamanhos de nLx2N e nRx2N podem ser obtidos respectivamente mediante divisão da largura da unidade de predição em 1:3 e 3:1.
[000131] O tamanho da TU pode ser ajustado para ser de dois tipos no modo intra e de dois tipos no modo inter. Em outras palavras, se a informação dividida da TU for 0, o tamanho da TU pode ser 2Nx2N, que é o tamanho da unidade de codificação atual. Se informação dividida da TU for 1, as TUs podem ser obtidas mediante divisão da unidade de codificação atual. Além disso, se um tipo de divisão da unidade de codificação atual tendo o tamanho de 2Nx2N for um tipo de partição assimétrica, um tamanho de uma TU pode ser NxN, e se o tipo de partição da unidade de codificação atual for um tipo de partição assimétrica, o tamanho da TU pode ser N/2xN/2.
[000132] A informação de codificação sobre as unidades de codificação tendo uma estrutura de árvore pode incluir ao menos uma de uma unidade de codificação correspondendo a uma profundidade codificada, uma unidade de predição, e uma unidade mínima. A unidade de codificação correspondendo à profundidade codificada pode incluir ao menos uma de uma unidade de predição e uma unidade mínima contendo a mesma informação de codificação.
[000133] Consequentemente é determinado se as unidades de dados adjacentes são incluídas na mesma unidade de codificação correspondendo à profundidade codificada mediante comparação da informação de codificação das unidades de dados adjacentes. Além disso, uma unidade de codificação correspondente que corresponde a uma profundidade codificada é determinada mediante uso da informação de codificação de uma unidade de dados, e assim uma distribuição das profundidades codificadas em uma LCU pode ser determinada.
[000134] Consequentemente, se uma unidade de codificação atual for predita com base na informação de codificação das unidades de dados adjacentes, informação de codificação das unidades de dados em unidades de codificação mais profunda adjacentes à unidade de codificação atual pode ser diretamente consultada e utilizada.
[000135] Alternativamente, se uma unidade de codificação atual for predita com base na informação de codificação das unidades de dados adjacentes, as unidades de dados adjacentes à unidade de codificação atual são procuradas utilizando-se a informação de codificação das unidades de dados, e as unidades de codificação adjacentes procuradas podem ser referidas para predição da unidade de codificação atual.
[000136] A Figura 13 é um diagrama para descrever uma relação entre uma unidade de codificação, uma unidade de predição ou uma partição, e uma TU, de acordo com a informação de modo de codificação da Tabela 1.
[000137] Uma LCU 1300 inclui unidades de codificação 1302 1304, 1306, 1312, 1314, 1316 e 1318 de profundidades codificadas. Aqui, como a unidade de codificação 1318 é uma unidade de codificação de uma profundidade codificada, a informação dividida pode ser ajustada para 0. A informação sobre um tipo de partição da unidade de codificação 1318 tendo um tamanho de 2Nx2N pode ser ajustada para ser um 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 328 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.
[000138] Quando o tipo de partição é ajustado para ser simétrico, isto é, o tipo de partição 1322, 1324, 1326 ou 1328, uma TU 1342 tendo um tamanho de 2Nx2N é estabelecida quando informação de divisão (sinalizador de tamanho TU) de uma TU é 0, e uma TU 1344 tendo um tamanho de NxN é estabelecida se um sinalizador de tamanho TU é 1.
[000139] Quando o tipo de partição é estabelecido como sendo assimétrico, isto é, o tipo de partição 1332, 1334, 1336 ou 1338, uma TU 1352 tendo um tamanho de 2Nx2N é estabelecida se um sinalizador de tamanho TU for 0, e uma TU 1354 tendo um tamanho de N/2xN/2 é estabelecida se um sinalizador de tamanho TU for 1.
[000140] Um processo de codificar um parâmetro de quantização (QP) no quantizador 440 e codificador de entropia 450 do codificador de imagem 400 ilustrado na Figura 4, e um processo de decodificar o QP no codificador de entropia 520 e o quantizador inverso 530 do decodificador de imagem 500 ilustrado na Figura 5 serão descritos agora em detalhe.
[000141] A Figura 14 é um diagrama detalhado de blocos do quantizador 440 ilustrado na Figura 4, de acordo com uma modalidade da presente invenção.
[000142] Com referência à Figura 14, o quantizador 440 inclui um executor de quantização 1410, um preditor QP 1420 e um meio de subtração 1430.
[000143] O executor de quantização 1410 quantiza os dados residuais transformados para o domínio de frequência. O executor de quantização 1410 pode realizar quantização com base em um valor obtido mediante divisão dos dados de entrada por uma etapa de quantização Q_Step determinada de acordo com um QP. Por exemplo, o executor de quantização 1410 pode executar a quantização no Coeff de dados de entrada com base na seguinte equação; Q_Coeff=sgn(Coeff)*round[(Coeff)/Q_Step+Offset]. Aqui, Offset denota um deslocamento, Q_Step denota uma etapa de quantização, e Q_Coeff denota um valor de resultado quantizado. Round[X] denota uma operação para produzir um número inteiro que não é maior do que, e é o mais próximo de um número real X. Sgn(Coeff) denota uma função tendo um valor de 1 se o valor de Coeffis maior do que 0, e tendo um valor de -1 se o valor Coeffis for menor do que 0. Conforme descrito acima, o executor de quantização 1410 pode executar a quantização mediante divisão dos dados de entrada pela etapa de quantização Q_Step. A etapa de quantização Q_Step pode ter um valor determinado de acordo com o QP. Por exemplo, a etapa de quantização Q_Step pode ser determinada de acordo com o QPas mostrado na Tabela 2. Tabela 2
Figure img0002
[000144] Com referência à Tabela 2, sempre que o QP for aumentado em 6, a etapa de quantização Q_Step é dobrada. A quantização utilizando o QP e a etapa de quantização Q_Step de acordo com o QP não são limitados ao exemplo descrito acima e podem variar.
[000145] Opostamente à quantização, quantização inversa é realizada mediante uso de um valor obtido mediante multiplicação da etapa de quantização Q_Step determinada de acordo com o QP, pelos dados de entrada. Por exemplo, a quantização inversa pode ser realizada mediante uso de um valor obtido mediante multiplicação de um coeficiente de quantização Q_Coeff por intermédio da etapa de quantização Q_Step e então adicionando um deslocamento predeterminado, conforme mostrado na equação seguinte; InverseQ_Coeff=sgn(Q_coeff)*round[Q_Coeff*Q_Step+Offset].
[000146] O preditor QP 1420 obtém um QP predito QP_Pred que é um valor de predição de um QP aplicado a uma unidade de codificação atual. Conforme descrito acima, para realizar a quantização e a quantização inversa nos dados de entrada, é exigida a informação QP. Para reduzir a quantidade de dados, apenas uma diferença entre o QP e o QP predito QP_Pred é transmitida como a informação de QP. Em um processo de decodificação, o QP pode ser restaurado mediante obtenção de um QP predito QP_Pred como no processo de codificação e adicionando a diferença incluída em um fluxo de bits. O preditor de QP 1420 pode obter o QP predito QP_Pred mediante uso de um QP determinado quando uma unidade de codificação previamente codificada é quantizada. Especificamente, com relação a uma unidade de codificação inicialmente quantizada de unidades de dados predeterminadas, o preditor de QP 1420 pode obter o QP predito QP_Pred mediante uso de um QP inicial de nível de fatia SliceQP. Em mais detalhe, o preditor de QP 1420 pode predizer o QP predito QP_Pred de um primeiro grupo de quantização de uma unidade de dados que pode ser codificada em paralelo incluída em um segmento de fatia, mediante uso do QP inicial de nível de fatia SliceQP. Um grupo de quantização denota um conjunto de uma ou mais unidades de codificação que compartilham o mesmo QP predito QP_Pred. O grupo de quantização pode incluir uma unidade de codificação ou uma pluralidade de unidades de codificação. Conforme será descrito abaixo, a unidade de dados que pode ser codificada em paralelo pode ser um fluxo de execução incluindo as LCUs da mesma fileira de acordo com o processamento paralelo de frente de onda (WPP), ou um bloco de pixels obtido mediante divisão de uma imagem com relação a pelo menos um limite de coluna e/ou um limite de fileira.
[000147] Além disso, o preditor de QP 1420 pode obter o QP predito QP_Pred mediante uso dos QPs determinados em unidades de codificação adjacentes. O processo de obtenção do QP predito QP_Pred será descrito em detalhe abaixo.
[000148] O preditor de QP 1420 emite informação adicional para obter o QP predito QP_Pred, para o codificador de entropia 450.
[000149] O meio de subtração 1430 emite uma diferença de QP ΔQP que é uma diferença entre o QP aplicado à unidade de codificação atual e o QP predito QP_Pred.
[000150] A Figura 15 é um diagrama detalhado de blocos do codificador de entropia 450 ilustrado na Figura 4 de acordo com uma modalidade da presente invenção.
[000151] O codificador de entropia 450 codifica aritmeticamente os elementos gerados de acordo com um resultado da codificação de um vídeo. Como um método de codificação aritmética, pode ser usada a codificação aritmética binária de contexto adaptativo (CABAC). Além disso, o codificador de entropia 450 gera um fluxo de bits mediante transformação dos dados de vídeo codificados aritmeticamente em uma camada de codificação de vídeo e informação sobre os vários parâmetros relacionados à codificação de vídeo, para um formato de acordo com uma camada de abstração de rede.
[000152] Em mais detalhe, com referência à Figura 15, o codificador de entropia 450 inclui um gerador de conjunto de parâmetros de sequência (SPS) 1510 para gerar um SPS incluindo informação de codificação de uma sequência integral, por exemplo, um perfil e um nível, um gerador de conjunto de parâmetros de imagem (PPS) 1520 para gerar um PPS incluindo informação de codificação de cada imagem incluída na sequência, um gerador de informação de fatia 1530 para gerar informação de fatia incluindo informação de codificação dos segmentos de fatia incluídos em uma imagem, e um gerador de informação de TU 1540 para gerar informação sobre as TUs usadas em um processo de transformação. Como será descrito abaixo, o gerador de PPS 1520 pode incluir sintaxe init_qp_minus26, que indica um QP inicial de nível de imagem para obter um QP inicial de nível de fatia SliceQP de cada fatia incluída em uma imagem, no PPS. Além disso, o gerador de informação de fatia 1530 pode incluir sintaxe slice_qp_delta, a qual indica uma diferença entre a sintaxe init_qp_minus26 indicando um QP inicial de nível de imagem e o QP inicial de nível de fatia SliceQP, em um cabeçalho de fatia.
[000153] Além da estrutura hierárquica ilustrada, o codificador de entropia 450 pode gerar um fluxo de bits mediante encapsulação de informação sobre uma unidade de dados de outra camada inferior, por exemplo, informação sobre uma unidade de codificação.
[000154] Conforme descrito acima, com relação a uma unidade de codificação inicialmente quantizada (ou um grupo de quantização) de uma unidade de dados que podem ser processados em paralelo, predeterminada, o preditor de QP 1420 pode obter um QP predito mediante uso de um QP inicial de nível de fatia SliceQP. Aqui, as unidades de dados predeterminadas são unidades de dados obtidas mediante divisão de uma imagem de acordo com os esquemas de divisão de imagem, por exemplo, fatias, segmentos de fatia, ou blocos de pixel.
[000155] A Figura 16 mostra segmentos de fatia, fatias, e as LCUs que são unidades de dados usadas para dividir uma imagem, de acordo com uma modalidade da presente invenção.
[000156] Com referência à Figura 16, a imagem pode ser dividida em uma pluralidade de LCUs. A Figura 16 mostra um exemplo em que a imagem é dividida em 11 LCUs em uma direção horizontal e 9 LCUs em uma direção vertical, isto é, um total de 99 LCUs. Conforme descrito acima em relação às Figuras 1 a 13, cada LCU pode ser codificada/decodificada após ser dividida em unidades de codificação tendo uma estrutura de árvore.
[000157] Além disso, a imagem pode ser dividida em uma ou mais fatias de acordo com os limites de fatia. A Figura 16 mostra um exemplo em que a imagem é dividida em duas fatias tal como uma fatia superior e uma fatia inferior com relação a um limite de fatia. Além disso, uma fatia pode ser dividida em um ou mais segmentos de fatia. A Figura 16 mostra um exemplo em que a fatia superior é dividida em segmentos de fatia 1610, 1620 e 1630 com relação aos limites de segmento de fatia. Além disso, a fatia inferior inclui um segmento de fatia 1640.
[000158] Cada um dos segmentos de fatia 1610, 1620, 1630 e 1640 pode ser classificado em um segmento de fatia dependente ou em um segmento de fatia independente de acordo com o fato de se o mesmo se refere à informação incluída em outro segmento de fatia. Um segmento de fatia dependente é um segmento de fatia no qual um elemento de sintaxe parcial incluído em um cabeçalho de segmento de fatia pode ser determinado com referência a um elemento de sintaxe de um segmento de fatia anterior que é previamente processado de acordo com uma ordem de codificação/decodificação. Um segmento de fatia independente é um segmento de fatia no qual um elemento de sintaxe de um cabeçalho de segmento de fatia pode ser determinado sem referência à informação de um segmento de fatia anterior.
[000159] A Figura 17 mostra blocos de pixel e segmentos de fatia que são unidades de dados usadas para dividir uma imagem, de acordo com uma modalidade da presente invenção.
[000160] A Figura 17 mostra um exemplo em que uma imagem 1700 é dividida em três blocos de pixels com relação aos limites de coluna 1701 e 1703. Uma imagem pode ser dividida em uma pluralidade de blocos de pixels com relação aos limites de coluna e/ou limites de fileira. Embora uma imagem seja dividida em blocos de pixels com relação apenas aos limites de coluna na Figura 17, a imagem também pode ser dividida em blocos de pixels com relação apenas aos limites de fileira ou ambos, limites de fileiras e limites de colunas. Além disso, um bloco de pixels pode incluir uma pluralidade de segmentos de fatia. A Figura 17 mostra um exemplo em que um bloco de pixels n°1 é dividido em três segmentos de fatia 1710, 1720 e 1730 com relação aos limites de fatia 1702 e 1704.
[000161] Um bloco de pixels é um conjunto das LCUs divididas com relação aos limites de coluna e/ou limites de fileira, e é uma unidade de processamento de dados independente na qual predição ou predição de contexto não é permitida através de um limite de coluna ou de um limite de fileira. Isto é, um bloco de pixels é uma unidade de processamento de dados independente que não se refere à informação de outra informação de bloco de pixels, e uma pluralidade de blocos de pixels pode ser processado em paralelo. Informação de localização dos limites de coluna e limites de fileira pode ser incluída em um SPS ou em um PPS. Em um processo de decodificação, informação de localização de limites de coluna e limites de fileira pode ser obtida a partir de um SPS ou de um PPS, uma imagem pode ser dividida em uma pluralidade de blocos de pixels com base na informação de localização obtida dos limites de coluna e dos limites de fileira, e então os blocos de pixels divididos podem ser decodificados em paralelo.
[000162] Consequentemente, embora os blocos de pixels da imagem 1700 sejam processados em paralelo, e cada bloco de pixels possa ser codificado/decodificado de acordo com as LCUs. Na Figura 17, números marcados nas LCUs denotam uma ordem de varredura das LCUs em cada bloco de pixels, isto é, uma ordem de codificação ou de decodificação.
[000163] De acordo com uma modalidade da presente invenção, as correlações entre os segmentos de fatia, fatias, blocos de pixels, e LCUs, que são unidades de dados usadas para dividir uma imagem, podem ser definidas conforme descrito abaixo.
[000164] Com relação a cada fatia e bloco de pixels, as LCUs codificadas (decodificadas) de acordo com uma ordem de varredura predeterminada devem satisfazer ao menos uma das condições i e ii descritas abaixo.
[000165] (Condição i) Todas as LCUs incluídas em uma fatia pertencem ao mesmo bloco de pixels.
[000166] (Condição ii) Todas as LCUs incluídas em um bloco de pixels pertencem à mesma fatia.
[000167] Além disso, com relação a cada segmento de fatia e bloco de pixels, as LCUs codificadas (decodificadas) de acordo com uma ordem de varredura predeterminada devem satisfazer pelo menos uma condição, a e b, descritas abaixo.
[000168] (Condição a) Todas as LCUs incluídas em segmento de fatia pertencem ao mesmo bloco de pixels.
[000169] (Condição b) Todas as LCUs incluídas em um bloco de pixels pertencem ao mesmo segmento de fatia.
[000170] Dentro de uma faixa satisfazendo ao menos uma das condições i e ii e pelo menos uma das condições a e b, uma imagem pode ser dividida mediante uso de fatias, segmentos de fatia, blocos de pixels, e LCUs.
[000171] As Figuras 18A e 18B mostram as correlações entre os blocos de pixels, segmentos de fatia, fatias, e as LCUs, de acordo com uma modalidade da presente invenção;
[000172] Com referência à Figura 18A, uma imagem 1800 é dividida em cinco segmentos de fatia 1811, 1813, 1815, 1817 e 1819 devido às linhas de limite de segmento de fatia 1803, 1805, 1807 e 1809. Além disso, uma vez que uma fatia é formada de um segmento de fatia independente 1811 e quatro segmentos de fatia dependentes 18, 13, 1815, 1817 e 1819, a imagem 1800 inclui uma fatia.
[000173] Além disso, a imagem 1800 é dividida em dois blocos de pixels devido a um limite de bloco de pixels 1801. Como tal, um bloco de pixels esquerdo inclui três segmentos de fatia 1811, 1813, 1815, e um bloco de pixels direito inclui dois segmentos de fatia 1817 e 1819.
[000174] Inicialmente, é verificado se os segmentos de fatia 1811, 1813, 1815, 1817 e 1819, os blocos de pixels, e as LCUs satisfazem ao menos uma das condições a e b, descritas acima em relação à Figura 17. Todas as LCUs dos segmentos de fatia 1811, 1813 e 1815 são incluídas no bloco de pixels esquerdo, e assim satisfazem à condição a. Além disso, todas as LCUs dos segmentos de fatia 1817 e 1819 são incluídas no bloco de pixels direito, e assim também satisfazem à condição a.
[000175] É verificado se as fatia, os blocos de pixels e as LCUs satisfazem aos menos uma das condições, i e ii, descritas acima em relação à Figura 17. Todas as LCUs do bloco de pixels esquerdo são incluídas em uma fatia, e assim satisfazem à condição ii. Além disso, todas as LCUs do bloco de pixels direito são incluídas em uma fatia, e assim também satisfazem à condição ii.
[000176] Com referência à Figura 18B, uma imagem 1850 é dividida em dois blocos de pixels, por exemplo, um bloco de pixels esquerdo e um bloco de pixels direito, devido a uma linha de limite de bloco de pixels 1851. Além disso, a imagem 1850 é dividida em três fatias devido às linhas de limite de fatia 1866 e 1868, o bloco de pixels esquerdo é dividido em uma fatia esquerda superior e uma fatia esquerda inferior com relação à linha de limite de fatia 1866, e o bloco de pixels direito é formado de uma fatia direita.
[000177] A fatia esquerda superior é dividida em um segmento de fatia independente 1861 e um segmento de fatia dependente 1865 com relação a uma linha de limite de segmento de fatia 1863. A fatia esquerda inferior é dividida em um segmento de fatia independente 1881 e um segmento de fatia dependente 1885 com relação a uma linha de limite de segmento de fatia 1883. A fatia direita pode ser dividida em um segmento de fatia independente 1891 e um segmento de fatia dependente 1895 com relação a uma linha de limite de segmento de fatia 1893.
[000178] Inicialmente, é verificado se os segmentos de fatia 1861, 1865, 1881, 1885, 1891 e 1895, os blocos de pixels, e as LCUs satisfazem ao menos uma das condições a e b. Todas as LCUs dos segmentos de fatia 1861 e 1865 são incluídas no bloco de pixels esquerdo, e assim satisfazem à condição a. Além disso, todas as LCUs dos segmentos de fatia 1881 e 1883 são incluídas no mesmo bloco de pixels esquerdo, e assim também satisfazem à condição a. Além disso, todas as LCUs dos segmentos de fatia 1891 e 1893 incluídos no mesmo bloco de pixels, e assim também satisfazem à condição a.
[000179] Se for verificado que as fatias, os blocos de pixels, e as LCUs satisfazem ao menos uma das condições i e ii. Todas as LCUs da fatia esquerda superior são incluídas no bloco de pixels esquerdo, e assim satisfazem à condição i. Além disso, todas as LCUs da fatia esquerda inferior são incluídas no bloco de pixels esquerdo, e assim também satisfazem à condição i. Adicionalmente, todas as LCUs da fatia direita são incluídas no bloco de pixels direito e todas as LCUs do bloco de pixels direito são incluídas na fatia direita, e assim satisfazem à condição i.
[000180] A Figura 19 é um diagrama de referência para descrever WPP, de acordo com uma modalidade da presente invenção.
[000181] WPP denota um processo de processamento de uma LCU após processar completamente uma LCU direita superior para codificação/decodificação em paralelo. Em mais detalhe, WPP estabelece um modelo de probabilidade de uma primeira LCU de cada fluxo de execução mediante uso de informação de probabilidade obtida mediante processamento de uma segunda LCU de um fluxo de execução superior. Por exemplo, com referência à Figura 19, o codificador de entropia 450 estabelece um modelo de probabilidade de uma primeira LCU 1902 de um fluxo de execução 2 para codificação de entropia mediante uso de um modelo de probabilidade obtido após codificação de entropia de uma segunda LCU 1901 de um fluxo de execução 1. Conforme descrito acima, quando as LCUs de cada fluxo de execução são codificadas por entropia, o codificador de entropia 450 pode usar uma informação de probabilidade atualizada mediante processamento de uma LCU direita superior, permitindo assim a codificação de entropia em paralelo.
[000182] Além disso, de acordo com WPP, como uma primeira LCU de cada fluxo de execução é processado após uma segunda LCU de um fluxo de execução superior ter sido completamente processada, as LCUs de cada fluxo de execução podem ser obtidas mediante uso de informação de predição de movimento, por exemplo, informação de vetor de movimento predito, das LCUs de um fluxo de execução superior. Consequentemente, na Figura 19, as LCUs incluídas nos fluxos de execução 1 a 4 podem ser processadas em paralelo após as LCUs direitas superiores serem completamente processadas.
[000183] As unidades de dados processadas em paralelo após serem alocadas a múltiplos núcleos de uma unidade central de processamento (CPU) ou uma unidade de processamento gráfico (GPU) de um aparelho de codificação ou de um aparelho de decodificação são definidas como fluxos de execução. Em mais detalhe, supõe-se que a CPU ou a GPU inclui quatro múltiplos núcleos e quatro unidades de dados podem ser processadas em paralelo. Nesse caso, conforme ilustrado na Figura 19, as LCUs dos fluxos de execução 1 a 4 são alocadas para quatro múltiplos núcleos e são processadas em paralelo. Conforme descrito acima, de acordo com WPP, uma LCU de um fluxo de execução N (N é um número inteiro) é processada após ser retardada até que uma LCU direita superior incluída em um fluxo de execução N-1 seja completamente processada.
[000184] De acordo com o WPP descrito acima, em um processo de codificação de entropia, uma LCU de cada fluxo de execução pode determinar um modelo de probabilidade para codificação de entropia após uma LCU direita superior ser completamente codificada por entropia. Contudo, dentre os elementos de sintaxe a serem codificados por entropia, sintaxe cu_qp_delta indicando uma diferença entre um QP e um QP predito QP_Predmay que não deve ser codificada por entropia diretamente. Isso porque o QP predito QP_Pred deve ser obtido de modo a que se obtenha a diferença entre o QP e o QP predito QP_Predand utiliza um QP determinado em uma unidade de codificação previamente processada de acordo, por exemplo, com uma ordem de varredura de rastreio. Em mais detalhe, com referência à Figura 19, de acordo com a técnica anterior, um QP predito QP_Pred de uma LCU 1903 pode ser predito como um QP de uma LCU 1905 processada previamente de acordo com uma ordem de varredura de rastreio, ou um QP determinado em um processo de quantização de uma LCU 1904 previamente processada no mesmo fluxo de execução. Em todo caso, codificação de entropia da LCU 1903 pode ser realizada apenas após a LCU 1905, previamente processada de acordo com uma ordem de varredura de rastreio ou a LCU 1904 processada previamente no mesmo fluxo de execução ser completamente codificada. Conforme descrito acima, se um QP predito for obtido com base em um QP de uma unidade de codificação anterior, o processamento pode ser retardado até que a unidade de codificação anterior seja processada e assim um problema de gargalo pode ser gerado. Consequentemente, se um QP predito for obtido com base em um QP de uma unidade de codificação anterior, o desempenho global do processamento em paralelo pode ser reduzido.
[000185] Similarmente, em um processo de decodificação de entropia, uma LCU de cada fluxo de execução pode ser decodificada por entropia após uma LCU direita superior ser completamente decodificada por entropia. Mesmo de acordo com WPP, em um processo de quantização inversa, um problema de gargalo pode ser gerado. Para obter um QP que é um parâmetro exigido para executar quantização inversa, um processo de obter um QP predito QP_Pred deve ser realizada em primeiro lugar. De acordo com a técnica anterior descrita acima, o QP predito QP_Pred da LCU 1903 pode ser predito como um QP determinado em um processo de quantização inversa da LCU 1905 previamente processada de acordo com uma ordem de varredura de rastreio, ou um QP determinado em um processo de quantização inversa da LCU 1904 previamente processada no mesmo fluxo de execução. Consequentemente, um processo de decodificação da LCU 1903 pode ser realizado apenas após a LCU 1905, previamente processada de acordo com uma ordem de varredura de rastreio ou a LCU 1904, previamente processada no mesmo fluxo de execução ser completamente decodificada.
[000186] Conforme descrito acima, se um QP determinado em uma LCU previamente processada ou um QP determinado em uma LCU anterior do mesmo fluxo de execução ser usado como um QP predito QP_Pred para realizar quantização ou quantização inversa em uma LCU, o QP predito QP_Pred pode ser obtido apenas após a LCU anterior ser completamente processada.
[000187] Consequentemente, de acordo com uma modalidade da presente invenção, como um QP inicial de nível de fatia SliceQP é usado como um preditor de QP QP_Predictor de uma unidade de dados inicialmente quantizados a partir das unidades de dados obtidas mediante divisão de uma imagem, a quantização/quantização inversa pode ser realizada na unidade de dados inicialmente quantizados independentemente de uma ordem de processamento das unidades de dados.
[000188] A Figura 20 é um diagrama para descrever um processo de obter um QP predito QP_Pred de uma LCU incluída em um segmento de fatia, de acordo com uma modalidade da presente invenção. Na Figura 20, supõe-se que uma imagem 2000 é dividida em dois segmentos de fatia com relação a um limite de segmento de fatia.
[000189] O executor de quantização 1410 determina um QP ótimo para quantizar as unidades de codificação que têm uma estrutura de árvore em consideração de um custo de distorção de taxa (RD), quantiza as unidades de codificação tendo uma estrutura de árvore mediante uso do QP determinado, e produz informação de QP.
[000190] O preditor de QP 1420 produz um QP predito QP_Pred mediante predição de um QP de cada unidade de codificação. O QP predito QP_Pred pode ser predito mediante uso de vários métodos em consideração, por exemplo, de uma ordem de processamento ou de um local de uma unidade de codificação atual.
[000191] Por exemplo, com relação a uma unidade de codificação inicialmente quantizada de uma unidade de dados que pode ser processada em paralelo incluída em um segmento de fatia ou uma unidade de codificação inicialmente quantizada incluída em um bloco de pixels, o preditor de QP 1420 pode obter o QP predito QP_Pred mediante uso de um QP inicial de nível de fatia SliceQP. Com referência à Figura 20, com relação a uma unidade de codificação inicialmente quantizada incluída em uma primeira LCU 2001 de um segmento de fatia superior, o preditor de QP 1420 pode obter o QP predito QP_Pred mediante uso do QP inicial de nível de fatia SliceQP. Similarmente, com respeito a uma unidade de codificação inicialmente quantizada incluída em uma primeira LCU 2004 de um segmento de fatia inferior, o preditor de QP 1420 pode obter o QP predito QP_Pred por intermédio do uso do QP inicial de nível de fatia SliceQP.
[000192] Além disso, com relação a uma unidade de codificação inicialmente quantizada incluída em uma primeira LCU de cada fluxo de execução de um segmento de fatia, o preditor de QP 1420 pode obter o QP predito QP_Pred mediante uso do QP inicial de nível de fatia SliceQP. Com referência de volta à Figura 20, as unidades de codificação inicialmente quantizadas incluída nas primeiras LCUs 2002 e 2003 dos fluxos de execução do segmento de fatia superior, o preditor de QP 1420 pode obter o QP predito QP_Pred mediante uso do QP inicial de nível de fatia SliceQP. Similarmente, com relação às unidades de codificação quantizadas inicialmente incluídas nas primeiras LCUs 2005, 2006 e 2007 dos fluxos de execução do segmento de fatia inferior, o preditor de QP 1420 pode obter o QP predito QP_Pred mediante uso do QP inicial de nível de fatia SliceQP.
[000193] Especificamente, se uma pluralidade de fluxos de execução incluindo individualmente as LCUs da mesma fileira puderem ser processados em paralelo de acordo com WPP, com relação às unidades de codificação inicialmente quantizadas (um grupo de quantização) incluído nas primeiras LCUs dos fluxos de execução de um segmento de fatia, o preditor de QP 1420 pode predizer o QP predito QP_Pred mediante uso do QP inicial de nível de fatia SliceQP. Em outras palavras, em um processo de quantização de acordo com WPP, o preditor de QP 1420 pode obter o QP predito QP_Pred de uma unidade de codificação inicialmente quantizada incluída em uma primeira LCU de cada fluxo de execução, mediante uso do QP inicial de nível de fatia SliceQP. Se WPP não for usado, o preditor de QP 1420 pode obter o QP predito QP_Pred de apenas uma unidade de codificação inicialmente quantizada incluída em uma primeira LCU de um segmento de fatia, mediante uso do QP inicial de nível de fatia SliceQP, e pode obter o QP predito QP_Pred de unidades de codificação outras do que a unidade de codificação inicialmente quantizada, mediante uso dos QPs de unidades de codificação adjacentes.
[000194] Além disso, com relação a um grupo de quantização inicialmente quantizado de cada bloco de pixels que podem ser processados paralelos, o preditor de QP 1420 pode predizer o QP predito QP_Pred mediante uso do QP inicial de nível de fatia SliceQP.
[000195] A Figura 21 é um diagrama para descrever um processo de obtenção de um QP predito QP_Pred de uma unidade de codificação incluída em uma LCU, de acordo com uma modalidade da presente invenção.
[000196] Com referência à Figura 21, um primeiro grupo de quantização 2110 a ser inicialmente quantizado e incluído em uma primeira LCU de um segmento de fatia de acordo com uma ordem de varredura predeterminada, inclui a unidade de codificação a, b, c e d. O QP predito QP_Pred da unidade de codificação a é obtido mediante uso de um QP inicial de nível de fatia SliceQP. As unidades de codificação a, b, c e d incluídas no primeiro grupo de quantização 2110 são menores do que uma menor unidade de codificação que pode ter sintaxe cu_qp_delta, e assim ter o mesmo QP previsto QP_Pred.
[000197] Como outro exemplo, com relação às unidades de codificação exceto as unidades iniciais de codificação a, b, c, e d, o preditor de QP 1420 pode obter o QP predito QP_Pred com base em uma média de QPs de unidas de codificação adjacentes esquerdas e superiores. Por exemplo, o QP predito das unidades de codificação e, f, g e H de um grupo de quantização 2120 pode ser determinado mediante uso de uma média de um QP QP_α de uma unidade de codificação esquerda α e um QP de uma unidade de codificação superior. Contudo, a unidade de codificação superior das unidades de codificação e, f, g e h não está disponível, um QP de uma unidade de codificação previamente processada pode ser usada em vez disso. Isto é, o preditor de QP 1420 pode obter os QPs preditos da unidade de codificação e, f, g e h como mostrado abaixo.
Figure img0003
[000198] QP predito das unidades de codificação i, j, k e l de um grupo de quantização 2130 pode ser determinado mediante uso de uma média de um QP QP_β de uma unidade de codificação esquerda β e um QPQP_y de uma unidade de codificação superior. Como ambos, o QP QP_β da unidade de codificação esquerda β e o QP QP_y de uma unidade de codificação superior estão disponíveis, todas as unidades de codificação i, j, k e l podem ter (QP_β+QP_Y+1)>>1 como seu QP predito.
[000199] As unidades de codificação adjacentes esquerdas e superiores do primeiro grupo de quantização inicialmente processado 2110 não estão disponíveis, se os QPs das unidades de codificação adjacentes, superiores e esquerdas das unidades de codificação a, b, c e d supostamente forem o QP de nível inicial de fatia SliceQP, como as outras unidades de codificação, o QP predito QP_Pred das unidades de codificação a, b, c, e d incluídas no primeiro grupo de quantização inicialmente processado 2210 também é considerado como sendo predito mediante uso de uma média dos QPs das unidades de codificação adjacentes esquerdas e superiores.
[000200] Conforme descrito acima, com relação a um primeiro grupo de quantização de uma unidade de dados que podem ser processados em paralelo incluídos em um segmento de fatia, o preditor de QP 1420 obtém o QP predito QP_Pred mediante uso do QP inicial de nível de fatia SliceQP. Um processo de obtenção do QP inicial de nível de fatia SliceQP será descrito agora.
[000201] O QP inicial de nível de fatia SliceQP pode ser obtido mediante uso de um QP inicial de nível de imagem init_qp_minus26, e sintaxe slice_qp_delta indicando uma diferença entre o QP inicial de nível de imagem init_qp_minus26 e o QP inicial de nível de fatia SliceQP como mostrado na seguinte equação; SliceQP=26+init_qp_minus26+slice_qp_delta. O QP inicial de nível de imagem init_qp_minus26 é um valor obtido mediante subtração 26 a partir de uma média dos QPs das unidades de codificação iniciais de cada fatia incluída em uma imagem, ou uma constante preestabelecida. A sintaxe slice_qp_delta corresponde a um valor de ajuste para determinar o QP inicial de nível de fatia SliceQP das unidades de codificação incluídas em uma fatia, e pode ser mudada devido ao conjunto cu_qp_delta em um nível de unidade de codificação. O cu_qp_delta corresponde a um valor de ajuste para mudar um QP em um nível de unidade de codificação. Se cu_qp_delta_enable_flag for determinado como 1, uma unidade de codificação maior do que uma unidade de codificação mínima determinada de acordo com uma sintaxe diff_cu_qp_delta_depth pode ter o cu_qp_delta. Por exemplo, informação de sintaxe (cu_qp_delta) indicando uma diferença entre o QP inicial de nível de fatia SliceQP e um QP de uma unidade de codificação inicialmente quantizada incluída em uma primeira LCU de cada fluxo de execução pode ser incluída em um conjunto de dados de TU incluindo informação de transformada das unidades de codificação.
[000202] As Figuras 22 a 24 mostram a sintaxe incluída nos cabeçalhos das unidades de dados tendo uma estrutura de árvore para predizer os QPs, de acordo com as modalidades da presente invenção.
[000203] A Figura 22 é uma tabela mostrando a sintaxe relacionada a QP provida a um PPS, de acordo com uma modalidade da presente invenção.
[000204] Com referência à Figura 22, o gerador de PPS 1520 pode incluir a sintaxe init_qp_minus26 2210, a qual é informação adicional para obter um QP inicial de nível de fatia SliceQP de cada fatia incluída em uma imagem, no PPS. Além disso, o gerador de PPS 1520 pode incluir cu_qp_delta_enabled_flag 2220, que é um indicador indicando se um QP pode ser permutado em um nível de unidade de codificação, e diff_cu_qp_delta_depth 2230, que é sintaxe para determinar o tamanho de uma unidade de codificação mínima que pode ter cu_qp_delta, no PPS. A sintaxe diff_cu_qp_delta_depth 2230 pode indicar uma profundidade do tamanho da unidade de codificação mínima que pode ter o cu_qp_delta. Por exemplo, quando o tamanho de uma LCU tendo uma profundidade de 0 é 64x64, se a sintaxe diff_cu_qp_delta_depth 2230 tiver um valor de 2, apenas as unidades de codificação tendo profundidades iguais ou menores do que 2, isto é, unidades de codificação tendo tamanhos iguais ou maiores do que 16x16 podem ter o cu_qp_delta. Além disso, o gerador de PPS 1520 pode incluir entropy_coding_sync_enabled_flag 2240, o qual indica se codificação de entropia paralela é realizada em uma pluralidade de fluxos de execução incluídos em um segmento de fatia, no PPS. Se o entropy_coding_sync_enabled_flag 2240 for 1, ele indica que codificação de entropia em paralelo é realizada em uma pluralidade de fluxos de execução de acordo com WPP como descrito acima. Se o entropy_coding_sync_enabled_flag 2240 for 0, ele indica que a codificação de entropia em paralelo de acordo com WPP não é realizada.
[000205] Conforme descrito acima, especificamente, se WPP for realizado, com relação a uma unidade de codificação inicialmente quantizada incluída em uma primeira LCU de um fluxo de execução incluída em um segmento de fatia, o preditor de QP 1420 pode predizer um QP predito QP_Pred mediante uso do QP inicial de nível de fatia SliceQP. Além disso, com relação a um grupo de quantização inicialmente quantizado de cada bloco de pixels que podem ser processados em paralelo, o preditor de QP 1420 pode predizer o QP predito QP_Pred mediante uso do QP inicial de nível de fatia SliceQP.
[000206] A Figura 23 é uma tabela mostrando sintaxe relativa ao QP provida a um cabeçalho de segmento de fatia, de acordo com uma modalidade da presente invenção.
[000207] Com referência à Figura 23, o gerador de informação de fatia 1530 pode incluir sintaxe slice_qp_delta, a qual indica uma diferença entre a sintaxe init_qp_minus26 indicando um QP inicial de nível de imagem e um QP inicial de nível de fatia SliceQP, em um cabeçalho de fatia.
[000208] A Figura 24 é uma tabela mostrando a sintaxe relacionada ao QP adicionada na informação de TU, de acordo com uma modalidade da presente invenção.
[000209] Com referência à Figura 24, o gerador de informação de TU 1540 pode incluir informação de tamanho 2410 (cu_qp_delta_abs) e informação de sinal 2420 (cu_qp_delta_sign) de sintaxe cu_qp_delta, que indica uma diferença entre um QP em um nível de unidade de codificação e um QP predito QP_Pred, na informação de TU.
[000210] A Figura 25 é um fluxograma de um método de codificação de vídeo de acordo com uma modalidade da presente invenção.
[000211] Com referência à Figura 25, na operação 2510, o executor de quantização 1410 obtém um QP usado para realizar a quantização em unidades de codificação incluídas em um segmento de fatia.
[000212] Na operação 2520, o preditor de QP 1420 determina um QP inicial de nível de fatia SliceQP para predizer um QP de um primeiro grupo de quantização de uma unidade de dados que pode ser codificada em paralelo incluída no segmento de fatia. Conforme descrito acima, a unidade de dados que podem ser codificados em paralelo pode ser um fluxo de execução incluindo as LCUs da mesma fileira de acordo com WPP, ou um bloco de pixels obtidos mediante divisão de uma imagem com relação a pelo menos um limite de coluna e/ou um limite de fileira.
[000213] Na operação 2530, o preditor de QP 1420 obtém um QP predito QP_Pred do primeiro grupo de quantização mediante uso do QP inicial de nível de fatia determinado SliceQP. Em mais detalhe, se a codificação de entropia em paralelo for realizada em uma pluralidade de fluxos de execução incluídos em um segmento de fatia de acordo com WPP, o preditor de QP 1420 pode obter o QP predito QP_Pred de uma unidade de codificação inicialmente quantizada de uma primeira LCU de cada fluxo de execução, mediante uso do QP inicial de nível de fatia SliceQP. Além disso, com relação a um grupo de quantização inicialmente quantizado de cada bloco de pixels que podem ser processados em paralelo, o preditor de QP 1420 pode predizer o QP predito QP_Pred mediante uso do QP inicial de nível de fatia SliceQP.
[000214] Além disso, mesmo quando WPP não é executado, o preditor de QP 1420 pode obter o QP predito QP_Pred da unidade de codificação inicialmente quantizada da primeira LCU do segmento de fatia, mediante uso do QP inicial de nível de fatia SliceQP. Além disso, o preditor de QP 1420 pode obter o QP predito QP_Pred de uma unidade de codificação inicialmente quantizada incluída no bloco de pixels, mediante uso do QP inicial de nível de fatia SliceQP. Além disso, o preditor de QP 1420 pode obter o QP predito QP_Pred de uma unidade de codificação com base em uma média dos QPs das unidades de codificação adjacentes, superior e esquerda da unidade de codificação.
[000215] Na operação 2540, o codificador de entropia 450 adiciona informação de sintaxe para determinar o QP inicial de nível de fatia SliceQP em um fluxo de bits. Conforme descrito acima, o gerador de PPS 1520 pode incluir sintaxe init_qp_minus26, que indica um QP inicial de nível de imagem para obter o QP inicial de nível de fatia SliceQP de cada fatia incluída na imagem, em um PPS. Além disso, o gerador de informação de fatia 1530 pode incluir sintaxe slice_qp_delta, que indica uma diferença entre a sintaxe init_qp_minus26 indicando o QP inicial de nível de imagem e o QP inicial de nível de fatia SliceQP em um cabeçalho de fatia. O gerador de informação de TU 1540 pode incluir a informação de tamanho 2410 (cu_qp_delta_abs) e a informação de sinal 2420 (cu_qp_delta_sign) da sintaxe cu_qp_delta, que indica uma diferença entre um QP em um nível de unidade de codificação e o QP predito QP_Pred, na informação de TU.
[000216] A Figura 26 é um diagrama detalhado de blocos do decodificador de entropia 520 ilustrado na Figura 5, de acordo com uma modalidade da presente invenção.
[000217] O decodificador de entropia 520 decodifica aritmeticamente os elementos de sintaxe a partir de um fluxo de bits. Em mais detalhe, com referência à Figura 26, o decodificador de entropia 520 inclui um meio de obtenção SPS 2610 para obter um SPS incluindo informação de codificação de uma sequência integral, por exemplo, um perfil e um nível, um meio de obtenção PPS 2620 para obter um PPS incluindo informação de codificação de cada imagem incluída na sequência, um meio de obtenção de informação de fatia 2630 para obter informação de fatia incluindo informação de codificação de segmentos de fatia incluídos em uma imagem, e um meio de obtenção de informação de TU 2640 para obter informação sobre as TUs usadas em um processo de transformação.
[000218] O decodificador de entropia 520 obtém sintaxe para determinar um valor inicial de um QP usado para realizar quantização inversa nas unidades de codificação incluídas em um segmento de fatia. Em mais detalhe, o meio de obtenção de PPS 2620 obtém sintaxe init_qp_minus26 indicando um QP inicial de nível de imagem. Além disso, o meio de obtenção de informação de fatia 2630 obtém sintaxe slice_qp_delta, que indica uma diferença entre a sintaxe init_qp_minus26 indicando o QP inicial de nível de imagem e um QP inicial de nível de fatia SliceQP, a partir de um cabeçalho de fatia. Além disso, o decodificador de entropia 520 pode obter sintaxe (entropy_coding_sync_enabled_flag), que indica se codificação de entropia em paralelo é realizada em uma pluralidade de fluxos de execução incluídos em um segmento de fatia. Se a (entropy_coding_sync_enabled_flag) for 1, a decodificação de entropia em paralelo pode ser realizada em uma pluralidade de fluxos de execução de acordo com WPP como descrito acima. Se a entropy_coding_sync_enabled_flag for 0, a decodificação por entropia em paralelo de acordo com WPP pode não ser realizada. A Figura 27 é um diagrama detalhado de blocos do quantizador inverso 530 ilustrado na Figura 5, de acordo com uma modalidade da presente invenção.
[000219] Com referência à Figura 27, o quantizador inverso 530 inclui um preditor de QP 2710, um somador 2720, e um executor de quantização inversa 2730.
[000220] Como o preditor de QP 1420 ilustrado na Figura 14, o preditor de QP 2710 pode obter um QP predito QP_Pred das unidades de codificação. Com relação a uma unidade de codificação inicialmente quantizada inversamente (um grupo de quantização) de unidade de dados que podem ser processados em paralelo, predeterminados, o preditor QP 270 pode obter o QP predito QP_Pred mediante uso de um QP inicial de nível de fatia SliceQP. Como descrito acima, o grupo de quantização denota um conjunto de uma ou mais unidades de codificação que compartilham o mesmo QP predito QP_Pred. O grupo de quantização pode incluir uma unidade de codificação ou uma pluralidade de unidades de codificação. A unidade de dados que pode se decodificada em paralelo pode ser um fluxo de execução incluindo as LCUs da mesma fileira de acordo com o WPP, ou um bloco de pixels obtido mediante divisão de uma imagem com relação a pelo menos um limite de coluna e/ou um limite de fileira.
[000221] Além disso, o preditor de QP 2710 pode obter o QP inicial de nível de fatia SliceQP mediante uso de um QP inicial de nível de imagem init_qp_minus26, e sintaxe slice_qp_delta indicando uma diferença entre o QP inicial de nível de imagem init_qp_minus26 e o QP inicial de nível de fatia SliceQP como mostrado na equação seguinte; SliceQP=26+init_qp_minus26+slice_qp_delta. Além disso, o preditor de QP 2710 obtém o QP predito QP_Pred de um primeiro grupo de quantização de uma unidade de dados que podem ser processados em paralelo incluída em um segmento de fatia atual, mediante uso do QP inicial de nível de fatia SliceQP.
[000222] O somador 2720 restaura um QP mediante adição de uma diferença de QP ΔQP, que é uma diferença entre o QP aplicado à unidade de codificação e o QP predito QP_Pred, para o QP predito QP_Pred.
[000223] O executor de quantização inversa 2730 realiza quantização inversa nos dados de entrada mediante uso de uma etapa de quantização Q_Step determinada de acordo com o QP armazenado. Como descrito acima, opostamente a um processo de quantização, o executor de quantização inversa 2730 realiza quantização inversa mediante uso de um valor obtido mediante multiplicação dos dados de entrada pela etapa de quantização Q_Step determinada de acordo com o QP.
[000224] A Figura 28 é um fluxograma de um método de decodificação de vídeo de acordo com uma modalidade da presente invenção.
[000225] Com referência à Figura 28, na operação 2810, o decodificador de entropia 520 obtém sintaxe para determinar um valor inicial de um QP usado para realizar quantização inversa em um primeiro grupo de quantização de uma unidade de dados que podem ser processados em paralelo, incluída em um segmento de fatia, a partir de um fluxo de bits. Conforme descrito acima, o meio de obtenção de PPS 2620 do decodificador de entropia 520 obtém sintaxe init_qp_minus26 indicando um QP inicial de nível de imagem, e o meio de obtenção de informação de fatia 2630 obtém sintaxe slice_qp_delta, que indica uma diferença entre a sintaxe init_qp_minus26 indicando o QP inicial de nível de imagem e um QP inicial de nível de fatia SliceQP, a partir de um cabeçalho de fatia.
[000226] Na operação 2820, o preditor de QP 2710 obtém o QP inicial de nível de fatia SliceQP para predizer um QP usado para realizar quantização inversa em unidades de codificação incluídas em um segmento de fatia, com base na sintaxe obtida. Conforme descrito acima, o preditor de QP 2710 pode obter o QP inicial de nível de fatia SliceQP mediante uso do QP inicial de nível de imagem init_qp_minus26, e a sintaxe slice_qp_delta indicando uma diferença entre o QP inicial de nível de imagem init_qp_minus26 e o QP inicial de nível de fatia SliceQP como mostrado na equação seguinte; SliceQP=26+init_qp_minus26+slice_qp_delta.
[000227] Na operação 2830, o preditor de QP 2710 obtém um QP predito QP_Pred do primeiro grupo de quantização da unidade de dados que podem ser processados em paralelo incluída no segmento de fatia, por intermédio do uso do QP inicial de nível de fatia SliceQP.
[000228] Na operação 2840, o somador 2720 determina um QP mediante adição de uma diferença de QP ΔQP, que é uma diferença entre o QP aplicado à unidade de codificação e o QP predito QP_Pred, ao QP predito QP_Pred.
[000229] Na operação 2850, o executor de quantização inversa 2730 obtém uma etapa de quantização Q_Step baseado no QP determinado, e executa quantização inversa em uma unidade de codificação incluída no primeiro grupo de quantização, mediante uso da etapa de quantização Q_Step.
[000230] As modalidades da presente invenção podem ser escritas como programas de computador e podem ser implementadas em computadores digitais de uso comum que executam os programas utilizando um meio de gravação legível por computador. Exemplos do meio de gravação legível por computador incluem meios de armazenamento magnético (por exemplo, ROM, disquetes, discos rígidos, etc.) e meios de gravação ótica (por exemplo, CD-ROMs ou DVDs).
[000231] Embora a presente invenção tenha sido particularmente mostrada e descrita com referência às suas modalidades exemplares, deverá ser entendido por aqueles de conhecimento comum na arte que várias alterações na forma e detalhes podem ser feitas sem se afastar do espírito e escopo de acordo com a presente invenção como definidos pelas reivindicações a seguir. As modalidades exemplares devem ser consideradas apenas em um sentido descritivo e não com o propósito de limitação. Portanto, o escopo da invenção é definido não pela descrição detalhada da invenção, mas pelas reivindicações a seguir, e todas as diferenças dentro do escopo serão consideradas como estando incluídas na presente invenção.

Claims (2)

1. MÉTODO DE DECODIFICAÇÃO DE VÍDEO, caracterizado por compreender: obter um parâmetro de quantização de uma fatia, gerar um parâmetro de quantização predito de um grupo de quantização atual usando o parâmetro de quantização da fatia, na qual o grupo de quantização atual é um primeiro grupo de quantização em uma fila atual incluída na fatia; gerar, de acordo com uma disponibilidade de um bloco vizinho de um segundo grupo de quantização na linha atual, um parâmetro de quantização previsto do segundo grupo de quantização na linha atual incluído na fatia usando um determinado parâmetro de quantização em relação ao bloco vizinho do segundo grupo de quantização; gerar um parâmetro de quantização predito de um próximo grupo de quantização usando o parâmetro de quantização da fatia, na qual o próximo grupo de quantização é um primeiro grupo de quantização em uma próxima fila incluída na fatia; e realizar uma quantização inversa no grupo de quantização atual, no segundo grupo de quantização na fila atual, e no próximo grupo de quantização, em que cada uma da linha atual e da próxima linha compreendendo uma pluralidade das maiores unidades de codificação, em que o bloco vizinho do segundo grupo de quantização inclui pelo menos um dentre o bloco esquerdo do segundo grupo de quantização e o bloco superior do segundo grupo de quantização, e em que um parâmetro de quantização predito de um grupo de quantização na linha atual que não é o próximo grupo de quantização, sendo gerado usando um parâmetro de quantização de uma unidade de codificação vizinha do grupo de quantização na próxima linha.
2. APARELHO DE DECODIFICAÇÃO DE VÍDEO, caracterizado por compreender: Pelo menos um processador configurado para obter um parâmetro de quantização de uma fatia, gerar um parâmetro de quantização predito de um grupo de quantização atual usando o parâmetro de quantização da fatia, na qual o grupo de quantização atual é um primeiro grupo de quantização em uma fila atual incluída na fatia; gerar, de acordo com a disponibilidade de um bloco vizinho de um segundo grupo de quantização na linha atual, um parâmetro de quantização previsto do segundo grupo de quantização na linha atual incluído na fatia usando um determinado parâmetro de quantização em relação ao bloco vizinho do segundo grupo de quantização; gerar um parâmetro de quantização predito de um próximo grupo de quantização usando o parâmetro de quantização da fatia, na qual o próximo grupo de quantização é um primeiro grupo de quantização em uma próxima linha incluída na fatia; e realizar uma quantização inversa no grupo de quantização atual, no segundo grupo de quantização na linha atual, e no próximo grupo de quantização, em que cada uma da linha atual e da próxima linha compreendendo uma pluralidade das maiores unidades de codificação, em que o bloco vizinho do segundo grupo de quantização inclui pelo menos um dentre o bloco esquerdo do segundo grupo de quantização e o bloco superior do segundo grupo de quantização, e em que um parâmetro de quantização predito de um grupo de quantização na próxima linha que não é o próximo grupo de quantização, ser gerado usando um parâmetro de quantização de uma unidade de codificação vizinha do grupo de quantização na próxima linha.
BR122021013575-4A 2012-01-30 2013-01-30 Método de decodificação de vídeo, e aparelho de decodificação de vídeo BR122021013575B1 (pt)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201261592577P 2012-01-30 2012-01-30
US61/592,577 2012-01-30
PCT/KR2013/000776 WO2013115572A1 (ko) 2012-01-30 2013-01-30 계층적 데이터 단위의 양자화 파라메터 예측을 포함하는 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
BR112014018115-2A BR112014018115B1 (pt) 2012-01-30 2013-01-30 Método de decodificar um vídeo

Publications (1)

Publication Number Publication Date
BR122021013575B1 true BR122021013575B1 (pt) 2022-04-26

Family

ID=76378339

Family Applications (4)

Application Number Title Priority Date Filing Date
BR122020001936-0A BR122020001936B1 (pt) 2012-01-30 2013-01-30 método de decodificar um vídeo
BR122021013575-4A BR122021013575B1 (pt) 2012-01-30 2013-01-30 Método de decodificação de vídeo, e aparelho de decodificação de vídeo
BR122021013566-5A BR122021013566B1 (pt) 2012-01-30 2013-01-30 Método de decodificar um vídeo
BR122021013570-3A BR122021013570B1 (pt) 2012-01-30 2013-01-30 Aparelho para decodificar um vídeo

Family Applications Before (1)

Application Number Title Priority Date Filing Date
BR122020001936-0A BR122020001936B1 (pt) 2012-01-30 2013-01-30 método de decodificar um vídeo

Family Applications After (2)

Application Number Title Priority Date Filing Date
BR122021013566-5A BR122021013566B1 (pt) 2012-01-30 2013-01-30 Método de decodificar um vídeo
BR122021013570-3A BR122021013570B1 (pt) 2012-01-30 2013-01-30 Aparelho para decodificar um vídeo

Country Status (1)

Country Link
BR (4) BR122020001936B1 (pt)

Also Published As

Publication number Publication date
BR122021013570B1 (pt) 2022-04-26
BR122020001936B1 (pt) 2021-05-25
BR122021013566B1 (pt) 2022-04-26

Similar Documents

Publication Publication Date Title
JP6715296B2 (ja) ビデオ復号化方法及び装置とビデオ符号化方法及び装置
KR102169608B1 (ko) 인트라 예측 처리 속도 향상을 위한 비디오의 부호화 방법 및 장치, 비디오의 복호화 방법 및 장치
BR122020013760B1 (pt) Método para decodificar um vídeo através filtração em malha com base nas unidades de codificação, e aparelho de decodificação de vídeo para decodificar um vídeo através filtração em malha com base em unidades de codificação
BR122021004659B1 (pt) Método para decodificar vídeo para compensar quanto a um valor de pixel
BR122020014021B1 (pt) Aparelho para decodificar um vídeo
BR112012025407B1 (pt) Método de decodificação de vídeo baseado em unidades de codificação determinadas de acordo com uma estrutura de árvore
BR122021004622B1 (pt) Método para decodificar um vídeo
BR122013019952A2 (pt) Aparelho de decodificar um vídeo
BR122018016535B1 (pt) Método de decodificação de vídeo
BR112012003245B1 (pt) Método para decodificar um vídeo codificado
JP2015233304A (ja) 映像の符号化方法及び装置、並びに映像の復号化方法及び装置
KR20130116215A (ko) 병렬 처리를 위한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
KR20130050325A (ko) 임의적인 파티션을 이용한 움직임 예측에 따른 비디오 부호화 방법 및 장치, 임의적인 파티션을 이용한 움직임 보상에 따른 비디오 복호화 방법 및 장치
KR20130049187A (ko) 임의적인 파티션을 이용한 움직임 예측에 따른 비디오 부호화 방법 및 장치, 임의적인 파티션을 이용한 움직임 보상에 따른 비디오 복호화 방법 및 장치
BR122021013575B1 (pt) Método de decodificação de vídeo, e aparelho de decodificação de vídeo
KR102006804B1 (ko) 임의적인 파티션을 이용한 움직임 예측에 따른 비디오 부호화 방법 및 장치, 임의적인 파티션을 이용한 움직임 보상에 따른 비디오 복호화 방법 및 장치

Legal Events

Date Code Title Description
B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

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