BR112021000694A2 - Codificador de vídeo, decodificador de vídeo, e métodos de codificação e decodificação correspondentes - Google Patents

Codificador de vídeo, decodificador de vídeo, e métodos de codificação e decodificação correspondentes Download PDF

Info

Publication number
BR112021000694A2
BR112021000694A2 BR112021000694-0A BR112021000694A BR112021000694A2 BR 112021000694 A2 BR112021000694 A2 BR 112021000694A2 BR 112021000694 A BR112021000694 A BR 112021000694A BR 112021000694 A2 BR112021000694 A2 BR 112021000694A2
Authority
BR
Brazil
Prior art keywords
luma
value
samples
neighboring
chroma
Prior art date
Application number
BR112021000694-0A
Other languages
English (en)
Inventor
Xiang Ma
Yin Zhao
Haitao Yang
Jianle Chen
Original Assignee
Huawei Technologies 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 Huawei Technologies Co., Ltd. filed Critical Huawei Technologies Co., Ltd.
Publication of BR112021000694A2 publication Critical patent/BR112021000694A2/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Closed-Circuit Television Systems (AREA)
  • Analogue/Digital Conversion (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Color Television Systems (AREA)

Abstract

codificador de vídeo, decodificador de vídeo, e métodos de codificação e decodificação correspondentes. são descritas técnicas de modo de predição de modelo linear. dois pares de valor de luma e valor de croma são determinados de acordo com n amostras luma vizinhas reconstruídas e n amostras croma vizinhas reconstruídas que correspondem às n amostras luma vizinhas reconstruídas, e m amostras luma vizinhas reconstruídas e m amostras croma vizinhas reconstruídas que correspondem às m amostras luma. o valor mínimo das n amostras luma vizinhas reconstruídas não é menor que o valor de luma das amostras luma vizinhas reconstruídas restantes do conjunto de amostras luma vizinhas reconstruídas. o valor máximo das m amostras luma vizinhas reconstruídas não é maior que o valor de luma das amostras luma vizinhas reconstruídas restantes do conjunto de amostras luma vizinhas reconstruídas. m, n são números inteiro positivos e são maiores que 1. um ou mais parâmetros de modelo linear são determinados com base nos dois pares de valor de luma e valor de croma, e um bloco preditivo é determinado com base no um ou mais parâmetros de modelo linear.

Description

“CODIFICADOR DE VÍDEO, DECODIFICADOR DE VÍDEO, E MÉTODOS DE CODIFICAÇÃO E DECODIFICAÇÃO CORRESPONDENTES” CAMPO DA TÉCNICA
[0001] As modalidades da presente revelação referem-se, de modo geral, a técnicas de codificação e decodificação de dados de vídeo, e se referem, de modo especial, a técnicas para predição intra com o uso de um modelo linear de componente cruzado (CCLM).
ANTECEDENTES
[0002] Vídeo digital tem sido amplamente usado desde a introdução de disco versátil digital (DVD). Além de distribuir programas de vídeo com o uso de DVDs, atualmente programas de vídeo podem ser transmitidos com o uso de redes de computador com fio (tais como Internet) ou redes de comunicação sem fio. Antes de transmitir dados de vídeo com o uso de uma mídia de transmissão, o vídeo é codificado. Um visualizador recebe o vídeo codificado e usa um dispositivo de visualização para decodificar e exibir o vídeo. Ao longo dos anos, a qualidade do vídeo tem sido aperfeiçoada devido a resoluções mais altas, profundidades de cor e taxas de quadro, por exemplo. A qualidade aperfeiçoada em dados de vídeo transmitidos levou a fluxos de dados maiores, e fluxos de dados maiores são comumente transportados pela Internet e redes de comunicação móvel.
[0003] Os vídeos de resolução mais alta tipicamente exigem mais largura de banda, visto que portam mais informações. A fim de reduzir exigências de largura de banda, esquemas de codificação de vídeo que envolvem compressão do vídeo têm sido introduzidos. Quando o vídeo é codificado, as exigências de largura de banda (ou exigências de memória correspondentes em caso de armazenamento) são reduzidas em comparação a vídeo não codificado. Frequentemente, essa redução ocorre ao custo de qualidade. Desse modo, esforços são feitos na tentativa de encontrar um equilíbrio entre exigências de largura de banda e qualidade nos padrões de codificação de vídeo.
[0004] Visto que há uma necessidade constante para aperfeiçoar a qualidade e reduzir as exigências de largura de banda, soluções que mantêm a qualidade com exigências de largura de banda reduzidas ou aperfeiçoam a qualidade enquanto mantêm as exigências de largura de banda são continuamente desejadas. Por vezes, acordos entre as duas podem ser aceitáveis. Por exemplo, pode ser aceitável aumentar as exigências de largura de banda se o aperfeiçoamento de qualidade for significativo.
[0005] A codificação de vídeo de alta eficiência (HEVC) é um esquema de codificação de vídeo comumente conhecido. Em HEVC, uma unidade de codificação (CU) é dividida em múltiplas unidades de predição (PUs) ou unidades de transformada (TUs). Um padrão de codificação de vídeo de próxima geração, o padrão de codificação de vídeo versátil (VVC), é o projeto de codificação de vídeo conjunto mais recente do Grupo de Especialistas em Codificação de Vídeo (VCEG) do Setor de Padronização de Telecomunicação de União Internacional de Comunicação (ITU-T) e do Grupo de Especialistas em Imagem em Movimento (MPEG) da Organização Internacional para Padronização/Comissão Internacional Eletrotécnica (ISO/IEC). As duas organizações de padronização estão trabalhando em conjunto em uma parceria conhecida como a Equipe de Exploração de Vídeo Conjunta (JVET). O padrão VVC também é denominado padrão ITU-T H.266 ou padrão de Codificação de Vídeo de Próxima Geração (NGVC). No padrão VVC, os conceitos de múltiplos tipos de partição, isto é, a separação dos conceitos de CU, PU e TU, são removidos, exceto quando necessário para CUs que têm um tamanho muito grande para o comprimento máximo de transformada, e o VVC suporta mais flexibilidade para formatos de partição de CU.
SUMÁRIO
[0006] As modalidades do presente pedido fornecem aparelhos e métodos para codificar e decodificar dados de vídeo. Em particular, usando-se amostras de luma para predizer amostras de croma por meio de predição intra como parte de um mecanismo de codificação de vídeo, a codificação de predição intra com o uso de um modelo linear de componente cruzado pode ser alcançada de um modo flexível.
[0007] As modalidades particulares são fornecidas nas reivindicações independentes anexas, com outras modalidades nas reivindicações dependentes.
[0008] De acordo com um primeiro aspecto, a revelação se refere a um método de decodificação de dados de vídeo. O método compreende: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras de luma vizinhas reconstruídas subamostradas, em que o conjunto de amostras de luma vizinhas reconstruídas subamostradas compreende uma pluralidade de amostras de luma reconstruídas subamostradas que estão acima do bloco de luma, e/ou uma pluralidade de amostras de luma reconstruídas subamostradas que estão à esquerda do bloco de luma; determinar dois pares de valor de luma e valor de croma de acordo com N amostras de luma reconstruídas subamostradas com o valor máximo e N amostras de croma reconstruídas que correspondem às N amostras de luma reconstruídas subamostradas com os valores de luma máximos, e/ou M amostras de luma reconstruídas subamostradas com o valor de luma mínimo e M amostras de croma reconstruídas que correspondem às M amostras de luma subamostradas com o valor mínimo, quando as N amostras de luma reconstruídas subamostradas com o valor máximo e/ou as M amostras de luma reconstruídas subamostradas com o valor mínimo estiverem compreendidas no conjunto de amostras de luma vizinhas reconstruídas subamostradas, em que M, N são um número inteiro positivo e maiores que 1; determinar um ou mais parâmetros de modelo linear com base nos dois pares determinados de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e decodificar por predição de modelo linear (LM) o bloco de croma com base no bloco preditivo. em que a predição de modelo linear (LM) compreende predição de modelo linear de componente cruzado, modelo linear multidirecional (MDLM) e MMLM.
[0009] Em uma possível forma de implantação do método de acordo com o primeiro aspecto como tal, em que o conjunto de amostras de luma vizinhas reconstruídas subamostradas compreende adicionalmente: uma amostra de luma vizinha superior direita fora do bloco de luma e amostras de luma que estão à direita da amostra de luma vizinha superior direita fora do bloco de luma; uma amostra de luma vizinha inferior esquerda fora do bloco de luma e amostras de luma que estão abaixo da amostra de luma vizinha inferior esquerda fora do bloco de luma.
[0010] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do primeiro aspecto ou o primeiro aspecto como tal, em que a pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação superior, e a pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação à esquerda.
[0011] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do primeiro aspecto ou o primeiro aspecto como tal, em que o conjunto de amostras de luma vizinhas reconstruídas (subamostradas) exclui amostras de luma que estão acima de uma amostra de luma vizinha superior esquerda fora do bloco de luma, e/ou amostras de luma que estão à esquerda da amostra de luma vizinha superior esquerda fora do bloco de luma.
[0012] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do primeiro aspecto ou o primeiro aspecto como tal, em que uma coordenada da amostra de luma superior esquerda do bloco de luma é (x0, y0), e em que o conjunto de amostras de luma vizinhas reconstruídas (subamostradas) exclui amostras de luma que têm uma coordenada x menor que x0 e uma coordenada y menor que y0.
[0013] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do primeiro aspecto ou o primeiro aspecto como tal, em que, quando as N amostras de luma reconstruídas subamostradas com o valor máximo e/ou as M amostras de luma reconstruídas subamostradas com o valor mínimo estiverem compreendidas no conjunto de amostras de luma vizinhas reconstruídas subamostradas, a etapa de determinação de dois pares de valor de luma e valor de croma compreende: determinar (ou selecionar) dois pares de valor de luma e valor de croma com base na diferença de valor de croma entre um valor de croma de cada um dentre uma primeira pluralidade de pares de valor de luma e valor de croma e um valor de croma de cada um dentre uma segunda pluralidade de pares de valor de luma e valor de croma, em que referido cada um dentre a primeira pluralidade de pares de valor de luma e valor de croma compreende uma dentre N amostras de luma reconstruídas subamostradas com o valor máximo e a amostra de croma vizinha reconstruída correspondente, e referido cada um dentre a segunda pluralidade de pares de valor de luma e valor de croma compreende uma dentre
M amostras de luma reconstruídas subamostradas com o valor mínimo e a amostra de croma vizinha reconstruída correspondente.
[0014] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do primeiro aspecto ou o primeiro aspecto como tal, em que a menor diferença de valor de croma é entre um valor de croma de um primeiro par de valor de luma e valor de croma e um valor de croma de um segundo par de valor de luma e valor de croma, e o primeiro par de valor de luma e valor de croma e o segundo par de valor de luma e valor de croma que têm a menor diferença de valor de croma são escolhidos como referidos dois pares de valor de luma e valor de croma; ou a maior diferença de valor de croma entre um valor de croma de um terceiro par de valor de luma e valor de croma e um valor de croma de um quarto par de valor de luma e valor de croma, e o terceiro par de valor de luma e valor de croma e o quarto par de valor de luma e valor de croma que têm a maior diferença de valor de croma são escolhidos como referidos dois pares de valor de luma e valor de croma. Por exemplo, o primeiro par de valor de luma e valor de croma é incluído na primeira pluralidade de pares de valor de luma e valor de croma. Por exemplo, o segundo par de valor de luma e valor de croma é incluído na segunda pluralidade de pares de valor de luma e valor de croma. Por exemplo, o terceiro par de valor de luma e valor de croma é incluído na primeira pluralidade de pares de valor de luma e valor de croma. Por exemplo, o quarto par de valor de luma e valor de croma é incluído na segunda pluralidade de pares de valor de luma e valor de croma.
[0015] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do primeiro aspecto ou o primeiro aspecto como tal, em que, quando as N amostras de luma reconstruídas subamostradas com o valor máximo e/ou as M amostras de luma reconstruídas subamostradas com o valor mínimo estiverem compreendidas no conjunto de amostras de luma vizinhas reconstruídas subamostradas, a etapa de determinação de dois pares de valor de luma e valor de croma compreende: determinar um quinto par de valor de luma e valor de croma e um sexto par de valor de luma e valor de croma como referidos dois pares de valor de luma e valor de croma, em que o valor de croma correspondente do quinto par de valor de luma e valor de croma é o valor de croma médio das N amostras de croma reconstruídas que correspondem às N amostras de luma reconstruídas subamostradas com o valor máximo, e o valor de croma correspondente do sexto par de valor de luma e valor de croma é o valor de croma médio das M amostras de croma reconstruídas que correspondem às M amostras de luma reconstruídas subamostradas com o valor mínimo. O valor de luma do quinto par de valor de luma e valor de croma é o valor de luma de cada uma dentre as N amostras de luma reconstruídas subamostradas com o valor máximo. O valor de luma do sexto par de valor de luma e valor de croma é o valor de luma de cada uma dentre as M amostras de luma reconstruídas subamostradas com o valor mínimo.
[0016] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do primeiro aspecto ou o primeiro aspecto como tal, em que o conjunto de amostras de luma vizinhas reconstruídas subamostradas compreende um primeiro conjunto de amostras de luma vizinhas reconstruídas subamostradas e um segundo conjunto de amostras de luma vizinhas reconstruídas subamostradas, e em que o primeiro conjunto de amostras de luma vizinhas reconstruídas subamostradas compreende amostras de luma vizinhas reconstruídas subamostradas com o valor de luma sendo menor que ou igual a um limiar; e o segundo conjunto de amostras de luma vizinhas reconstruídas subamostradas compreende amostras de luma vizinhas reconstruídas subamostradas com o valor de luma sendo maior que o limiar.
[0017] Em um possível forma de implantação do método de acordo com qualquer implantação antecedente do primeiro aspecto ou o primeiro aspecto como tal, em que decodificar por predição de LM o bloco de croma com base no bloco preditivo compreende adicionar o bloco preditivo a um bloco residual para reconstruir o bloco de croma.
[0018] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do primeiro aspecto ou o primeiro aspecto como tal, o método compreende adicionalmente: decodificar um sinalizador para um bloco atual que inclui o bloco de luma e o bloco de croma, em que o sinalizador indica que a codificação por predição de LM é habilitada para o bloco de croma, e em que decodificar o sinalizador compreende decodificar o sinalizador com base em um contexto que compreende um ou mais sinalizadores que indicam se a codificação por predição de LM é habilitada para blocos vizinhos.
[0019] De acordo com um segundo aspecto, a invenção se refere a um método de decodificação de dados de vídeo, o método compreende: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras de luma vizinhas reconstruídas (subamostradas), em que o conjunto de amostras de luma vizinhas reconstruídas (subamostradas) compreende uma pluralidade de amostras de luma reconstruídas (subamostradas) que estão acima do bloco de luma, e/ou uma pluralidade de amostras de luma reconstruídas (subamostradas) que estão à esquerda do bloco de luma; determinar dois pares de valor de luma e valor de croma de acordo com N amostras de luma reconstruídas (subamostradas) e N amostras de croma reconstruídas que correspondem às N amostras de luma reconstruídas (subamostradas) e/ou M amostras de luma reconstruídas (subamostradas) e M amostras de croma reconstruídas que correspondem às M amostras de luma (subamostradas), em que o valor mínimo das N amostras de luma reconstruídas (subamostradas) não é menor que o valor de luma das amostras de luma reconstruídas (subamostradas) remanescentes do conjunto de amostras de luma vizinhas reconstruídas (subamostradas), e o valor máximo das M amostras de luma reconstruídas (subamostradas) não é maior que o valor de luma das amostras de luma reconstruídas (subamostradas) remanescentes do conjunto de amostras de luma vizinhas reconstruídas subamostradas, e M, N são um número inteiro positivo e maiores que 1. Em outras palavras, o valor de luma de qualquer uma dentre as N amostras de luma reconstruídas subamostradas é maior que valor de luma de qualquer uma dentre as M amostras de luma reconstruídas subamostradas e a soma de N e M é igual a ou menor que o número do conjunto de amostras de luma vizinhas reconstruídas subamostradas. determinar um ou mais parâmetros de modelo linear com base nos dois pares determinados de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e decodificar por predição de modelo linear (LM) o bloco de croma com base no bloco preditivo.
[0020] Em uma possível forma de implantação do método de acordo com o segundo aspecto como tal, em que a etapa of determinar dois pares de valor de luma e valor de croma compreende: determinar um sétimo par de valor de luma e valor de croma, e um oitavo par de valor de luma e valor de croma como referidos dois pares de valor de luma e valor de croma, em que o valor de luma do sétimo par de valor de luma e valor de croma é o valor de luma médio das referidas N amostras de luma reconstruídas (subamostradas), e o valor de croma do sétimo par de valor de luma e valor de croma é o valor de croma médio das referidas N amostras de croma reconstruídas que correspondem às N amostras de luma reconstruídas (subamostradas); e em que o valor de luma do oitavo par de valor de luma e valor de croma é o valor de luma médio das referidas M amostras de luma reconstruídas (subamostradas), e o valor de croma do oitavo par de valor de luma e valor de croma é o valor de croma médio das referidas M amostras de croma reconstruídas que correspondem às M amostras de luma reconstruídas (subamostradas).
[0021] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do segundo aspecto ou o segundo aspecto como tal, em que a etapa of determinar dois pares de valor de luma e valor de croma compreende: determinar um nono par de valor de luma e valor de croma, e um décimo par de valor de luma e valor de croma como referidos dois pares de valor de luma e valor de croma, em que o valor de luma do nono par de valor de luma e valor de croma é o valor de luma médio das referidas N amostras de luma reconstruídas (subamostradas) dentro de uma primeira faixa de valores de luma, e o valor de croma do nono par de valor de luma e valor de croma é o valor de croma médio das referidas N amostras de croma reconstruídas que correspondem às N amostras de luma reconstruídas (subamostradas) dentro da primeira faixa de valores de luma; e em que o valor de luma do décimo par de valor de luma e valor de croma é o valor de luma médio das referidas M amostras de luma reconstruídas (subamostradas) dentro de uma segunda faixa de valores de luma, e o valor de croma do décimo par de valor de luma e valor de croma é o valor de croma médio das referidas M amostras de croma reconstruídas que correspondem às M amostras de luma reconstruídas (subamostradas) dentro da segunda faixa de valores de luma; em que qualquer valor da primeira faixa de valores de luma é maior que qualquer um dentre a segunda faixa de valores de luma.
[0022] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do segundo aspecto ou o segundo aspecto como tal, em que o primeiro valor de luma está dentro de uma faixa de [MaxlumaValue-T1, MaxlumaValue]; e/ou, o segundo valor de luma está dentro de uma faixa de [MinlumaValue, MinlumaValue+T2], em que os MaxlumaValue e MinlumaValue são, respectivamente, o valor de luma máximo e o valor de luma mínimo no conjunto de amostras de luma vizinhas reconstruídas subamostradas, e T1, T2 são limiares predefinidos.
[0023] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do segundo aspecto ou o segundo aspecto como tal, em que M e N são iguais, ou diferentes.
[0024] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do segundo aspecto ou o segundo aspecto como tal, em que M e N são definidos com base no tamanho de bloco do bloco de luma.
[0025] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do segundo aspecto ou o segundo aspecto como tal, em que M=(W+H)>>t, N=(W+H)>>r, em que os t e r são o número de bits deslocados a direita.
[0026] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do segundo aspecto ou o segundo aspecto como tal, em que o conjunto de amostras de luma vizinhas reconstruídas subamostradas compreende adicionalmente: uma amostra de luma vizinha superior direita fora do bloco de luma e amostras de luma que estão à direita da amostra de luma vizinha superior direita fora do bloco de luma; uma amostra de luma vizinha inferior esquerda fora do bloco de luma e amostras de luma que estão abaixo da amostra de luma vizinha inferior esquerda fora do bloco de luma.
[0027] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do segundo aspecto ou o segundo aspecto como tal, em que a pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação superior, e a pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação à esquerda.
[0028] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do segundo aspecto ou o segundo aspecto como tal, em que o conjunto de amostras de luma vizinhas reconstruídas (subamostradas) exclui amostras de luma que estão acima de uma amostra de luma vizinha superior esquerda fora do bloco de luma, e/ou amostras de luma que estão à esquerda da amostra de luma vizinha superior esquerda fora do bloco de luma.
[0029] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do segundo aspecto ou o segundo aspecto como tal, em que uma coordenada da amostra de luma superior esquerda do bloco de luma é (x0, y0), e em que o conjunto de amostras de luma vizinhas reconstruídas (subamostradas) exclui amostras de luma que têm uma coordenada x menor que x0 e uma coordenada y menor que y0.
[0030] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do segundo aspecto ou o segundo aspecto como tal, em que o conjunto de amostras de luma vizinhas reconstruídas subamostradas compreende um primeiro conjunto de amostras de luma vizinhas reconstruídas subamostradas e um segundo conjunto de amostras de luma vizinhas reconstruídas subamostradas, e em que o primeiro conjunto de amostras de luma vizinhas reconstruídas subamostradas compreende amostras de luma vizinhas reconstruídas subamostradas com o valor de luma sendo menor que ou igual a um limiar; e o segundo conjunto de amostras de luma vizinhas reconstruídas subamostradas compreende amostras de luma vizinhas reconstruídas subamostradas com o valor de luma sendo maior que o limiar.
[0031] De acordo com um terceiro aspecto, a invenção se refere a um dispositivo para decodificar dados de vídeo, o dispositivo compreende: uma memória de dados de vídeo; e um decodificador de vídeo, em que o decodificador de vídeo é configurado para:
determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras de luma vizinhas reconstruídas (subamostradas), em que o conjunto de amostras de luma vizinhas reconstruídas (subamostradas) compreende uma pluralidade de amostras de luma reconstruídas (subamostradas) que estão acima do bloco de luma, e/ou uma pluralidade de amostras de luma reconstruídas (subamostradas) que estão à esquerda do bloco de luma; determinar dois pares de valor de luma e valor de croma de acordo com N amostras de luma reconstruídas subamostradas com o valor máximo e N amostras de croma reconstruídas que correspondem às N amostras de luma reconstruídas subamostradas com os valores máximos, e/ou M amostras de luma reconstruídas subamostradas com o valor mínimo e M amostras de croma reconstruídas que correspondem às M amostras de luma subamostradas com o valor mínimo, quando as N amostras de luma reconstruídas subamostradas com o valor máximo e/ou as M amostras de luma reconstruídas subamostradas com o valor mínimo estiverem compreendidas no conjunto de amostras de luma vizinhas reconstruídas subamostradas, em que M, N são um número inteiro positivo e maiores que 1; determinar um ou mais parâmetros de modelo linear com base nos dois pares determinados de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e decodificar por predição de modelo linear (LM) o bloco de croma com base no bloco preditivo.
[0032] Em uma possível forma de implantação do dispositivo de acordo com o terceiro aspecto como tal, em que o conjunto de amostras de luma vizinhas reconstruídas subamostradas compreende adicionalmente: uma amostra de luma vizinha superior direita fora do bloco de luma e amostras de luma que estão à direita da amostra de luma vizinha superior direita fora do bloco de luma; uma amostra de luma vizinha inferior esquerda fora do bloco de luma e amostras de luma que estão abaixo da amostra de luma vizinha inferior esquerda fora do bloco de luma.
[0033] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do terceiro aspecto ou o terceiro aspecto como tal, em que a pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação superior, e a pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação à esquerda.
[0034] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do terceiro aspecto ou o terceiro aspecto como tal, em que o conjunto de amostras de luma vizinhas reconstruídas (subamostradas) exclui amostras de luma que estão acima de uma amostra de luma vizinha superior esquerda fora do bloco de luma, e/ou amostras de luma que estão à esquerda da amostra de luma vizinha superior esquerda fora do bloco de luma.
[0035] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do terceiro aspecto ou o terceiro aspecto como tal, em que uma coordenada da amostra de luma superior esquerda do bloco de luma é (x0, y0), e em que o conjunto de amostras de luma vizinhas reconstruídas (subamostradas) exclui amostras de luma que têm uma coordenada x menor que x0 e uma coordenada y menor que y0.
[0036] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do terceiro aspecto ou o terceiro aspecto como tal, em que, quando as N amostras de luma reconstruídas subamostradas com o valor máximo e/ou as M amostras de luma reconstruídas subamostradas com o valor mínimo estiverem compreendidas no conjunto de amostras de luma vizinhas reconstruídas subamostradas, para determinar dois pares de valor de luma e valor de croma, o decodificador de vídeo é configurado para: determinar (ou selecionar) dois pares de valor de luma e valor de croma com base na diferença de valor de croma entre um valor de croma de cada um dentre uma primeira pluralidade de pares de valor de luma e valor de croma e um valor de croma de cada um dentre uma segunda pluralidade de pares de valor de luma e valor de croma, em que referido cada um dentre a primeira pluralidade de pares de valor de luma e valor de croma compreende uma dentre N amostras de luma reconstruídas subamostradas com o valor máximo e a amostra de croma vizinha reconstruída correspondente, e referido cada um dentre a segunda pluralidade de pares de valor de luma e valor de croma compreende uma dentre M amostras de luma reconstruídas subamostradas com o valor mínimo e a amostra de croma vizinha reconstruída correspondente.
[0037] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do terceiro aspecto ou o terceiro aspecto como tal, em que a menor diferença de valor de croma entre um valor de croma de um primeiro par de valor de luma e valor de croma e um valor de croma de um segundo par de valor de luma e valor de croma, e o primeiro par de valor de luma e valor de croma e o segundo par de valor de luma e valor de croma que têm a menor diferença de valor de croma são escolhidos como referidos dois pares de valor de luma e valor de croma; ou a maior diferença de valor de croma entre um valor de croma de um terceiro par de valor de luma e valor de croma e um valor de croma de um quarto par de valor de luma e valor de croma, e o terceiro par de valor de luma e valor de croma e o quarto par de valor de luma e valor de croma que têm a maior diferença de valor de croma são escolhidos como referidos dois pares de valor de luma e valor de croma. Por exemplo, o primeiro par de valor de luma e valor de croma é incluído na primeira pluralidade de pares de valor de luma e valor de croma. Por exemplo, o segundo par de valor de luma e valor de croma é incluído na segunda pluralidade de pares de valor de luma e valor de croma. Por exemplo, o terceiro par de valor de luma e valor de croma é incluído na primeira pluralidade de pares de valor de luma e valor de croma. Por exemplo, o quarto par de valor de luma e valor de croma é incluído na segunda pluralidade de pares de valor de luma e valor de croma.
[0038] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do terceiro aspecto ou o terceiro aspecto como tal, em que, quando as N amostras de luma reconstruídas subamostradas com o valor máximo e/ou as M amostras de luma reconstruídas subamostradas com o valor mínimo estiverem compreendidas no conjunto de amostras de luma vizinhas reconstruídas subamostradas, para determinar dois pares de valor de luma e valor de croma, o decodificador de vídeo é configurado para: determinar um quinto par de valor de luma e valor de croma e um sexto par de valor de luma e valor de croma como referidos dois pares de valor de luma e valor de croma,
em que o valor de croma correspondente do quinto par de valor de luma e valor de croma é o valor de croma médio das N amostras de croma reconstruídas que correspondem a N amostras de luma reconstruídas subamostradas com o valor máximo, e o valor de croma correspondente do sexto par de valor de luma e valor de croma é o valor de croma médio das M amostras de croma reconstruídas que correspondem a M amostras de luma reconstruídas subamostradas com o valor mínimo. O valor de luma do quinto par de valor de luma e valor de croma é o valor de luma de cada uma dentre as N amostras de luma reconstruídas subamostradas com o valor máximo. O valor de luma do sexto par de valor de luma e valor de croma é o valor de luma de cada uma dentre as M amostras de luma reconstruídas subamostradas com o valor mínimo.
[0039] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do terceiro aspecto ou o terceiro aspecto como tal, em que o conjunto de amostras de luma vizinhas reconstruídas subamostradas compreende um primeiro conjunto de amostras de luma vizinhas reconstruídas subamostradas e um segundo conjunto de amostras de luma vizinhas reconstruídas subamostradas, e em que o primeiro conjunto de amostras de luma vizinhas reconstruídas subamostradas compreende amostras de luma vizinhas reconstruídas subamostradas com o valor de luma sendo menor que ou igual a um limiar; e o segundo conjunto de amostras de luma vizinhas reconstruídas subamostradas compreende amostras de luma vizinhas reconstruídas subamostradas com o valor de luma sendo maior que o limiar.
[0040] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do terceiro aspecto ou o terceiro aspecto como tal, em que, para decodificar por predição de LM o bloco de croma com base no bloco preditivo, o decodificador de vídeo é configurado para adicionar o bloco preditivo a um bloco residual para reconstruir o bloco de croma.
[0041] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do terceiro aspecto ou o terceiro aspecto como tal, em que o decodificador de vídeo é configurado para: decodificar um sinalizador para um bloco atual que inclui o bloco de luma e o bloco de croma, em que o sinalizador indica que a codificação por predição de LM é habilitada para o bloco de croma, e em que decodificar o sinalizador compreende decodificar o sinalizador com base em um contexto que compreende um ou mais sinalizadores que indicam se a codificação por predição de LM é habilitada para blocos vizinhos.
[0042] De acordo com um quarto aspecto, a invenção se refere a um dispositivo para decodificar dados de vídeo, o dispositivo compreende: uma memória de dados de vídeo, e um decodificador de vídeo; em que o decodificador de vídeo é configurado para: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras de luma vizinhas reconstruídas (subamostradas), em que o conjunto de amostras de luma vizinhas reconstruídas (subamostradas) compreende uma pluralidade de amostras de luma reconstruídas (subamostradas) que estão acima do bloco de luma, e/ou uma pluralidade de amostras de luma reconstruídas (subamostradas) que estão à esquerda do bloco de luma; determinar dois pares de valor de luma e valor de croma de acordo com N amostras de luma reconstruídas (subamostradas) e N amostras de croma reconstruídas que correspondem às N amostras de luma reconstruídas (subamostradas), e/ou M amostras de luma reconstruídas (subamostradas) e M amostras de croma reconstruídas que correspondem às M amostras de luma (subamostradas), em que o valor mínimo das N amostras de luma reconstruídas (subamostradas) não é menor que o valor de luma das amostras de luma reconstruídas (subamostradas) remanescentes do conjunto de amostras de luma vizinhas reconstruídas (subamostradas), e o valor máximo das M amostras de luma reconstruídas (subamostradas) não é maior que o valor de luma das amostras de luma reconstruídas (subamostradas) remanescentes do conjunto de amostras de luma vizinhas reconstruídas subamostradas, e M, N são um número inteiro positivo e maiores que 1; em outras palavras, o valor de luma de qualquer uma dentre as N amostras de luma reconstruídas subamostradas é maior que valor de luma de acordo com qualquer uma dentre as M amostras de luma reconstruídas subamostradas e a soma de N e M é igual a ou menor que o número do conjunto de amostras de luma vizinhas reconstruídas subamostradas; determinar um ou mais parâmetros de modelo linear com base nos dois pares determinados de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e decodificar por predição de modelo linear (LM) o bloco de croma com base no bloco preditivo.
[0043] Em uma possível forma de implantação do método de acordo com o quarto aspecto como tal, em que para determinar dois pares de valor de luma e valor de croma, o decodificador de vídeo é configurado para: determinar um sétimo par de valor de luma e valor de croma, e um oitavo par de valor de luma e valor de croma como referidos dois pares de valor de luma e valor de croma, em que o valor de luma do sétimo par de valor de luma e valor de croma é o valor de luma médio das referidas N amostras de luma reconstruídas (subamostradas), e o valor de croma do sétimo par de valor de luma e valor de croma é o valor de croma médio das referidas N amostras de croma reconstruídas que correspondem às N amostras de luma reconstruídas (subamostradas); e em que o valor de luma do oitavo par de valor de luma e valor de croma é o valor de luma médio das referidas M amostras de luma reconstruídas (subamostradas), e o valor de croma do oitavo par de valor de luma e valor de croma é o valor de croma médio das referidas M amostras de croma reconstruídas que correspondem às M amostras de luma reconstruídas (subamostradas).
[0044] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do quarto aspecto ou o quarto aspecto como tal, em que para determinar dois pares de valor de luma e valor de croma, o decodificador de vídeo é configurado para: determinar um nono par de valor de luma e valor de croma, e um décimo par de valor de luma e valor de croma como referidos dois pares de valor de luma e valor de croma, em que o valor de luma do nono par de valor de luma e valor de croma é o valor de luma médio das referidas N amostras de luma reconstruídas (subamostradas) dentro de uma primeira faixa de valores de luma, e o valor de croma do nono par de valor de luma e valor de croma é o valor de croma médio das referidas N amostras de croma reconstruídas que correspondem às N amostras de luma reconstruídas (subamostradas) dentro da primeira faixa de valores de luma; e em que o valor de luma do décimo par de valor de luma e valor de croma é o valor de luma médio das referidas M amostras de luma reconstruídas
(subamostradas) dentro de uma segunda faixa de valores de luma, e o valor de croma do décimo par de valor de luma e valor de croma é o valor de croma médio das referidas M amostras de croma reconstruídas que correspondem às M amostras de luma reconstruídas (subamostradas) dentro da segunda faixa de valores de luma; em que qualquer valor da primeira faixa de valores de luma é maior que qualquer um dentre a segunda faixa de valores de luma.
[0045] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do quarto aspecto ou o quarto aspecto como tal, em que o primeiro valor de luma está dentro de uma faixa de [MaxlumaValue-T1, MaxlumaValue]; e/ou, o segundo valor de luma está dentro de uma faixa de [MinlumaValue, MinlumaValue+T2], em que os MaxlumaValue e MinlumaValue são, respectivamente, o valor de luma máximo e o valor de luma mínimo no conjunto de amostras de luma vizinhas reconstruídas subamostradas, e T1, T2 são limiares predefinidos.
[0046] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do quarto aspecto ou o quarto aspecto como tal, em que M e N são iguais, ou diferentes.
[0047] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do quarto aspecto ou o quarto aspecto como tal, em que M e N são definidos com base no tamanho de bloco do bloco de luma.
[0048] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do quarto aspecto ou o quarto aspecto como tal, em que M=(W+H)>>t, N=(W+H)>>r, em que os t, e r são o número de bits deslocados a direita.
[0049] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do quarto aspecto ou o quarto aspecto como tal, em que o conjunto de amostras de luma vizinhas reconstruídas subamostradas compreende adicionalmente: uma amostra de luma vizinha superior direita fora do bloco de luma e amostras de luma que estão à direita da amostra de luma vizinha superior direita fora do bloco de luma; uma amostra de luma vizinha inferior esquerda fora do bloco de luma e amostras de luma que estão abaixo da amostra de luma vizinha inferior esquerda fora do bloco de luma.
[0050] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do quarto aspecto ou o quarto aspecto como tal, em que a pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação superior, e a pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação à esquerda.
[0051] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do quarto aspecto ou o quarto aspecto como tal, em que o conjunto de amostras de luma vizinhas reconstruídas (subamostradas) exclui amostras de luma que estão acima de uma amostra de luma vizinha superior esquerda fora do bloco de luma, e/ou amostras de luma que estão à esquerda da amostra de luma vizinha superior esquerda fora do bloco de luma.
[0052] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do quarto aspecto ou o quarto aspecto como tal, em que uma coordenada da amostra de luma superior esquerda do bloco de luma é (x0, y0), e em que o conjunto de amostras de luma vizinhas reconstruídas (subamostradas) exclui amostras de luma que têm uma coordenada x menor que x0 e uma coordenada y menor que y0.
[0053] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do quarto aspecto ou o quarto aspecto como tal, em que o conjunto de amostras de luma vizinhas reconstruídas subamostradas compreende um primeiro conjunto de amostras de luma vizinhas reconstruídas subamostradas e um segundo conjunto de amostras de luma vizinhas reconstruídas subamostradas, e em que o primeiro conjunto de amostras de luma vizinhas reconstruídas subamostradas compreende amostras de luma vizinhas reconstruídas subamostradas com o valor de luma sendo menor que ou igual a um limiar; e o segundo conjunto de amostras de luma vizinhas reconstruídas subamostradas compreende amostras de luma vizinhas reconstruídas subamostradas com o valor de luma sendo maior que o limiar.
[0054] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do quarto aspecto ou o quarto aspecto como tal, em que para decodificar por predição de LM o bloco de croma com base no bloco preditivo, o decodificador de vídeo é configurado para adicionar o bloco preditivo a um bloco residual para reconstruir o bloco de croma.
[0055] Em uma possível forma de implantação do método de acordo com qualquer implantação antecedente do quarto aspecto ou o quarto aspecto como tal, em que o decodificador de vídeo é configurado para: decodificar um sinalizador para um bloco atual que inclui o bloco de luma e o bloco de croma, em que o sinalizador indica que a codificação por predição de LM é habilitada para o bloco de croma, e em que decodificar o sinalizador compreende decodificar o sinalizador com base em um contexto que compreende um ou mais sinalizadores que indicam se a codificação por predição de LM é habilitada para blocos vizinhos.
[0056] O método de acordo com o primeiro aspecto da invenção pode ser realizado pelo aparelho de acordo com o terceiro aspecto da invenção. Os recursos e formas de implantação adicionais do aparelho, de acordo com o terceiro aspecto da invenção, correspondem aos recursos e formas de implantação do método, de acordo com o primeiro aspecto da invenção.
[0057] O método de acordo com o segundo aspecto da invenção pode ser realizado pelo aparelho de acordo com o quarto aspecto da invenção. Os recursos e formas de implantação adicionais do aparelho, de acordo com o quarto aspecto da invenção, correspondem aos recursos e formas de implantação do método, de acordo com o segundo aspecto da invenção.
[0058] De acordo com um quinto aspecto, a invenção se refere a um método de codificação de dados de vídeo, o método compreende: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras de luma vizinhas reconstruídas subamostradas, em que o conjunto de amostras de luma vizinhas reconstruídas subamostradas compreende uma pluralidade de amostras de luma reconstruídas subamostradas que estão acima do bloco de luma, e/ou uma pluralidade de amostras de luma reconstruídas subamostradas que estão à esquerda do bloco de luma; determinar dois pares de valor de luma e valor de croma de acordo com N amostras de luma reconstruídas subamostradas com o valor máximo e N amostras de croma reconstruídas que correspondem às N amostras de luma reconstruídas subamostradas com os valores de luma máximos, e/ou M amostras de luma reconstruídas subamostradas com o valor mínimo e M amostras de croma reconstruídas que correspondem às M amostras de luma subamostradas com o valor de luma mínimo, quando as N amostras de luma reconstruídas subamostradas com o valor de luma máximo e/ou as M amostras de luma reconstruídas subamostradas com o valor de luma mínimo estiverem compreendidas no conjunto de amostras de luma vizinhas reconstruídas subamostradas, em que M, N são um número inteiro positivo e maiores que 1; determinar um ou mais parâmetros de modelo linear com base nos dois pares determinados de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e codificar por predição de modelo linear (LM) o bloco de croma com base no bloco preditivo.
[0059] De acordo com um sexto aspecto, a invenção se refere a um método de codificação de dados de vídeo, o método compreende: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras de luma vizinhas reconstruídas (subamostradas), em que o conjunto de amostras de luma vizinhas reconstruídas (subamostradas) compreende uma pluralidade de amostras de luma reconstruídas (subamostradas) que estão acima do bloco de luma, e/ou uma pluralidade de amostras de luma reconstruídas (subamostradas) que estão à esquerda do bloco de luma; determinar dois pares de valor de luma e valor de croma de acordo com N amostras de luma reconstruídas (subamostradas) e N amostras de croma reconstruídas que correspondem às N amostras de luma reconstruídas (subamostradas), e/ou M amostras de luma reconstruídas (subamostradas) e M amostras de croma reconstruídas que correspondem às M amostras de luma (subamostradas), em que o valor mínimo das N amostras de luma reconstruídas (subamostradas) não é menor que o valor de luma das amostras de luma reconstruídas (subamostradas) remanescentes do conjunto de amostras de luma vizinhas reconstruídas (subamostradas), e o valor máximo das M amostras de luma reconstruídas (subamostradas) não é maior que o valor de luma das amostras de luma reconstruídas (subamostradas) remanescentes do conjunto de amostras de luma vizinhas reconstruídas subamostradas, e M, N são um número inteiro positivo e maiores que 1; em outras palavras, o valor de luma de qualquer uma dentre as N amostras de luma reconstruídas subamostradas é maior que valor de luma de qualquer uma dentre as M amostras de luma reconstruídas subamostradas e a soma de N e M é igual a ou menor que o número do conjunto de amostras de luma vizinhas reconstruídas subamostradas. determinar um ou mais parâmetros de modelo linear com base nos dois pares determinados de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e codificar por predição de modelo linear (LM) o bloco de croma com base no bloco preditivo.
[0060] De acordo com um sétimo aspecto, a invenção se refere a um dispositivo para codificar dados de vídeo, o dispositivo compreende: uma memória de dados de vídeo; e um codificador de vídeo, em que o codificador de vídeo é configurado para: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras de luma vizinhas reconstruídas subamostradas, em que o conjunto de amostras de luma vizinhas reconstruídas subamostradas compreende uma pluralidade de amostras de luma reconstruídas subamostradas que estão acima do bloco de luma, e/ou uma pluralidade de amostras de luma reconstruídas subamostradas que estão à esquerda do bloco de luma; determinar dois pares de valor de luma e valor de croma de acordo com N amostras de luma reconstruídas subamostradas com o valor máximo e N amostras de croma reconstruídas que correspondem às N amostras de luma reconstruídas subamostradas com os valores máximos, e/ou M amostras de luma reconstruídas subamostradas com o valor mínimo e M amostras de croma reconstruídas que correspondem às M amostras de luma subamostradas com o valor mínimo, quando as N amostras de luma reconstruídas subamostradas com o valor máximo e/ou as M amostras de luma reconstruídas subamostradas com o valor mínimo estiverem compreendidas no conjunto de amostras de luma vizinhas reconstruídas subamostradas, em que M, N são um número inteiro positivo e maiores que 1; determinar um ou mais parâmetros de modelo linear com base nos dois pares determinados de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e codificar por predição de modelo linear (LM) o bloco de croma com base no bloco preditivo.
[0061] De acordo com um oitavo aspecto, a invenção se refere a um dispositivo para codificar dados de vídeo, o dispositivo compreende: uma memória de dados de vídeo; e um codificador de vídeo, em que o codificador de vídeo é configurado para: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras de luma vizinhas reconstruídas (subamostradas), em que o conjunto de amostras de luma vizinhas reconstruídas (subamostradas) compreende uma pluralidade de amostras de luma reconstruídas (subamostradas) que estão acima do bloco de luma, e/ou uma pluralidade de amostras de luma reconstruídas (subamostradas) que estão à esquerda do bloco de luma; determinar dois pares de valor de luma e valor de croma de acordo com N amostras de luma reconstruídas (subamostradas) e N amostras de croma reconstruídas que correspondem às N amostras de luma reconstruídas (subamostradas) e/ou M amostras de luma reconstruídas (subamostradas) e M amostras de croma reconstruídas que correspondem às M amostras de luma (subamostradas), em que o valor mínimo das N amostras de luma reconstruídas (subamostradas) não é menor que o valor de luma das amostras de luma reconstruídas (subamostradas) remanescentes do conjunto de amostras de luma vizinhas reconstruídas (subamostradas), e o valor máximo das M amostras de luma reconstruídas (subamostradas) não é maior que o valor de luma das amostras de luma reconstruídas (subamostradas) remanescentes do conjunto de amostras de luma vizinhas reconstruídas subamostradas, e M, N são um número inteiro positivo e maiores que 1; determinar um ou mais parâmetros de modelo linear com base nos dois pares determinados de valor de luma e valor de croma;
determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e codificar por predição de modelo linear (LM) o bloco de croma com base no bloco preditivo.
[0062] O aparelho de codificação de acordo com qualquer aspecto antecedente pode ser estendido, de modo adicional, pelos recursos do método de codificação de acordo com o aspecto antecedente correspondente ou as implantações do mesmo para derivar, de modo adicional, implantações do aparelho de codificação de acordo com qualquer aspecto antecedente.
[0063] O método de codificação de acordo com qualquer aspecto antecedente pode ser estendido, de modo adicional, pelos recursos do método de decodificação de acordo com o aspecto antecedente correspondente ou as implantações do mesmo para derivar, de modo adicional, implantações do método de codificação de acordo com qualquer aspecto antecedente.
[0064] Uma mídia legível por computador que armazena instruções que, quando executadas em um processador, fazem com que o processador realize qualquer método acima de acordo com qualquer implantação antecedente de qualquer aspecto antecedente ou qualquer aspecto antecedente como tal.
[0065] Um aparelho de decodificação é fornecido, que compreende módulos/unidades/componentes/circuitos para realizar pelo menos uma parte das etapas do método acima de acordo com qualquer implantação antecedente de qualquer aspecto antecedente ou qualquer aspecto antecedente como tal.
[0066] Um aparelho de decodificação é fornecido, que compreende uma memória que armazena instruções; e um processador acoplado à memória, o processador configurado para executar as instruções armazenadas na memória para fazer com que o processador realize o método acima de acordo com qualquer implantação antecedente de qualquer aspecto antecedente ou qualquer aspecto antecedente como tal.
[0067] Uma mídia de armazenamento legível por computador é fornecida, que tem um programa gravado na mesma; em que o programa faz com que o computador execute método de acordo com qualquer implantação antecedente de qualquer aspecto antecedente ou qualquer aspecto antecedente como tal.
[0068] Um programa de computador é fornecido, que é configurado para fazer com que um computador execute método de acordo com qualquer implantação antecedente de qualquer aspecto antecedente ou qualquer aspecto antecedente como tal.
[0069] Para fins de clareza, qualquer uma dentre as modalidades antecedentes pode ser combinada com qualquer uma ou mais dentre as outras modalidades antecedentes, para criar uma nova modalidade dentro do escopo da presente revelação.
[0070] Esses e outros recursos serão mais claramente entendidos a partir da descrição detalhada a seguir obtida em conjunto com os desenhos anexos e reivindicações.
BREVE DESCRIÇÃO DOS DESENHOS
[0071] O conteúdo a seguir é uma breve descrição de desenhos anexos usados para descrever as modalidades do presente pedido
[0072] A Figura 1A é um diagrama de blocos de um sistema de codificação de dados de vídeo em que modalidades da presente revelação podem ser implantadas.
[0073] A Figura 1B é um diagrama de blocos de outro sistema de codificação de dados de vídeo em que modalidades da presente revelação podem ser implantadas.
[0074] A Figura 2 é um diagrama de blocos de um codificador de dados de vídeo em que modalidades da presente revelação podem ser implantadas.
[0075] A Figura 3 é um diagrama de blocos de um decodificador de dados de vídeo em que modalidades da presente revelação podem ser implantadas.
[0076] A Figura 4 é um diagrama esquemático de um dispositivo de codificação de vídeo de acordo com uma modalidade da presente revelação.
[0077] A Figura 5 é um diagrama de blocos simplificado de um aparelho de codificação de dados de vídeo em que várias modalidades da presente revelação podem ser implantadas.
[0078] A Figura 6 é uma ilustração de modos de predição intra de H.265/HEVC.
[0079] A Figura 7 é uma ilustração de amostras de referência.
[0080] A Figura 8 é um diagrama conceitual que ilustra localizações relativas vertical e horizontal nominais de amostras de luma e croma.
[0081] A Figura 9, que inclui a Figura 9A e a Figura 9B, é um diagrama esquemático que ilustra um mecanismo exemplificativo de realização de predição intra de modelo linear de componente cruzado (CCLM). A Figura 9A ilustra um exemplo de pixels reconstruídos vizinhos de um bloco de luma colocalizado. A Figura 9B ilustra um exemplo de pixels reconstruídos vizinhos de um bloco de croma.
[0082] A Figura 10 é um diagrama conceitual que ilustra um exemplo de posições luma e posições croma para subamostrar amostras de um bloco de luma para gerar um bloco preditivo.
[0083] A Figura 11 é um diagrama conceitual que ilustra outro exemplo de posições luma e posições croma para subamostrar amostras de um bloco de luma para gerar um bloco preditivo.
[0084] As Figuras 12 a 15 são diagramas esquemáticos que ilustram mecanismos exemplificativos de subamostragem para suportar predição intra de componente cruzado.
[0085] A Figura 16 é uma ilustração da linha reta entre valores de luma mínimo e máximo.
[0086] A Figura 17 é uma ilustração de modo de predição intra_A de componente cruzado (CCIP_A).
[0087] A Figura 18 é uma ilustração de modo de predição intra_L de componente cruzado (CCIP_L).
[0088] A Figura 19 é um gráfico que ilustra um mecanismo exemplificativo de determinação de parâmetros de modelo linear para suportar predição intra de CCLM de múltiplos modelos (MMLM).
[0089] A Figura 20 é um diagrama esquemático que ilustra mecanismos exemplificativos com o uso de amostras superior e à esquerda vizinhas para suportar predição intra de componente cruzado.
[0090] A Figura 21 é um diagrama esquemático que ilustra mecanismos exemplificativos com o uso de amostras estendidas para suportar predição intra de componente cruzado.
[0091] A Figura 22 é um fluxograma de um método de uma predição de modelo linear de componente cruzado (CCLM) de acordo com algumas modalidades da presente revelação.
[0092] A Figura 23 é um fluxograma de um método de decodificação de dados de vídeo com o uso de uma predição de modelo linear de componente cruzado (CCLM) de acordo com uma modalidade da presente revelação.
[0093] A Figura 24 é um fluxograma de um método de codificação de dados de vídeo com o uso de uma predição de modelo linear de componente cruzado (CCLM) de acordo com uma modalidade da presente revelação.
[0094] A Figura 25 é um fluxograma de um método de decodificação de dados de vídeo com o uso de uma predição de modelo linear de componente cruzado (CCLM), de acordo com outra modalidade da presente revelação.
[0095] A Figura 26 é um fluxograma exemplificativo de um método de codificação de dados de vídeo com o uso de uma predição de modelo linear de componente cruzado (CCLM) de acordo com outra modalidade da presente revelação.
[0096] Nas várias figuras, referências numéricas idênticas serão usadas para recursos idênticos ou funcionalmente equivalentes.
DESCRIÇÃO DETALHADA
[0097] Deve-se entender inicialmente que, embora uma implantação ilustrativa de uma ou mais modalidades seja fornecida abaixo, os sistemas e/ou métodos revelados podem ser implantados com o uso de qualquer número de técnicas, seja atualmente conhecidas ou em existência. A revelação não deve, de modo algum, ser limitada às implantações ilustrativas, desenhos e técnicas ilustrados abaixo, incluindo os projetos e implantações exemplificativos ilustrados e descritos no presente documento, mas pode ser modificada dentro do escopo das reivindicações anexas em conjunto com seu escopo inteiro de equivalentes.
[0098] A Figura 1A é um diagrama de blocos de um sistema de codificação de dados de vídeo em que modalidades da presente revelação podem ser implantadas. Conforme mostrado na Figura 1A, o sistema de codificação 10 inclui um dispositivo de origem 12 que fornece dados de vídeo codificados, e um dispositivo de destino 14 que decodifica os dados de vídeo codificados fornecidos pelo dispositivo de origem 12. Em particular, o dispositivo de origem 12 pode fornecer os dados de vídeo para o dispositivo de destino 14 por meio de uma mídia de transporte 16. O dispositivo de origem 12 e o dispositivo de destino 14 podem ser qualquer um dentre uma faixa extensa de dispositivos eletrônicos, tais como computadores do tipo desktop, computadores do tipo notebook (isto é, computadores do tipo laptop), computadores do tipo tablet, conversores de sinal,
fones de telefone celular (isto é telefones “inteligentes”), televisores, câmeras, dispositivos de exibição, reprodutores de mídia digital, consoles de vídeo game, dispositivo de transmissão contínua de vídeo ou similares. Em alguns casos, o dispositivo de origem 12 e o dispositivo de destino 14 podem ser equipados para comunicação sem fio.
[0099] O dispositivo de destino 14 pode receber os dados de vídeo codificados por meio de uma mídia de transporte 16. A mídia de transporte 16 pode ser qualquer tipo de mídia ou dispositivo com a capacidade de transportar os dados de vídeo codificados do dispositivo de origem 12 para o dispositivo de destino 14. Em um exemplo, a mídia de transporte 16 pode ser uma mídia de comunicação que habilita o dispositivo de origem 12 a transmitir dados de vídeo codificados diretamente ao dispositivo de destino 14 em tempo real. Os dados de vídeo codificados podem ser modulados de acordo com um padrão de comunicação, tal como um protocolo de comunicação sem fio, e os dados de vídeo codificados modulados são transmitidos ao dispositivo de destino 14. A mídia de comunicação pode ser qualquer mídia de comunicação com ou sem fio, tal como uma onda de espectro de radiofrequência (RF) ou uma ou mais linhas de transmissão físicas. A mídia de comunicação pode fazer parte de uma rede com base em pacote, tal como uma rede de área local, uma rede de área ampla ou uma rede global, tal como a Internet. A mídia de comunicação pode incluir roteadores, comutadores, estações de base ou qualquer outro equipamento que possa ser útil para facilitar a comunicação a partir do dispositivo de origem 12 para o dispositivo de destino 14.
[0100] No dispositivo de origem 12, dados codificados podem ser emitidos de uma interface de saída 22 para um dispositivo de armazenamento (não mostrado na Figura 1A). De modo similar, dados codificados podem ser acessados a partir do dispositivo de armazenamento por uma interface de entrada 28 do dispositivo de destino 14. O dispositivo de armazenamento pode incluir qualquer um dentre uma variedade de mídias de armazenamento de dados distribuídas ou acessadas localmente, tais como unidades rígidas, discos Blu- rayTM, discos de vídeo digital (DVDs), Disco Compacto Memória Somente Leitura (CD-ROMs), memórias flash, memórias voláteis ou não voláteis ou quaisquer outras mídias de armazenamento digital adequadas para armazenar dados de vídeo codificados.
[0101] Em um exemplo adicional, o dispositivo de armazenamento pode corresponder a um servidor de arquivos ou outro dispositivo de armazenamento intermediário que pode armazenar o vídeo codificado gerado pelo dispositivo de origem 12. O dispositivo de destino 14 pode acessar dados de vídeo armazenados a partir do dispositivo de armazenamento através de transmissão contínua ou por download. O servidor de arquivos pode ser qualquer tipo de servidor com a capacidade de armazenar dados de vídeo codificados e transmitir esses dados de vídeo codificados ao dispositivo de destino 14. Os servidores de arquivos exemplificativos incluem um servidor da web (por exemplo, para um site da web), um servidor de protocolo de transferência de arquivos (FTP), dispositivos de armazenamento ligados à rede (NAS) ou uma unidade de disco local. O dispositivo de destino 14 pode acessar os dados de vídeo codificados através de qualquer conexão de dados padrão, incluindo uma conexão com a Internet. Isso pode incluir um canal sem fio (por exemplo, uma conexão Wi-Fi), uma conexão com fio (por exemplo, linha de assinante digital (DSL), modem a cabo, etc.), ou uma combinação de ambos que é adequada para acessar dados de vídeo codificados armazenados em um servidor de arquivos. A transmissão de dados de vídeo codificados a partir do dispositivo de armazenamento pode ser uma transmissão contínua, uma transmissão por download ou uma combinação das mesmas.
[0102] As técnicas desta revelação não são limitadas, necessariamente, a aplicações ou configurações sem fio. As técnicas podem ser aplicadas à codificação de vídeo com apoio de qualquer um dentre uma variedade de aplicações multimídia, tais como difusões por televisão pelo ar, transmissões por televisão a cabo, transmissões por televisão via satélite, transmissões de vídeo contínuas através da Internet, tais como transmissão contínua adaptativa dinâmica através de HTTP (DASH), vídeo digital que é codificado em uma mídia de armazenamento de dados, decodificação de vídeo digital armazenado em uma mídia de armazenamento de dados ou outras aplicações. Em alguns exemplos, o sistema de codificação 10 pode ser configurado para suportar transmissão de vídeo de uma direção ou duas direções para suportar aplicações, tais como transmissão contínua de vídeo, reprodução de vídeo, difusão de vídeo e/ou telefonia por vídeo.
[0103] No exemplo da Figura 1A, o dispositivo de origem 12 inclui uma fonte de vídeo 18, um codificador de vídeo 20 e uma interface de saída 22. O dispositivo de destino 14 inclui uma interface de entrada 28, um decodificador de vídeo 30 e um dispositivo de exibição 32. Em conformidade com esta revelação, o codificador de vídeo 20 do dispositivo de origem 12 e/ou o decodificador de vídeo 30 do dispositivo de destino 14 podem ser configurados para aplicar as técnicas para predição bidirecional. Em outros exemplos, o dispositivo de origem 12 e o dispositivo de destino 14 podem incluir outros componentes ou disposições. Por exemplo, o dispositivo de origem 12 pode receber dados de vídeo de uma fonte de vídeo externa, tal como uma câmera externa. Do mesmo modo, o dispositivo de destino 14 pode fazer interface com um dispositivo de exibição externo, em vez de incluir um dispositivo de exibição integrado.
[0104] O sistema de codificação ilustrado 10 da Figura 1A é apenas um exemplo. Os métodos para predição bidirecional podem ser realizados por qualquer dispositivo de codificação ou decodificação de vídeo digital. Embora as técnicas desta revelação sejam geralmente usadas por um dispositivo de codificação de vídeo, as técnicas também podem ser usadas por um codificador/decodificador de de vídeo, que é tipicamente denominado um “codec”. Além disso, as técnicas desta revelação também podem ser usadas por um pré- processador de vídeo. O codificador de vídeo e/ou o decodificador de vídeo pode ser uma unidade de processamento gráfico (GPU) ou um dispositivo similar.
[0105] O dispositivo de origem 12 e o dispositivo de destino 14 são apenas exemplos de dispositivos de codificação/decodificação em um sistema de codificação de dados de vídeo em que o dispositivo de origem 12 gera dados de vídeo codificados para transmissão para o dispositivo de destino 14. Em alguns exemplos, o dispositivo de origem 12 e o dispositivo de destino 14 podem operar de um modo substancialmente simétrico de modo que cada um dentre o dispositivo de origem 12 e o dispositivo de destino 14 inclua componentes de codificação e decodificação de vídeo. Portanto, o sistema de codificação 10 pode suportar transmissão de vídeo de uma direção ou duas direções entre dispositivos de vídeo 12 e 14, por exemplo, para transmissão contínua de vídeo, reprodução de vídeo, difusão de vídeo ou telefonia por vídeo.
[0106] A fonte de vídeo 18 do dispositivo de origem 12 pode incluir um dispositivo de captura de vídeo, tal como uma câmera de vídeo, um arquivo de vídeo contendo vídeos previamente capturados e/ou uma interface de alimentação de vídeo para receber um vídeo de um provedor de conteúdo de vídeo. Conforme uma alternativa adicional, a fonte de vídeo 18 pode gerar dados com base em computação gráfica como o vídeo de origem, ou uma combinação de vídeo ao vivo, vídeo arquivado e vídeo gerado por computador.
[0107] Em alguns casos, quando a fonte de vídeo 18 for uma câmera de vídeo, o dispositivo de origem 12 e o dispositivo de destino 14 podem formar telefones com câmera ou telefones com vídeo. Conforme mencionado acima, entretanto, as técnicas descritas nesta revelação podem ser aplicáveis à codificação de vídeo em geral, e podem ser aplicadas a aplicações com e/ou sem fio. Em cada caso, o vídeo capturado, pré-capturado ou gerado por computador pode ser codificado pelo codificador de vídeo 20. As informações de vídeo codificado podem ser, então, emitidas pela interface de saída 22 para a mídia de transporte 16.
[0108] A mídia de transporte 16 pode incluir mídias transientes, tais como uma difusão sem fio ou transmissão de rede com fio, ou mídias de armazenamento (ou seja, mídias de armazenamento não transitórias), tais como um disco rígido, unidade flash, disco compacto, disco de vídeo digital, disco Blu- rayTM ou outras mídias legíveis por computador. Em alguns exemplos, um servidor de rede (não mostrado) pode receber dados de vídeo codificados do dispositivo de origem 12 e fornecer os dados de vídeo codificados ao dispositivo de destino 14, por exemplo, por meio de transmissão por rede. De modo similar, um dispositivo de computação de uma instalação de produção de mídia, tal como uma instalação de estampagem de disco, pode receber dados de vídeo codificados do dispositivo de origem 12 e produzir um disco contendo os dados de vídeo codificados. Portanto, a mídia de transporte 16 pode ser entendida como incluindo uma ou mais mídias legíveis por computador de várias formas, em vários exemplos.
[0109] A interface de entrada 28 do dispositivo de destino 14 recebe informações da mídia de transporte 16. As informações da mídia de transporte 16 podem incluir informações de sintaxe definidas pelo codificador de vídeo 20, que também são usadas pelo decodificador de vídeo 30, que incluem elementos de sintaxe que descrevem características e/ou processamento de blocos e outras unidades codificadas, por exemplo, grupo de imagens (GOPs). O dispositivo de exibição 32 exibe os dados de vídeo decodificados a um usuário, e pode incluir qualquer um dentre uma variedade de dispositivos de exibição, tais como um tubo de raios catódicos (CRT), um visor de cristal líquido (LCD), um visor de plasma, um visor de diodo orgânico emissor de luz (OLED) ou outros tipos de dispositivos de exibição.
[0110] O codificador de vídeo 20 e o decodificador de vídeo 30 podem operar de acordo com um padrão de codificação de vídeo, tal como o padrão de Codificação de Vídeo de Alta Eficiência (HEVC) atualmente em desenvolvimento, e podem estar em conformidade com um Modelo de Teste HEVC (HM). Alternativamente, o codificador de vídeo 20 e o decodificador de vídeo 30 podem operar de acordo com outros padrões proprietários ou industriais, tais como o padrão de Setor de Padronização de Telecomunicação de União Internacional de Telecomunicações (ITU-T) H.264, denominado, de modo alternativo, Grupo de Especialistas em Imagem em Movimento (MPEG)-4, Parte 10, Codificação de Vídeo Avançada (AVC), H.265/HEVC, ou extensões de tais padrões. As técnicas fornecidas por esta revelação, entretanto, não são limitadas a qualquer padrão de codificação particular. Outros exemplos de padrões de codificação de vídeo incluem MPEG-2 e ITU-T H.263. Embora não mostrado na Figura 1A, em alguns aspectos, o codificador de vídeo 20 e o decodificador de vídeo 30 podem ser, cada um, integrados a um codificador e decodificador de áudio, e podem incluir unidades de multiplexador-demultiplexador (MUX-DEMUX) apropriadas ou outro hardware e software, para operar codificação de áudio e vídeo em um fluxo de dados comum ou fluxos de dados separados. Se aplicáveis, as unidades MUX- DEMUX podem estar em conformidade com o protocolo de multiplexador ITU H.223 ou outros protocolos, tais como o protocolo de datagrama de usuário (UDP).
[0111] O codificador de vídeo 20 e o decodificador de vídeo 30 podem ser, cada um, implantados como qualquer um dentre uma variedade de conjunto de circuitos de codificador adequado, tal como um ou mais microprocessadores, processadores de sinal digital (DSPs), circuitos integrados de aplicação específica (ASICs), arranjos de porta programáveis em campo (FPGAs), lógica discreta, software, hardware, firmware ou quaisquer combinações dos mesmos. Quando as técnicas são implantadas parcialmente em software, um dispositivo pode armazenar instruções para o software em uma mídia legível por computador não transitória adequada e executar as instruções em hardware com o uso de um ou mais processadores para realizar as técnicas desta revelação. Cada um dentre o codificador de vídeo 20 e o decodificador de vídeo 30 pode ser incluído em um ou mais codificadores ou decodificadores, em que qualquer um dos mesmos pode ser integrado como parte de um codificador/decodificador combinado (CODEC) em um respectivo dispositivo. Um dispositivo que inclui o codificador de vídeo 20 e/ou o decodificador de vídeo 30 pode ser um circuito integrado, um microprocessador e/ou um dispositivo de comunicação sem fio, tal como um telefone celular.
[0112] A Figura 1B é um diagrama de blocos de um sistema de codificação de vídeo exemplificativo 40, que inclui o codificador de vídeo 20 e/ou o decodificador 30. Conforme mostrado na Figura 1B, o sistema de codificação de vídeo 40 pode incluir um ou mais dispositivo(s) de imagem 41, o codificador de vídeo 20, o decodificador de vídeo 30, uma antena 42, um ou mais processador(es) 43, um ou mais armazenamento(s) em memória 44, e pode incluir adicionalmente um dispositivo de exibição 45.
[0113] Conforme ilustrado, o dispositivo(s) de imagem 41, a antena 42, o conjunto de circuitos de processamento 46, o codificador de vídeo 20, o decodificador de vídeo 30, o processador(es) 43, o armazenamento(s) em memória 44 e o dispositivo de exibição 45 podem se comunicar um com o outro. Embora ilustrado com o codificador de vídeo 20 e o decodificador de vídeo 30, o sistema de codificação de vídeo 40 pode incluir apenas o codificador de vídeo 20 ou apenas o decodificador de vídeo 30 em vários exemplos.
[0114] Em alguns exemplos, a antena 42 do sistema de codificação de vídeo 40 pode ser configurada para transmitir ou receber um fluxo de bits codificado de dados de vídeo. Além disso, em alguns exemplos, o dispositivo de exibição 45 do sistema de codificação de vídeo 40 pode ser configurado para apresentar dados de vídeo. Em alguns exemplos, o conjunto de circuitos de processamento 46 do sistema de codificação de vídeo 40 pode ser implantado por meio de unidade(s) de processamento. A unidade(s) de processamento pode incluir lógica de circuito integrado de aplicação específica (ASIC), processador(es) gráfico, processador(es) de propósito geral ou similares. O sistema de codificação de vídeo 40 também pode incluir processador(es) opcional 43, que pode incluir, de modo similar, lógica de circuito integrado de aplicação específica (ASIC), processador(es) gráfico, processador(es) de propósito geral ou similares. Em alguns exemplos, o conjunto de circuitos de processamento 46 pode ser implantado por meio de hardware, hardware dedicado de codificação de vídeo ou similares. Além disso, o armazenamento(s) em memória 44 pode ser qualquer tipo de memória, tal como memória volátil (por exemplo, Memória de Acesso Aleatório Estática (SRAM), Memória de Acesso Aleatório Dinâmica (DRAM), etc.) ou memória não volátil (por exemplo, memória flash, etc.) e assim por diante. Em um exemplo, o armazenamento(s) em memória 44 pode ser implantado por memória cache. Em alguns exemplos, o conjunto de circuitos de processamento 46 pode acessar armazenamento(s) em memória 44 (para implantação de um buffer de imagem, por exemplo). Em outros exemplos, o conjunto de circuitos de processamento 46 pode incluir armazenamentos em memória (por exemplo, cache ou similares) para a implantação de um buffer de imagem ou similares.
[0115] Em alguns exemplos, o codificador de vídeo 20 implantado por meio de conjunto de circuitos de processamento pode incorporar os vários módulos, conforme discutido em relação à Figura 2 e/ou qualquer outro sistema ou subsistema de codificador descrito no presente documento. O conjunto de circuitos de processamento pode ser configurado para realizar as várias operações, conforme discutido no presente documento.
[0116] O decodificador de vídeo 30 pode ser implantado de um modo similar ao implantado por meio do conjunto de circuitos de processamento 46 para incorporar os vários módulos, conforme discutido em relação ao decodificador 30 da Figura 3 e/ou qualquer outro sistema ou subsistema de decodificador descrito no presente documento.
[0117] Em alguns exemplos, a antena 42 do sistema de codificação de vídeo 40 pode ser configurada para receber um fluxo de bits codificado de dados de vídeo. O fluxo de bits codificado pode incluir dados, indicadores ou similares associados à codificação de um quadro de vídeo. O sistema de codificação de vídeo 40 também pode incluir decodificador de vídeo 30 acoplado à antena 42 e configurado para decodificar o fluxo de bits codificado. O dispositivo de exibição 45 é configurado para apresentar quadros de vídeo.
[0118] A Figura 2 é um diagrama de blocos que ilustra um exemplo de codificador de vídeo 20 que pode implantar as técnicas do presente pedido. O codificador de vídeo 20 pode realizar codificação intra e inter de blocos de vídeo dentro de fatias de vídeo. Codificação intra depende de predição espacial para reduzir ou remover redundância espacial em vídeo dentro de um determinado quadro de vídeo ou imagem. Codificação inter depende de predição temporal para reduzir ou remover redundância temporal em vídeo dentro de quadros ou imagens adjacentes de uma sequência de vídeo. Modo intra (modo I) pode se referir a qualquer um dentre diversos modos de codificação com base espacial. Modos inter, tais como predição unidirecional (modo P) ou bipredição (modo B), podem se referir a qualquer um dentre diversos modos de codificação com base temporal.
[0119] Conforme mostrado na Figura 2, o codificador de vídeo 20 recebe um bloco de vídeo atual dentro de um quadro de vídeo a ser codificado. No exemplo da Figura 2, o codificador de vídeo 20 inclui a unidade de seleção de modo 40, a memória de quadro de referência 64, adicionador 50, a unidade de processamento de transformada 52, a unidade de quantização 54 e a unidade de codificação de entropia 56. A unidade de seleção de modo 40, por sua vez, inclui a unidade de compensação de movimento 44, a unidade de estimativa de movimento 42, a unidade de predição intra 46 e a unidade de partição 48. Para reconstrução de bloco de vídeo, o codificador de vídeo 20 também inclui a unidade de quantização inversa 58, a unidade de transformada inversa 60 e adicionador
62. Um filtro de desbloqueio (não mostrado na Figura 2) também pode ser incluído para filtrar delimitações de bloco para remover artefatos de bloqueio de vídeo reconstruído. Se desejado, o filtro de desbloqueio tipicamente filtrará a saída do adicionador 62. Filtros adicionais (em laço ou pós laço) também podem ser usados além do filtro de desbloqueio. Tais filtros não são mostrados por questão de concisão, mas se desejado, podem filtrar a saída do adicionador 50 (como um filtro in loop).
[0120] Durante o processo de codificação, o codificador de vídeo 20 recebe um quadro ou fatia de vídeo a ser codificado. O quadro ou fatia pode ser dividido em múltiplos blocos de vídeo. A unidade de estimativa de movimento 42 e a unidade de compensação de movimento 44 realizam codificação preditiva inter do bloco de vídeo recebido em relação a um ou mais blocos em um ou mais quadros de referência para fornecer predição temporal. A unidade de predição intra 46 pode realizar, de modo alternativo, codificação preditiva intra do bloco de vídeo recebido em relação a um ou mais blocos vizinhos no mesmo quadro ou fatia que o bloco a ser codificado para fornecer predição espacial. O codificador de vídeo 20 pode realizar múltiplas passas de codificação, por exemplo, para selecionar um modo de codificação apropriado para cada bloco de dados de vídeo.
[0121] Além disso, a unidade de partição 48 pode particionar blocos de dados de vídeo em sub-blocos, com base em avaliação de esquemas de particionamento anteriores em passas de codificação anteriores. Por exemplo, a unidade de partição 48 pode particionar inicialmente um quadro ou fatia em unidades de codificação maiores (LCUs), e particionar cada uma dentre as LCUs em unidades de subcodificação (sub-CUs) com base em análise de distorção de taxa (por exemplo, otimização de distorção de taxa). A unidade de seleção de modo 40 pode produzir adicionalmente uma estrutura de dados de quadtree indicativa de particionamento de uma LCU em sub-CUs. CUs de nó-folha da quadtree podem incluir uma ou mais unidades de predição (PUs) e uma ou mais unidades de transformada (TUs).
[0122] Na presente revelação, o termo “bloco” é usado para se referir a qualquer uma dentre uma unidade de codificação (CU), uma unidade de predição (PU) ou uma unidade de transformada (TU), no contexto de HEVC, ou estruturas de dados similares no contexto de outros padrões (por exemplo, macroblocos e sub-blocos das mesmas em H.264/AVC). Uma CU inclui um nó de codificação, PUs e TUs associadas ao nó de codificação. Um tamanho da CU corresponde a um tamanho do nó de codificação e tem formato retangular. O tamanho da CU pode variar de 8×8 pixels até o tamanho do bloco de árvore com um máximo de 64×64 pixels ou maior. Cada CU pode conter uma ou mais PUs e uma ou mais TUs. Os dados de sintaxe associados a uma CU podem descrever, por exemplo, particionamento da CU em uma ou mais PUs. Os modos de particionamento podem diferir dependendo de a CU ser ignorada ou codificada por modo direto, codificada por modo de predição intra ou codificada por modo de predição inter. As PUs podem ser particionadas para ter formato não quadrangular. Os dados de sintaxe associados a uma CU também podem descrever, por exemplo, particionamento da CU em uma ou mais TUs de acordo com um quadtree. Em uma modalidade, uma CU, PU ou TU pode ter formato quadrangular ou não quadrangular (por exemplo, retangular).
[0123] A unidade de seleção de modo 40 pode selecionar um dentre os modos de codificação, intra ou inter, por exemplo, com base em resultados de erro, e fornece o bloco codificado intra ou inter resultante a um adicionador 50 para gerar dados de bloco residuais e a um adicionador 62 para reconstruir o bloco codificado para uso como um quadro de referência. A unidade de seleção de modo 40 também fornece elementos de sintaxe, tais como vetores de movimento, indicadores de modo intra, informações de partição e outras tais informações de sintaxe, para a unidade de codificação de entropia 56.
[0124] A unidade de estimativa de movimento 42 e a unidade de compensação de movimento 44 podem ser altamente integradas, mas são ilustradas de forma separada para fins conceituais. A estimativa de movimento, realizada pela unidade de estimativa de movimento 42, é o processo de geração de vetores de movimento, que estimam movimento para blocos de vídeo. Um vetor de movimento, por exemplo, pode indicar o deslocamento de uma PU de um bloco de vídeo dentro de um quadro de vídeo atual (ou uma imagem) em relação a um bloco preditivo dentro de um quadro de referência (ou outra unidade codificada), ou pode indicar o deslocamento de uma PU de um bloco de vídeo dentro de um quadro de vídeo atual (ou uma imagem) em relação a um bloco codificado dentro do quadro atual (ou outra unidade codificada). Um bloco preditivo é um bloco que é considerado ser bastante compatível com o bloco a ser codificado, em termos de diferença de pixel, que pode ser determinado por soma absoluta de de diferenças (SAD), soma de diferenças quadráticas (SSD), ou outras métricas de diferença. Em alguns exemplos, o codificador de vídeo 20 pode calcular valores para posições de pixel de número subinteiro de imagens de referência armazenadas na memória de quadro de referência 64. Por exemplo, o codificador de vídeo 20 pode interpolar valores de posições de pixel de um quarto, posições de pixel de um oitavo ou outras posições de pixel fracionadas da imagem de referência. Portanto, a unidade de estimativa de movimento 42 pode realizar uma busca de movimento em relação às posições de pixel inteiras e posições de pixel fracionadas e emitir um vetor de movimento com precisão de pixel fracionada.
[0125] A unidade de estimativa de movimento 42 calcula um vetor de movimento para uma PU de um bloco de vídeo em uma fatia codificada inter comparando-se a posição da PU com a posição de um bloco preditivo de uma imagem de referência. A imagem de referência pode ser selecionada a partir de uma primeira lista de imagem de referência (por exemplo, Lista 0) ou uma segunda lista de imagem de referência (por exemplo, Lista 1), cada uma das quais identifica um ou mais imagens de referência armazenadas na memória de quadro de referência 64. A unidade de estimativa de movimento 42 envia o vetor de movimento calculado para a unidade de codificação de entropia 56 e a unidade de compensação de movimento 44.
[0126] A compensação de movimento, realizada pela unidade de compensação de movimento 44, pode envolver buscar ou gerar o bloco preditivo com base no vetor de movimento determinado pela unidade de estimativa de movimento 42. Novamente, a unidade de estimativa de movimento 42 e a unidade de compensação de movimento 44 podem ser funcionalmente integradas, em alguns exemplos. Mediante recepção do vetor de movimento para a PU do bloco de vídeo atual, a unidade de compensação de movimento 44 pode localizar o bloco preditivo para o qual o vetor de movimento aponta em uma dentre as listas de imagem de referência. O adicionador 50 forma um bloco de vídeo residual subtraindo-se valores de pixel do bloco preditivo dos valores de pixel do bloco de vídeo atual sendo codificado, formando valores de diferença de pixel, conforme discutido abaixo. Em geral, a unidade de estimativa de movimento 42 realiza estimativa de movimento em relação a componentes luma, e a unidade de compensação de movimento 44 usa vetores de movimento calculados com base nos componentes luma para componentes croma e componentes luma. A unidade de seleção de modo 40 também pode gerar elementos de sintaxe associados aos blocos de vídeo e à fatia de vídeo para uso pelo decodificador de vídeo 30 na decodificação dos blocos de vídeo da fatia de vídeo.
[0127] A unidade de predição intra 46 pode predizer intra um bloco atual, como uma alternativa à predição inter realizada pela unidade de estimativa de movimento 42 e pela unidade de compensação de movimento 44, conforme descrito acima. Em particular, a unidade de predição intra 46 pode determinar um modo de predição intra para uso para codificar um bloco atual. Em alguns exemplos, a unidade de predição intra 46 pode codificar um bloco atual com o uso de vários modos de predição intra, por exemplo, durante passas de codificação separadas, e a unidade de predição intra 46 (ou unidade de seleção de modo 40, em alguns exemplos) pode selecionar um modo de predição intra apropriado para usar a partir dos modos testados.
[0128] Por exemplo, a unidade de predição intra 46 pode calcular valores de distorção de taxa com o uso de uma análise de distorção de taxa para os vários modos de predição intra testados, e selecionar o modo de predição intra que tem as melhores características de distorção de taxa entre os modos testados.
A análise de distorção de taxa geralmente determina uma quantidade de distorção (ou erro) entre um bloco codificado e um bloco original não codificado que foi codificado para produzir o bloco codificado, bem como uma taxa de bit (ou seja, um número de bits) usada para produzir o bloco codificado. A unidade de predição intra 46 pode calcular razões das distorções e taxas para os vários blocos codificados para determinar qual modo de predição intra exibe o melhor valor distorção de taxa para o bloco.
[0129] Além disso, a unidade de predição intra 46 pode ser configurada para codificar blocos de profundidade de um mapa de profundidade com o uso de um modo de modelagem de profundidade (DMM). A unidade de seleção de modo 40 pode determinar se um modo de DMM disponível produz melhores resultados de codificação do que um modo de predição intra e os outros modos de DMM, por exemplo, com o uso de otimização de distorção de taxa (RDO). Os dados para uma imagem de textura que corresponde a um mapa de profundidade podem ser armazenados na memória de quadro de referência 64. A unidade de estimativa de movimento 42 e a unidade de compensação de movimento 44 também podem ser configuradas para predizer inter blocos de profundidade de um mapa de profundidade.
[0130] Após selecionar um modo de predição intra para um bloco (por exemplo, um modo de predição intra convencional ou um dentre os modos de DMM), a unidade de predição intra 46 pode fornecer informações indicativas do modo de predição intra selecionado para o bloco para a unidade de codificação de entropia 56. A unidade de codificação de entropia 56 pode codificar as informações que indicam o modo de predição intra selecionado. O codificador de vídeo 20 pode incluir nos dados de configuração de fluxo de bits transmitidos, que podem incluir uma pluralidade de tabelas de índice de modo de predição intra e uma pluralidade de tabelas de índice de modo de predição intra modificadas (também denominadas tabelas de mapeamento de palavra-código), definições de contextos de codificação para vários blocos, e indicações de um modo de predição intra mais provável, uma tabela de índice de modo de predição intra e uma tabela de índice de modo de predição intra modificada para uso para cada um dentre os contextos.
[0131] O codificador de vídeo 20 forma um bloco de vídeo residual subtraindo-se os dados de predição da unidade de seleção de modo 40 do bloco de vídeo original sendo codificado. O adicionador 50 representa o componente ou componentes que realizam essa operação de subtração.
[0132] A unidade de processamento de transformada 52 aplica uma transformada, tal como uma transformada discreta de cosseno (DCT) ou uma transformada conceitualmente similar, ao bloco residual, produzindo um bloco de vídeo que compreende valores de coeficiente de transformada residuais. A unidade de processamento de transformada 52 pode realizar outras transformadas que são conceitualmente similares à DCT. As transformadas de wavelet, transformadas de número inteiro, transformadas de sub-banda ou outros tipos de transformadas também podem ser usados.
[0133] A unidade de processamento de transformada 52 aplica a transformada ao bloco residual, produzindo um bloco de coeficientes de transformada residuais. A transformada pode converter as informações residuais de um domínio de valor de pixel para um domínio de transformada, tal como um domínio de frequência. A unidade de processamento de transformada 52 pode enviar os coeficientes de transformada resultantes para a unidade de quantização
54. A unidade de quantização 54 quantiza os coeficientes de transformada para reduzir ainda mais a taxa de bit. O processo de quantização pode reduzir a profundidade de bit associada a alguns ou todos os coeficientes. O grau de quantização pode ser modificado ajustando-se um parâmetro de quantização. Em alguns exemplos, a unidade de quantização 54 pode, então, realizar uma varredura da matriz incluindo os coeficientes de transformada quantizados. Alternativamente, a unidade de codificação de entropia 56 pode realizar a varredura.
[0134] Após a quantização, a unidade de codificação de entropia 56 codifica por entropia os coeficientes de transformada quantizados. Por exemplo, a unidade de codificação de entropia 56 pode realizar codificação de comprimento variável adaptativa ao contexto (CAVLC), codificação aritmética binária adaptativa ao contexto (CABAC), codificação aritmética binária com base em sintaxe adaptativa ao contexto (SBAC), codificação de entropia de particionamento de intervalo de probabilidade (PIPE) ou outra técnica de codificação de entropia. No caso de codificação de entropia com base em contexto, contexto pode se basear em blocos vizinhos. Após a codificação de entropia pela unidade de codificação de entropia 56, o fluxo de bits codificado pode ser transmitido para outro dispositivo
(por exemplo, decodificador de vídeo 30) ou arquivado para transmissão ou recuperação posterior.
[0135] A unidade de quantização inversa 58 e a unidade de transformada inversa 60 aplicam quantização inversa e transformação inversa, respectivamente, para reconstruir o bloco residual no domínio de pixel, por exemplo, para uso posterior como um bloco de referência. A unidade de compensação de movimento 44 pode calcular um bloco de referência adicionando-se o bloco residual em um bloco preditivo de um dentre os quadros de memória de quadro de referência 64. A unidade de compensação de movimento 44 também pode aplicar um ou mais filtros de interpolação ao bloco residual reconstruído para calcular valores de pixel de número subinteiro para uso em estimativa de movimento. O adicionador 62 adiciona o bloco residual reconstruído ao bloco de predição de movimento compensado produzido pela unidade de compensação de movimento 44 para produzir um bloco de vídeo reconstruído para armazenamento na memória de quadro de referência 64. O bloco de vídeo reconstruído pode ser usado pela unidade de estimativa de movimento 42 e pela unidade de compensação de movimento 44 como um bloco de referência para codificar inter um bloco em um quadro de vídeo subsequente.
[0136] Outras variações estruturais do codificador de vídeo 20 podem ser usadas para codificar o fluxo de vídeo. Por exemplo, um codificador com base em não transformada 20 pode quantizar o sinal residual diretamente sem a unidade de processamento de transformada 52 para determinados blocos ou quadros. Em outra implantação, um codificador 20 pode ter a unidade de quantização 54 e a unidade de quantização inversa 58 combinadas em uma única unidade.
[0137] A Figura 3 é um diagrama de blocos que ilustra um exemplo de decodificador de vídeo 30 que pode implantar as técnicas deste presente pedido. No exemplo da Figura 3, o decodificador de vídeo 30 inclui uma unidade de decodificação de entropia 70, unidade de compensação de movimento 72, unidade de predição intra 74, unidade de quantização inversa 76, unidade de transformação inversa 78, memória de quadro de referência 82 e adicionador 80. O decodificador de vídeo 30 pode realizar, em alguns exemplos, uma passa de decodificação geralmente recíproca à passa de codificação descrita em relação ao codificador de vídeo 20 (conforme mostrado na Figura 2). A unidade de compensação de movimento 72 pode gerar dados de predição com base em vetores de movimento recebidos da unidade de decodificação de entropia 70, enquanto a unidade de predição intra 74 pode gerar dados de predição com base em indicadores de modo de predição intra recebidos da unidade de decodificação de entropia 70.
[0138] Durante o processo de decodificação, o decodificador de vídeo 30 recebe um fluxo de bits de vídeo codificado que representa blocos de vídeo de uma fatia de vídeo codificado e elementos de sintaxe associados do codificador de vídeo 20. A unidade de decodificação de entropia 70 do decodificador de vídeo 30 decodifica por entropia o fluxo de bits para gerar coeficientes quantizados, vetores de movimento ou indicadores de modo de predição intra e outros elementos de sintaxe. A unidade de decodificação de entropia 70 encaminha os vetores de movimento e outros elementos de sintaxe para a unidade de compensação de movimento 72. O decodificador de vídeo 30 pode receber os elementos de sintaxe no nível de fatia de vídeo e/ou no nível de bloco de vídeo.
[0139] Quando a fatia de vídeo é codificada como uma fatia codificada intra (I), a unidade de predição intra 74 pode gerar dados de predição para um bloco de vídeo da fatia de vídeo atual com base em um modo de predição intra sinalizado e dados de blocos previamente decodificados do quadro ou imagem atual. Quando o quadro de vídeo é codificado como uma fatia codificada inter (isto é, B, P ou GPB), a unidade de compensação de movimento 72 produz blocos preditivos para um bloco de vídeo da fatia de vídeo atual com base nos vetores de movimento e outros elementos de sintaxe recebidos da unidade de decodificação de entropia 70. Os blocos preditivos podem ser produzidos a partir de uma dentre as imagens de referência dentro de uma dentre as listas de imagem de referência. O decodificador de vídeo 30 pode construir as listas de quadro de referência, por exemplo, Lista 0 e Lista 1, com o uso de técnicas de construção padrão com base em imagens de referência armazenadas na memória de quadro de referência 82.
[0140] A unidade de compensação de movimento 72 determina informações de predição para um bloco de vídeo da fatia de vídeo atual analisando-se os vetores de movimento e outros elementos de sintaxe, e usa as informações de predição para produzir os blocos preditivos para o bloco de vídeo atual sendo decodificado. Por exemplo, a unidade de compensação de movimento 72 usa alguns dos elementos de sintaxe recebidos para determinar um modo de predição (por exemplo, predição intra ou inter) usado para codificar os blocos de vídeo da fatia de vídeo, um tipo de fatia de predição inter (por exemplo, fatia B, fatia P ou fatia GPB), informações de construção para uma ou mais dentre as listas de imagem de referência para a fatia, vetores de movimento para cada bloco de vídeo inter codificado da fatia, status de predição inter para cada bloco de vídeo codificado inter da fatia, e outras informações para decodificar os blocos de vídeo na fatia de vídeo atual.
[0141] A unidade de compensação de movimento 72 também pode realizar interpolação com base em filtros de interpolação. A unidade de compensação de movimento 72 pode usar filtros de interpolação conforme usado pelo codificador de vídeo 20 durante codificação dos blocos de vídeo para calcular valores interpolados para pixels de número subinteiro de blocos de referência. Nesse caso, a unidade de compensação de movimento 72 pode determinar os filtros de interpolação usados pelo codificador de vídeo 20 a partir dos elementos de sintaxe recebidos e usar os filtros de interpolação para produzir blocos preditivos.
[0142] Os dados para uma imagem de textura que corresponde a um mapa de profundidade podem ser armazenados na memória de quadro de referência 82. A unidade de compensação de movimento 72 também pode ser configurada para predizer inter blocos de profundidade de um mapa de profundidade.
[0143] Conforme será verificado pelo técnico no assunto, o sistema de codificação 10 da Figura 1A é adequado para implantar várias técnicas de codificação ou compressão de vídeo. Algumas técnicas de compressão de vídeo, tais como predição inter, predição intra e/ou filtros loop, serão discutidas posteriormente. Portanto, as técnicas de compressão de vídeo têm sido adotadas em vários padrões de codificação de vídeo, tais como H.264/AVC e H.265/HEVC.
[0144] Várias ferramentas de codificação, tais como predição de vetor de movimento adaptativa (AMVP) e modo de combinação (MERGE) são usadas para predizer vetores de movimento (MVs) e aprimorar eficiência de predição inter e, portanto, a eficiência geral de compressão de vídeo.
[0145] Outras variações do decodificador de vídeo 30 podem ser usadas para decodificar o fluxo de bits comprimido. Por exemplo, o decodificador 30 pode produzir o fluxo de vídeo de saída sem a unidade de filtragem loop. Por exemplo, um decodificador com base em não transformada 30 pode quantizar de modo inverso o sinal residual diretamente sem a unidade de processamento de transformada inversa 78 para determinados blocos ou quadros. Em outra implantação, o decodificador de vídeo 30 pode ter a unidade de quantização inversa 76 e a unidade de processamento de transformada inversa 78 combinadas em uma única unidade.
[0146] A Figura 4 é um diagrama esquemático de um dispositivo de codificação de vídeo de acordo com uma modalidade da revelação. O dispositivo de codificação de vídeo 400 é adequado para implantar as modalidades reveladas, conforme descrito no presente documento. Em uma modalidade, o dispositivo de codificação de vídeo 400 pode ser um decodificador, tal como decodificador de vídeo 30, da Figura 1A, ou um codificador, tal como codificador de vídeo 20, da Figura 1A. Em uma modalidade, o dispositivo de codificação de vídeo 400 pode ser um ou mais componentes do decodificador de vídeo 30 da Figura 1A ou do codificador de vídeo 20 da Figura 1A, conforme descrito acima.
[0147] O dispositivo de codificação de vídeo 400 inclui portas de ingresso 410 e unidades receptoras (Rx) 420 para receber dados, um processador 430 (que pode ser uma unidade lógica ou uma unidade central de processamento (CPU)) para processar os dados, unidades transmissoras (Tx) 440 e portas de egresso 450 para transmitir os dados, e uma memória 460 para armazenar os dados. O dispositivo de codificação de vídeo 400 também pode incluir componentes ópticos para elétricos (OE) e componentes elétricos para ópticos (EO) acoplados às portas de ingresso 410, às unidades receptoras 420, às unidades transmissoras 440 e às portas de egresso 450 para egresso ou ingresso de sinais ópticos ou elétricos.
[0148] O processador 430 é implantado por hardware e/ou software. O processador 430 pode ser implantado como um ou mais chips de CPU, núcleos (por exemplo, como um processador de múltiplos núcleos), FPGAs, ASICs e DSPs. O processador 430 está em comunicação com as portas de ingresso 410, as unidades receptoras 420, as unidades transmissoras 440, as portas de egresso 450 e a memória 460. O processador 430 inclui um módulo de codificação 470. O módulo de codificação 470 implanta as modalidades reveladas descritas no presente documento. Por exemplo, o módulo de codificação 470 implanta, processa, prepara ou fornece as várias operações de codificação. A inclusão do módulo de codificação 470 fornece, portanto, um aperfeiçoamento substancial à funcionalidade do dispositivo de codificação de vídeo 400 e efetua uma transformação do dispositivo de codificação de vídeo 400 para um estado diferente. De modo alternativo, o módulo de codificação 470 é implantado como instruções armazenadas na memória 460 e executadas pelo processador 430.
[0149] A memória 460 inclui um ou mais discos, unidades de fita e unidades de estado sólido e pode ser usada como um dispositivo de armazenamento de dados de sobrefluxo, para armazenar programas quando tais programas são selecionados para execução, e para armazenar instruções e dados que são lidos durante a execução de programa. A memória 460 pode ser volátil e/ou não volátil e pode ser memória somente leitura (ROM), memória de acesso aleatório (RAM), memória ternária de conteúdo endereçável (TCAM) e/ou memória de acesso aleatório estática (SRAM).
[0150] A Figura 5 é um diagrama de blocos simplificado de um aparelho 500 que pode ser usado como qualquer um ou ambos dentre o dispositivo de origem 12 e o dispositivo de destino 14 da Figura 1A, de acordo com uma modalidade exemplificativa. O aparelho 500 pode implantar técnicas deste presente pedido. O aparelho 500 pode ser na forma de um sistema de computação que inclui múltiplos dispositivos de computação, ou na forma de um único dispositivo de computação, por exemplo, um telefone móvel, um computador do tipo tablet, um computador do tipo laptop, um computador do tipo notebook, um computador do tipo desktop e similares.
[0151] O processador 502 do aparelho 500 pode ser uma unidade central de processamento. De modo alternativo, o processador 502 pode ser qualquer outro tipo de dispositivo, ou múltiplos dispositivos, com a capacidade de manipular ou processar informações já existentes ou posteriormente desenvolvidas. Embora as implantações reveladas possam ser colocadas em prática com um único processador, conforme mostrado, por exemplo, processador 502, as vantagens quanto à velocidade e eficiência podem ser alcançadas com o uso de mais de um processador.
[0152] A memória 504, no aparelho 500, pode ser um dispositivo de memória somente leitura (ROM) ou um dispositivo de memória de acesso aleatório (RAM) em uma implantação. Qualquer outro tipo adequado de dispositivo de armazenamento pode ser usado como memória 504. A memória 504 pode ser usada para armazenar código e/ou dados 506 que são acessados pelo processador 502 com o uso do barramento 512. A memória 504 pode ser usada adicionalmente para armazenar sistema operacional 508 e programas de aplicação 510. Os programas de aplicação 510 podem incluir pelo menos um programa que permite que o processador 502 realize os métodos descritos na presente invenção. Por exemplo, os programas de aplicação 510 podem incluir múltiplas aplicações 1 a N, e incluem adicionalmente uma aplicação de codificação de vídeo que realiza os métodos descritos na presente invenção. O aparelho 500 também pode incluir memória adicional na forma de armazenamento secundário 514, que pode ser, por exemplo, um cartão de memória usado com um dispositivo de computação móvel. Visto que as sessões de comunicação por vídeo podem conter uma quantidade significativa de informações, as mesmas podem ser armazenadas inteiramente ou em parte no armazenamento 514 e carregadas na memória 504, conforme necessário para processamento.
[0153] O aparelho 500 também pode incluir um ou mais dispositivos de saída, tais como visor 518. O visor 518 pode ser, em um exemplo, um visor sensível ao toque que combina um visor com um elemento sensível ao toque operável para detectar entradas por meio de toque. O visor 518 pode ser acoplado ao processador 502 por meio do barramento 512. Outros dispositivos de saída que permitem que um usuário programe ou use, de outro modo, o aparelho 500 podem ser fornecidos de modo adicional ou como uma alternativa ao visor 518. Quando o dispositivo de saída for ou incluir um visor, o visor pode ser implantado de várias formas, incluindo por um visor de cristal líquido (LCD), um visor de tubo de raios catódicos (CRT), um visor de plasma ou visor de diodo emissor de luz (LED), tal como um visor de LED orgânico (OLED).
[0154] O aparelho 500 também pode incluir ou estar em comunicação com o dispositivo de captação de imagem 520, por exemplo, uma câmera ou qualquer outro dispositivo de captação de imagem 520 já existente ou a ser posteriormente desenvolvido que possa captar uma imagem, tal como a imagem de um usuário que opera o aparelho 500. O dispositivo de captação de imagem 520 pode ser posicionado de modo que seja direcionado para o usuário que opera o aparelho 500. Em um exemplo, a posição e eixo óptico do dispositivo de captação de imagem 520 podem ser configurados de modo que o campo de visão inclua uma área que é diretamente adjacente ao visor 518 e a partir da qual o visor
518 é visível.
[0155] O aparelho 500 também pode incluir ou estar em comunicação com o dispositivo de captação de som 522, por exemplo, um microfone, ou qualquer outro dispositivo de captação de som já existente ou a ser posteriormente desenvolvido que possa captar sons próximo ao aparelho 500. O dispositivo de captação de som 522 pode ser posicionado de modo que seja direcionado para o usuário que opera o aparelho 500 e pode ser configurado para receber sons, por exemplo, fala ou outras declarações, produzidas pelo usuário enquanto o usuário opera o aparelho 500.
[0156] Embora a Figura 5 retrate o processador 502 e a memória 504 do aparelho 500 como sendo integrados em um único dispositivo, outras configurações podem ser utilizadas. As operações do processador 502 podem ser distribuídas através de múltiplas máquinas (cada máquina tendo um ou mais processadores) que podem ser acopladas diretamente ou através de uma área local ou outra rede. A memória 504 pode ser distribuída através de múltiplas máquinas, tais como uma memória com base em rede ou memória em múltiplas máquinas que realizam as operações do aparelho 500. Embora retratado no presente documento como um único barramento, o barramento 512 do aparelho 500 pode incluir múltiplos barramentos. De modo adicional, o armazenamento secundário 514 pode ser acoplado diretamente aos outros componentes do aparelho 500 ou pode ser acessado por meio de uma rede e pode incluir uma única unidade integrada, tal como um cartão de memória ou múltiplas unidades, tais como múltiplos cartões de memória. O aparelho 500 pode ser implantado, desse modo, em uma grande variedade de configurações.
[0157] A presente revelação se refere à predição intra como parte de um mecanismo de codificação de vídeo.
[0158] Predição intra pode ser usada quando não há imagem de referência disponível, ou quando codificação de predição inter não é usada para o bloco ou imagem atual. As amostras de referência de predição intra são frequentemente derivadas de blocos vizinhos previamente codificados (ou reconstruídos) na mesma imagem. Por exemplo, tanto em H.264/AVC quanto em H.265/HEVC, as amostras de delimitação de blocos adjacentes são usadas como referência para predição intra. A fim de abranger diferentes caracteres de textura ou estruturais, há muitos modos de predição intra diferentes. Em cada modo, um método de derivação de sinal de predição diferente é usado. Por exemplo, H.265/HEVC suporta um total de 35 modos de predição intra, conforme mostrado na Figura 6.
[0159] Para predição intra, as amostras de delimitação decodificadas de blocos adjacentes são usadas como referência. O codificador seleciona o melhor modo de predição intra luma de cada bloco a partir de 35 opções: 33 modos de predição direcionais, um modo de DC e um modo Plano. O mapeamento entre a direção de predição intra e o número de modo de predição intra é especificado na Figura 6.
[0160] Conforme mostrado na Figura 7, o bloco “CUR” é um bloco atual a ser predito, as amostras cinzas ao longo da delimitação de blocos construídos adjacentes são usadas como amostras de referência. O sinal de predição pode ser derivado mapeando-se as amostras de referência de acordo com um método específico que é indicado pelo modo de predição intra.
[0161] A codificação de vídeo pode ser realizada com base em espaço de cor e formato de cor. Por exemplo, vídeo a cor desempenha uma função importante em sistemas multimídia, em que vários espaços de cor são usados para representar a cor de modo eficiente. Um espaço de cor especifica cor com valores numéricos com o uso de múltiplos componentes. Um espaço de cor popular é o espaço de cor RGB, em que a cor é representada como uma combinação de três valores de componente de cor primário (isto é, vermelho, verde e azul). Para compressão de vídeo por cor, o espaço de cor YCbCr tem sido amplamente usado, conforme descrito em A. Ford e A. Roberts, “Colour space conversions,” University of Westminster, London, Tech. Rep., August 1998.
[0162] YCbCr pode ser facilmente convertido a partir do espaço de cor RGB através de uma transformação linear e a redundância entre diferentes componentes, a saber, a redundância de componente cruzado, é reduzida de maneira significativa no espaço de cor YCbCr. Uma vantagem de YCbCr é a compatibilidade reversa com TV preto e branca visto que sinal Y conduz informações de luminância. Além disso, a largura de banda de crominância pode ser reduzida ao subamostrar os componentes Cb e Cr em formato de amostragem croma 4:2:0 com significativamente menos impacto subjetivo do que subamostragem no espaço de cor RGB. Devido a essas vantagens, YCbCr tem sido o principal espaço de cor em compressão de vídeo. Há também outros espaços de cor, tais como YCoCg, usados em compressão de vídeo. Nesta revelação, independentemente do espaço de cor real usado, o luma (ou L ou Y) e dois croma (Cb e Cr) são usados para representar os três componentes de cor no esquema de compressão de vídeo.
[0163] Por exemplo, quando a estrutura de amostragem de formato croma for amostragem 4:2:0, cada um dentre os dois arranjos croma tem metade da altura e metade da largura do arranjo luma. As localizações relativas vertical e horizontal nominais de amostras de luma e croma em imagens são mostradas na Figura 8.
[0164] A Figura 9 (incluindo a Figura 9A e a Figura 9B) é um diagrama esquemático que ilustra um mecanismo exemplificativo de realização de uma predição intra de modelo linear de componente cruzado (CCLM) 900. A Figura 9 ilustra um exemplo de amostragem 4:2:0. A Figura 9 mostra um exemplo da localização das amostras à esquerda e acima da amostra do bloco atual envolvidas no modo de CCLM. Os quadrados brancos são amostras do bloco atual, e os círculos sombreados são amostras reconstruídas. A Figura 9A ilustra um exemplo dos pixels reconstruídos vizinhos de um bloco de luma colocalizado. A Figura 9B ilustra um exemplo dos pixels reconstruídos vizinhos de um bloco de croma. Se o formato de vídeo for YUV4:2:0, então, há um bloco de luma 16x16 e dois blocos de croma 8x8.
[0165] A predição intra de CCLM 900 é um tipo de predição intra de componente cruzado. Portanto, a predição intra de CCLM 900 pode ser realizada por uma unidade de estimativa intra 46 de um codificador 20 e/ou uma unidade de predição intra 94 de um decodificador 30. A predição intra de CCLM 900 prediz amostras de croma 903 em um bloco de croma 901. As amostras de croma 903 aparecem em posições de número inteiro mostradas como linhas de intersecção. A predição se baseia, em parte, em amostras de referência vizinhas, que são retratadas como círculos escuros. Diferentemente com modos de predição intra 500, as amostras de croma 903 não são preditas unicamente com base nas amostras de referência croma vizinhas 905, que são denotadas amostras de croma reconstruídas (Rec’C). As amostras de croma 903 também são preditas com base em amostras de referência luma 913 e amostras de referência luma vizinhas 915. Especificamente, uma CU contém um bloco de luma 911 e dois blocos de croma 901. Um modelo é gerado o qual correlaciona as amostras de croma 903 e as amostras de referência luma 913 na mesma CU. Os coeficientes lineares para o modelo são determinados comparando-se as amostras de referência luma vizinhas 915 com as amostras de referência croma vizinhas 905.
[0166] Visto que as amostras de referência luma 913 são reconstruídas, as amostras de referência luma 913 são denotadas como amostras de luma reconstruídas (Rec’L). Visto que as amostras de referência croma vizinhas 905 são reconstruídas, as amostras de referência croma vizinhas 905 são denotadas como amostras de croma reconstruídas (Rec’C).
[0167] Conforme mostrado, o bloco de luma 911 contém quatro vezes as amostras do bloco de croma 901. Especificamente, o bloco de croma 901 contém N número de amostras por N número de amostras enquanto o bloco de luma 911 contém 2N número de amostras por 2N número de amostras. Portanto, o bloco de luma 911 é quatro vezes a resolução do bloco de croma 901. Para que a predição opere nas amostras de referência luma 913 e nas amostras de referência luma vizinhas 915, as amostras de referência luma 913 e as amostras de referência luma vizinhas 915 são subamostradas para fornecer uma comparação acurada com as amostras de referência croma vizinhas 905 e as amostras de croma 903. Subamostragem é o processo de reduzir a resolução de um grupo de valores de amostra. Por exemplo, quando formato YUV4:2:0 é usado, as amostras de luma podem ser subamostradas por um fator de quatro (por exemplo, largura por dois, e altura por dois). YUV é um sistema de codificação de cor que emprega um espaço de cor em termos de componentes luma Y e dois componentes de crominância U e V.
[0168] A fim de reduzir a redundância de componente cruzado, há um modo de predição de modelo linear de componente cruzado (CCLM, também pode ser denominado modo de LM, modo de CCIP), para o qual, as amostras de croma são preditas com base nas amostras de luma reconstruídas da mesma unidade de codificação (CU) usando-se um modelo linear da seguinte forma: 𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝐶𝐶 (𝑖𝑖, 𝑗𝑗) = 𝛼𝛼 · 𝑟𝑟𝑟𝑟𝑟𝑟𝐿𝐿 ′(𝑖𝑖, 𝑗𝑗) + 𝛽𝛽 (1) em que predC (i, j) representa as amostras de croma preditas em uma CU e recL (i, j) representa as amostras de luma reconstruídas subamostradas da mesma CU, e α e β são parâmetros de modelo linear ou coeficientes de modelo linear.
[0169] Em um exemplo, os parâmetros α e β são derivados minimizando-se o erro de regressão entre as amostras de luma reconstruídas vizinhas ao redor do bloco de luma atual e as amostras de croma reconstruídas vizinhas ao redor do bloco de croma da seguinte forma: 𝑁𝑁·∑�𝐿𝐿(𝑛𝑛)·𝐶𝐶(𝑛𝑛)�−∑𝐿𝐿(𝑛𝑛)·∑𝐶𝐶(𝑛𝑛) 𝛼𝛼 = (2) 𝑁𝑁·∑�𝐿𝐿(𝑛𝑛)·𝐿𝐿(𝑛𝑛)�−∑𝐿𝐿(𝑛𝑛)·∑𝐿𝐿(𝑛𝑛) ∑𝐶𝐶(𝑛𝑛)−𝛼𝛼·∑𝐿𝐿(𝑛𝑛) 𝛽𝛽 = (3)
𝑁𝑁 em que 𝐿𝐿(𝑛𝑛) representa as amostras de luma reconstruídas vizinhas superior e esquerda subamostradas, 𝐶𝐶(𝑛𝑛) representa as amostras de croma reconstruídas vizinhas superior e esquerda, e valor de 𝑁𝑁 é igual à soma da largura e altura do bloco de codificação croma atual (por exemplo, bloco de croma 901). Em outro exemplo, α e β são determinados com base no valor mínimo e máximo das amostras de referência luma vizinhas subamostradas, conforme discutido em relação à Figura 16 abaixo.
[0170] A presente revelação se refere ao uso de amostras de luma para predizer amostras de croma através de predição intra como parte de um mecanismo de codificação de vídeo. Os modos de predição de modelo linear de componente cruzado (CCLM) são adicionados como modos de predição intra croma adicionais. No lado de codificador, mais verificação de custo de taxa distorção para o componente croma é adicionada para selecionar o modo predição intra croma.
[0171] Em geral, quando modo de predição de CCLM (forma concisa modo de predição de LM) é aplicado, o codificador de vídeo 20 e o decodificador de vídeo 30 podem invocar as etapas a seguir. O codificador de vídeo 20 e o decodificador de vídeo 30 podem subamostrar as amostras de luma vizinhas. O codificador de vídeo 20 e o decodificador de vídeo 30 podem derivar parâmetros lineares (isto é, α e β) (também denominados parâmetros de escala ou parâmetros de um modo de predição de modelo linear de componente cruzado (CCLM)). O codificador de vídeo 20 e o decodificador de vídeo 30 podem subamostrar o bloco de luma atual e derivar a predição (por exemplo, um bloco preditivo) com base no bloco de luma subamostrado e nos parâmetros lineares.
[0172] Pode haver vários modos de subamostragem.
[0173] A Figura 10 é um diagrama conceitual que ilustra um exemplo de posições luma e posições croma para subamostrar amostras de um bloco de luma para gerar um bloco preditivo para um bloco de croma. Conforme retratado na Figura 10, uma amostra de croma, representada pelo triângulo preenchido (isto é, preto), é predita a partir de duas amostras de luma, representadas pelos dois círculos preenchidos, aplicando-se um filtro [1, 1]. O filtro [1, 1] é um exemplo de um filtro de 2 tap.
[0174] A Figura 11 é um diagrama conceitual que ilustra outro exemplo de posições luma e posições croma para subamostrar amostras de um bloco de luma para gerar um bloco preditivo. Conforme retratado na Figura 11, uma amostra de croma, representada pelo triângulo preenchido (isto é, preto), é predita a partir de seis amostras de luma, representadas pelos seis círculos preenchidos, aplicando-se um filtro de 6 tap.
[0175] As Figuras 12 a 15 são diagramas esquemáticos que ilustram mecanismos exemplificativos 1200, 1300, 1400 e 1500 de subamostragem para suportar predição intra de componente cruzado, por exemplo, de acordo com predição intra de CCLM 900, mecanismo 1600, predição intra de MDLM com o uso de modo CCIP_A 1700 e modo CCIP_L 1800 e/ou predição intra de MMLM conforme retratado no gráfico 1900. Portanto, os mecanismos 1200, 1300, 1400 e 1500 podem ser realizados por uma unidade de predição intra 46 e/ou uma unidade de predição intra 74 de um sistema codec 10 ou 40, uma unidade de predição intra 46 de um codificador 20 e/ou uma unidade de predição intra 74 de um decodificador 30. Especificamente, os mecanismos 1200, 1300, 1400 e 1500 podem ser empregados durante a etapa 2210 do método 220, durante a etapa 2320 do método 230 ou a etapa 2520 do método 250 em um decodificador, e durante a etapa 2420 do método 240 ou a etapa 2620 do método 260 em um codificador, respectivamente. Os detalhes das Figuras 12 a 15 são introduzidos no Pedido Internacional no PCT/US2019/041526, depositado em 7/12/2019, que é incorporado ao presente documento a título de referência.
[0176] No mecanismo 1200 da Figura 12, duas linhas 1218 e 1219 de amostras de referência luma vizinhas são subamostradas e três colunas 1220, 1221 e 1222 de amostras de referência luma vizinhas são subamostradas. As linhas 1218 e 1219 e colunas 1220, 1221 e 1222 estão diretamente adjacentes a um bloco de luma 1211 que compartilha uma CU com um bloco de croma sendo predito de acordo com predição intra de componente cruzado. Após subamostragem, as linhas 1218 e 1219 de amostras de referência luma vizinhas se tornam uma única linha 1216 de amostras de referência luma vizinhas subamostradas. De modo adicional, as colunas 1220, 1221 e 1222 de amostras de referência luma vizinhas são subamostradas resultando em uma única coluna 1217 de amostras de referência luma vizinhas subamostradas. Além disso, as amostras de luma do bloco de luma 1211 são subamostradas para criar amostras de referência luma subamostradas 1212. As amostras de referência luma subamostradas 1212 e as amostras de referência luma vizinhas subamostradas da linha 1216 e da coluna 1217 podem ser, então, empregadas para predição intra de componente cruzado de acordo com a equação (1). Deve-se observar que as dimensões das linhas 1218 e 1219 e colunas 1220, 1221 e 1222 podem se estender além do bloco de luma 1211, conforme mostrado na Figura 12. Por exemplo, o número de amostras de referência luma vizinhas superior em cada linha 1218/1219, que pode ser denotado como M, é maior que o número de amostras de luma em uma linha do bloco de luma 1211, que pode ser denotado como W. De modo adicional, o número de amostras de referência luma vizinhas à esquerda em cada coluna 1220/1221/1222, que pode ser denotado como N, é maior que o número de amostras de luma em uma coluna do bloco de luma 1211, que pode ser denotado como H.
[0177] Em um exemplo, o mecanismo 1200 pode ser implantado do modo a seguir. Para um bloco de luma 1211, as duas linhas vizinhas superior 1218 e 1219, denotadas como A1 e A2, são usadas para subamostragem para gerar linha vizinha subamostrada 1216 denotada como A. A[i] é a iésima amostra em A, A1[i] é a iésima amostra em A1, e A2[i] é a iésima amostra em A2. Em um exemplo específico, um filtro de subamostragem de seis tap pode ser aplicado às linhas vizinhas 1218 e 1219 para obter a linha vizinha subamostrada 1216 de acordo com a equação (4): A[i] = (A2[2i]*2+ A2[2i-1]+ A2[2i+1]+ A1[2i]*2+ A1[2i-1]+ A1[2i+1]+4)>>3 (4)
[0178] De modo adicional, as colunas vizinhas à esquerda 1220, 1221 e 1222 são denotadas L1, L2 e L3 e são usadas para subamostragem para obter uma coluna vizinha subamostrada 1217 denotada como L. L[i] é a iésima amostra em L, L1[i] é a iésima amostra em L1, L2[i] é a iésima amostra em L2, e L3[i] é a iésima amostra em L3. Em um exemplo específico, um filtro de subamostragem de seis tap pode ser aplicado às colunas vizinhas 1220, 1221 e 1222 para obter coluna vizinha subamostrada 1217 de acordo com a equação (5):
L[i] = (L2[2i]*2+L1[2i]+L3[2i]+ L2[2i+1]*2+L1[2i+1]+L3[2i+1] +4) >>3 (5)
[0179] O mecanismo 1300 da Figura 13 é substancialmente similar ao mecanismo 1200 da Figura 12. O mecanismo 1300 inclui um bloco de luma 1311 com linhas vizinhas 1318 e 1319 e colunas 1320, 1321 e 1322 de amostras de referência luma vizinhas, que são similares ao bloco de luma 1211, linhas 1218 e 1219, e colunas 1220, 1221 e 1222, respectivamente. A diferença é que as linhas 1318 e 1319 e as colunas 1320, 1321 e 1322 não se estendem além do bloco de luma 1211. Assim como no mecanismo 1200, o bloco de luma 1311, as linhas 1318 e 1319 e as colunas 1320, 1321 e 1322 são subamostrados para criar amostras de referência luma subamostradas 1312, coluna 1317 e linha 1316 contendo amostras de referência luma vizinhas subamostradas. A coluna 1317 e a linha 1316 não se estendem além do bloco de amostras de referência luma subamostradas 1312. De outro modo, as amostras de referência luma subamostradas 1312, a coluna 1317 e a linha 1316 são substancialmente similares às amostras de referência luma subamostradas 1212, à coluna 1217 e à linha 1216, respectivamente.
[0180] O mecanismo 1400 da Figura 14 é similar aos mecanismos 1200 e 1300, mas emprega uma única linha 1418 de amostras de referência luma vizinhas em vez de duas linhas. O mecanismo 1400 também emprega três colunas 1420, 1421 e 1422 de amostras de referência luma vizinhas. A linha 1418 e as colunas 1420, 1421 e 1422 estão diretamente adjacentes a um bloco de luma 1411 que compartilha uma CU com um bloco de croma sendo predito de acordo com predição intra de componente cruzado. Após subamostragem, a linha 1418 de amostras de referência luma vizinhas se torna uma linha 1416 de amostras de referência luma vizinhas subamostradas. De modo adicional, as colunas 1420, 1421 e 1422 de amostras de referência luma vizinhas são subamostradas resultando em uma única coluna 1417 de amostras de referência luma vizinhas subamostradas. De modo adicional, as amostras de luma do bloco de luma 1411 são subamostradas para criar amostras de referência luma subamostradas 1412. As amostras de referência luma subamostradas 1412 e as amostras de referência luma vizinhas subamostradas da linha 1416 e da coluna 1417 podem ser, então, empregadas para predição intra de componente cruzado de acordo com a equação (1).
[0181] Durante subamostragem, as linhas e colunas são armazenadas em memória em um buffer de linha. A omissão da linha 1319 durante subamostragem e, em vez da mesma, o uso de uma única linha 1418 de valores diminui de maneira significativa o uso de memória no buffer de linha. Entretanto, constatou-se que as amostras de referência luma vizinhas subamostradas da linha 1316 são substancialmente similares às amostras de referência luma vizinhas subamostradas da linha 1416. Como tal, a omissão da linha 1319 durante subamostragem e, em vez da mesma, usar uma única linha 1418 resulta em utilização reduzida memória no buffer de linha e, portanto, melhor velocidade de processamento, maior paralelismo, menos exigências de memória, etc., sem sacrificar a acurácia e, portanto, a eficiência de codificação. Assim, em uma modalidade exemplificativa, uma única linha 1418 de amostras de referência luma vizinhas é subamostrada para uso em predição intra de componente cruzado.
[0182] Em um exemplo, o mecanismo 1400 pode ser implantado do modo a seguir. Para um bloco de luma 1411, a linha vizinha superior 1418, denotada como A1, é usada para subamostragem para gerar linha vizinha subamostrada 1416 denotada como A. A[i] é a iésima amostra em A e A1[i] é a iésima amostra em A1. Em um exemplo específico, um filtro de subamostragem de três tap pode ser aplicado à linha vizinha 1418 para obter a linha vizinha subamostrada 1416 de acordo com a equação (6): A[i] = (A1[2i]*2+ A1[2i-1]+ A1[2i+1]+2)>>2 (6)
[0183] De modo adicional, as colunas vizinhas à esquerda 1420, 1421 e 1422 são denotadas L1, L2 e L3 e são usadas para subamostragem para obter uma coluna vizinha subamostrada 1417 denotada como L. L[i] é a iésima amostra em L, L1[i] é a iésima amostra em L1, L2[i] é a iésima amostra em L2, e L3[i] é a iésima amostra em L3. Em um exemplo específico, um filtro de subamostragem de seis tap pode ser aplicado às colunas vizinhas 1320, 1321 e 1322 para obter coluna vizinha subamostrada 1317 de acordo com a equação (7): L[i] = (L2[2i]*2+L1[2i]+L 3[2i]+ L2[2i+1]*2+L1[2i+1]+L0[2i+1] +4) >>3 (7)
[0184] Deve-se observar que o mecanismo 1400 não é limitado aos filtros de subamostragem descritos. Por exemplo, em vez de empregar um filtro de subamostragem de três tap conforme descrito na equação (6), as amostras também podem ser obtidas diretamente conforme na equação (8) abaixo:
A[i] = A1[2i] (8)
[0185] O mecanismo 1500 da Figura 15 é similar ao mecanismo 1300, mas emprega uma única linha 1518 de amostras de referência luma vizinhas e uma única coluna 1520 de amostras de referência luma vizinhas em vez de duas linhas 1318 e 1319 e três colunas 1320, 1321 e 1322, respectivamente. A linha 1518 e a coluna 1520 estão diretamente adjacentes a um bloco de luma 1511 que compartilha uma CU com um bloco de croma sendo predito de acordo com predição intra de componente cruzado. Após subamostragem, a linha 1518 de amostras de referência luma vizinhas se torna uma linha 1516 de amostras de referência luma vizinhas subamostradas. De modo adicional, a coluna 1520 de amostras de referência luma vizinhas são subamostradas resultando em uma única coluna 1517 de amostras de referência luma vizinhas subamostradas. As amostras de referência luma vizinhas subamostradas da linha 1516 e da coluna 1517 podem, então, ser empregadas para predição intra de componente cruzado de acordo com a equação (1).
[0186] O mecanismo 1500 omite a linha 1319 e as colunas 1321 e 1322 durante subamostragem e, em vez disso, usa uma única linha 1518 e única coluna 1520 de valores, que diminui de maneira significativa o uso de memória no buffer de linha. Entretanto, constatou-se que as amostras de referência luma vizinhas subamostradas da linha 1316 e da coluna 1317 são substancialmente similares às amostras de referência luma vizinhas subamostradas da linha 1516 e da coluna 1517, respectivamente. Como tal, a omissão da linha 1319 e das colunas 1321 e 1322 durante subamostragem e, em vez das mesmas, usar uma única linha 1518 e coluna 1520 resulta em utilização reduzida de memória no buffer de linha e, portanto, melhor velocidade de processamento, maior paralelismo, menos exigências de memória, etc., sem sacrificar a acurácia e, portanto, a eficiência de codificação. Assim, em outra modalidade exemplificativa, uma única linha 1518 de amostras de referência luma vizinhas e uma única coluna 1520 de amostras de referência luma vizinhas são subamostradas para uso em predição intra de componente cruzado.
[0187] Em um exemplo, o mecanismo 1500 pode ser implantado do modo a seguir. Para um bloco de luma 1511, a linha vizinha superior 1518, denotada como A1, é usada para subamostragem para gerar linha vizinha subamostrada 1516 denotada como A. A[i] é a iésima amostra em A e A1[i] é a iésima amostra em A1. Em um exemplo específico, um filtro de subamostragem de três tap pode ser aplicado à linha vizinha 1518 para obter a linha vizinha subamostrada 1516 de acordo com a equação (9): A[i] = (A1[2i]*2+ A1[2i-1]+ A1[2i+1]+2)>>2 (9)
[0188] De modo adicional, a coluna vizinha à esquerda 1520 é denotada como L1 é usada para subamostragem para obter uma coluna vizinha subamostrada 1517 denotada como L. L[i] é a iésima amostra em L e L1[i] é a iésima amostra em L1. Em um exemplo específico, um filtro de subamostragem de dois tap pode ser aplicado à coluna vizinha 1520 para obter coluna vizinha subamostrada 1517 de acordo com a equação (10): L[i] = (L1[2i] + L1[2i+1] +1) >>2 (10)
[0189] Em um exemplo alternativo, o mecanismo 1500 pode ser modificado para empregar uma coluna L2 (por exemplo, coluna 1321) em vez de uma coluna L1 (por exemplo, coluna 1520) ao subamostrar. Em tal caso, um filtro de subamostragem de dois tap pode ser aplicado à coluna vizinha L2 para obter coluna vizinha subamostrada 1517 de acordo com a equação (11). Deve-se observar que o mecanismo 1500 não é limitado aos filtros de subamostragem descritos. Por exemplo, em vez de empregar um filtro de subamostragem de dois tap e um de três tap conforme descrito nas equações (9) e (10), as amostras também podem ser obtidas diretamente como nas equações (11) e (12) abaixo. A[i] = A1[2i] (11) L[i] = L2[2i] (12)
[0190] De modo adicional, também deve-se observar que os mecanismos 1400 e 1500 também podem ser aplicados quando as dimensões de linhas 1418, 1416, 1518, 1516 e/ou colunas 1420, 1421, 1422, 1417, 1520 e/ou 1517 se estendem além do bloco de luma correspondente 1411 e/ou 1511 (por exemplo, conforme mostrado na Figura 12).
[0191] No modelo de exploração conjunta (JEM), há dois modos de CCLM: o modo de CCLM de modelo único e o modo de CCLM de múltiplos modelos (MMLM). Conforme indicado pelo nome, o modo de CCLM de modelo único emprega um modelo linear para predizer as amostras de croma a partir das amostras de luma para toda a CU, enquanto em MMLM, pode haver dois modelos lineares. Em MMLM, amostras de luma vizinhas e amostras de croma vizinhas do bloco atual são classificadas em dois grupos, cada grupo é usado como um conjunto de treinamento para derivar um modelo linear (isto é, um α particular e um β particular são derivados para um grupo particular). Além disso, as amostras do bloco de luma atual também são classificadas com base na mesma regra para a classificação de amostras de luma vizinhas.
[0192] A Figura 16 é um gráfico que ilustra um mecanismo exemplificativo 1600 de determinação de parâmetros de modelo linear para suportar predição intra de CCLM. Para derivar os parâmetros de modelo linear α e β, as amostras de luma reconstruídas vizinhas à esquerda e superior e podem ser subamostradas para obter uma relação um para um com as amostras de croma reconstruídas vizinhas superior e à esquerda. No mecanismo 1200, α e β, conforme usado na equação (1), são determinados com base no valor mínimo e máximo das amostras de referência luma vizinhas subamostradas. Os dois pontos (2 pares de valor de luma e valor de croma ou 2 pares de valor de luma e valor de croma) (A, B) são os valores mínimo e máximo dentro do conjunto de amostras de luma vizinhas, conforme retratado na Figura 16. Essa é uma abordagem alternativa para determinar α e β com base na minimização do erro de regressão.
[0193] Conforme mostrado na Figura 16, uma linha reta é apresentada pela equação Y = αx + β, em que os parâmetros de modelo linear α e β são obtidos de acordo com as seguintes equações (13) e (14): 𝑦𝑦𝐵𝐵 −𝑦𝑦𝐴𝐴 α= (13) 𝑥𝑥𝐵𝐵 −𝑥𝑥𝐴𝐴 β = 𝑦𝑦𝐴𝐴 − α𝑥𝑥𝐴𝐴 (14) em que (xA, yA) é um conjunto de coordenadas definido pelo valor de referência luma vizinho mínimo e um valor de referência croma correspondente, e (xB, yB) é um conjunto de coordenadas definido pelo valor de referência luma vizinho máximo e um valor de referência croma correspondente. No presente documento, observa-se que os dois pontos (2 pares de valor de luma e valor de croma) (A, B) são escolhidos a partir das amostras vizinhas reconstruídas luma subamostradas e das amostras vizinhas reconstruídas croma.
[0194] O mecanismo exemplificativo 1600 usa os valores de luma máx/mín e os valores de croma correspondentes para derivar os parâmetros de modelo linear. Apenas 2 pontos (um ponto é representado por um par de valor de luma e valor de croma) são escolhidos a partir das amostras de luma vizinhas e das amostras de croma vizinhas, para derivar os parâmetros de modelo linear. O mecanismo exemplificativo 1600 não é aplicado para algumas sequências de vídeo com algum ruído.
[0195] Modelo Linear MultiDirecional
[0196] Além das amostras vizinhas acima (ou superiores) e amostras vizinhas à esquerda poderem ser usadas para calcular os parâmetros de modelo linear em conjunto, as mesmas também podem ser usadas, de maneira alternativa, nos outros 2 modos de CCIP (predição intra de componente cruzado), denominados modos CCIP_A e CCIP_L. CCIP_A e CCIP_L também podem ser denotados modelo linear multidirecional (MDLM) por questão de concisão.
[0197] As Figuras 17 e 18 são diagramas esquemáticos que ilustram um mecanismo exemplificativo de realização de predição intra de MDLM. Predição intra de MDLM opera de um modo similar à predição intra de CCLM 900. Especificamente, a predição intra de MDLM usa tanto um modo de predição de modelo linear de componente cruzado (CCIP)_A 1700 quanto um modo CCIP_L 1800 ao determinar parâmetros de modelo linear α e β. Por exemplo, predição intra de MDLM pode calcular parâmetros de modelo linear α e β com o uso de modo CCIP_A 1700 e modo CCIP_L 1800. Em outro exemplo, predição intra de MDLM pode usar modo CCIP_A 1700 ou modo CCIP_L 1800 para determinar parâmetros de modelo linear α e β.
[0198] No modo CCIP_A, apenas as amostras vizinhas superior são usadas para calcular os parâmetros de modelo linear. Para obter mais amostras de referência, as amostras vizinhas superior são estendidas para (W+H), normalmente. Conforme mostrado na Figura 17, W=H, em que W indica a largura do respectivo bloco de luma ou croma, e H indica a altura do respectivo bloco de luma ou croma.
[0199] No modo CCIP_L, apenas amostras vizinhas à esquerda são usadas para calcular os parâmetros de modelo linear. Para obter mais amostras de referência, as amostras vizinhas à esquerda são estendidas para (H+W), normalmente. Conforme mostrado na Figura 18, W=H , em que W indica a largura do respectivo bloco de luma ou croma, e H indica a altura do respectivo bloco de luma ou croma.
[0200] O modo CCIP (isto é, modo de CCLM ou LM) e MDLM (CCIP_A e CCIP_L) podem ser usados em conjunto, ou de maneira alternativa. Por exemplo, apenas CCIP é usado em um codec, ou apenas MDLM é usado em um codec, ou ambos CCIP e MDLM são usados em um codec.
[0201] CCLM de Múltiplos Modelos
[0202] Além do CCLM de único modelo, há outro modo denominado o modo de CCLM de múltiplos modelos (MMLM). Conforme indicado pelo nome, o modo de CCLM de único modelo emprega um modelo linear para predizer as amostras de croma a partir das amostras de luma para toda a CU, enquanto em MMLM, pode haver dois modelos. Em MMLM, amostras de luma vizinhas e amostras de croma vizinhas do bloco atual são classificadas em dois grupos, cada grupo é usado como um conjunto de treinamento para derivar um modelo linear (isto é, um α e β particulares são derivados para um grupo particular). Além disso, as amostras do bloco de luma atual também são classificadas com base na mesma regra para a classificação de amostras de luma vizinhas.
[0203] A Figura 19 é um gráfico que ilustra um mecanismo exemplificativo 1900 de determinação de parâmetros de modelo linear para suportar predição intra de MMLM. A predição intra de MMLM, conforme mostrado no gráfico 1900, é um tipo de predição intra de componente cruzado. A predição intra de MMLM é similar à predição intra de CCLM. A diferença é que em MMLM, as amostras de luma reconstruídas vizinhas são colocadas em dois grupos comparando-se o valor de luma relevante (por exemplo, Rec’L) com um limiar. A predição intra de CCLM é, então, realizada em cada grupo para determinar parâmetros de modelo linear α e β e concluir um modelo linear correspondente de acordo com a equação (1). A classificação das amostras de luma reconstruídas vizinhas em dois grupos pode ser realizada de acordo com a equação (15) abaixo:
[0204] Em um exemplo, o limiar é calculado como o valor médio das amostras de luma reconstruídas vizinhas. Uma amostra de luma reconstruída vizinha com Rec′L[x,y] <= Limiar é classificada em grupo 1; enquanto uma amostra de luma reconstruída vizinha com Rec′L[x,y] > Limiar é classificada em grupo 2. α1 × Rec 'L [ x, y ] + β1 if Rec 'L [ x, y ] ≤ Threshold  PredC [ x, y ] =  α 2 × Rec 'L [ x, y ] + β 2 if Rec 'L [ x, y ] > Threshold  PredC [ x, y ] = (15) em que as variáveis da equação (15) são definidas de modo similar à equação (1) com um subscrito de um que indica relação com um primeiro grupo e um subscrito de dois que indica uma relação com um segundo grupo.
[0205] Conforme mostrado pelo gráfico 1900, parâmetros de modelo linear α1 e β1 podem ser calculados para um primeiro grupo e parâmetros de modelo linear α2 e β2 podem ser calculados para um segundo grupo. Conforme um exemplo específico, tais valores podem ser α1 = 2 de dois, β1 = 1 , α2 = 1/2 , e β2 = −1 de um negativo em que o limiar é um valor de luma de 17. A predição intra de MMLM pode, então, selecionar o modelo resultante que fornece as amostras menos residuais e/ou resultados na maior eficiência de codificação.
[0206] Conforme observado acima, os mecanismos exemplificativos de realização de diferente predição intra de CCLM discutidos no presente documento usam valores de luma máx/mín e os valores de croma correspondentes para derivar os parâmetros de modelo linear, mecanismos aperfeiçoados de realização de predição intra de CCLM que alcançam parâmetros de modelo linear robustos são desejáveis.
[0207] Se mais de um ponto tiver valor máximo ou mais de um ponto tiver valor mínimo, então, o par de pontos será escolhido com base no valor de croma dos pontos correspondentes.
[0208] Se mais de um ponto tiver valor máximo ou mais de um ponto tiver valor mínimo, o valor de croma médio das amostras de luma com o valor máximo será definido como o valor de croma correspondente para valor de luma máximo, e o valor de croma médio das amostras de luma com o valor mínimo será definido como o valor de croma correspondente para valor de luma mínimo;
[0209] Não só 1 par de pontos (mínimo e máximo) será escolhido. Especificamente, os N pontos que têm valor de luma maior, e os M pontos que têm valor de luma menor serão usados para calcular o parâmetro de modelo linear.
[0210] Não só 1 par de pontos será escolhido. Especificamente, os N pontos com valor de luma dentro de uma faixa de [MaxValue-T1, MaxValue], e os M pontos com valor de luma dentro de uma faixa de [MinValue, MinValue+T2] serão escolhidos como os pontos para calcular o parâmetro de modelo linear.
[0211] Não só as amostras vizinhas à esquerda e acima são usadas para obter os valores máx/mín, mas também algumas amostras vizinhas estendidas são usadas, como as amostras vizinhas inferiores à esquerda e amostras vizinhas superior/direita.
[0212] Com os mecanismos aperfeiçoados exemplificativos mencionados acima, parâmetros de modelo linear mais robustos podem ser originados com o aperfeiçoamento da eficiência de codificação de predição intra de CCLM.
[0213] Na presente revelação, os mecanismos aperfeiçoados para obter os valores de luma máx/mín e os valores de croma correspondentes entre os pares de amostras de luma e croma serão descritos em detalhes abaixo.
[0214] No presente documento, observa-se que os mecanismos aperfeiçoados também podem ser usados em MDLM e MMLM.
[0215] Na presente revelação, os mecanismos aperfeiçoados são apresentados para obter os valores de luma máximo e mínimo e os valores de croma correspondentes para derivar os parâmetros de modelo linear. Pelos mecanismos aperfeiçoados, parâmetros de modelo linear mais robustos podem ser derivados.
[0216] Em um exemplo, no presente documento, o conjunto dos pares de amostras de luma e amostras de croma é ilustrado como {(p0, q0), (p1, q1), (p2, q2),…, (pi, qi), ..., (pV-1, qV-1)}. Em que pi é o valor de luma do iésimo ponto, qi é o valor de croma do iésimo ponto. No presente documento, o conjunto de pontos luma é observado como P = {p0, p1, p2, ..., pi, …, pV-1}, o conjunto dos pontos croma é observado como Q = {q0, q1, …, qi, ..., qV-1}.
[0217] Primeiro mecanismo aperfeiçoado: mais de 1 ponto extremo, e o par de pontos é escolhido de acordo com valor de croma
[0218] No primeiro mecanismo aperfeiçoado, se mais de 1 ponto tiver o valor máx/mín, então, o par de pontos será escolhido com base no valor de croma dos pontos correspondentes. O par de pontos que tem a menor diferença de valor de croma será escolhido como o par de pontos para derivar o parâmetro de modelo linear.
[0219] Por exemplo, supõe-se que o 5o, 7o, 8o pontos tenham o valor de luma máximo, e o 4o, 6o pontos tenham o valor de luma mínimo, |q7-q4| é o menor valor entre |q5-q4|, |q5-q6|, |q7-q4|, |q7-q6|, |q8-q4| e |q8-q6|. Então, o 7o e o 4o pontos serão escolhidos para derivar os parâmetros de modelo linear.
[0220] No presente documento, observa-se que, além de usar a menor diferença de valor de croma, o primeiro mecanismo aperfeiçoado também pode usar a maior diferença de valor de croma. Por exemplo, supõe-se que o 5o, 7o, 8o pontos tenham o valor de luma máximo, e o 4o, 6o pontos tenham o valor de luma mínimo, |q5-q6| é o maior valor entre |q5-q4|, |q5-q6|, |q7-q4|, |q7-q6|, |q8-q4| e |q8-q6|. Então, o 5o e o 6o pontos serão escolhidos para derivar os parâmetros de modelo linear.
[0221] No presente documento, observa-se que o mecanismo aperfeiçoado também pode ser usado em MDLM, e MMLM.
[0222] Segundo mecanismo aperfeiçoado: mais de 1 ponto extremo, com o uso do valor de croma médio
[0223] No segundo mecanismo aperfeiçoado, se mais de um ponto tiver o valor máx/mín, então, o valor de croma médio será usado. O valor de croma que corresponde ao valor de luma máximo é o valor de croma médio dos pontos com valor de luma máximo. O valor de croma que corresponde ao valor de luma mínimo é o valor de croma médio dos pontos com valor de luma mínimo.
[0224] Por exemplo, se o 5o, 7o, 8o pontos tiverem o valor de luma máximo, e o 4o, 6o pontos tiverem o valor de luma mínimo. Então, o valor de croma que corresponde ao valor de luma máximo é o valor médio de q5, q7 e q8. O valor de croma que corresponde ao valor de luma mínimo é o valor médio de q4 e q6.
[0225] Observa-se no presente documento que o mecanismo aperfeiçoado também pode ser usado em MDLM e MMLM.
[0226] Terceiro mecanismo aperfeiçoado: (mais de um ponto com base em número de pontos), mais de 1 ponto maior/menor será usado, com o uso de valor médio
[0227] No terceiro mecanismo aperfeiçoado, N pontos serão usados para calcular o valor de luma máximo e o valor de croma correspondente. Os N pontos selecionados têm valor de luma maior que outros pontos. O valor de luma médio dos N pontos selecionados será usado como o valor de luma máximo, e o valor de croma médio dos N pontos selecionados será usado como o valor de croma que corresponde ao valor de luma máximo.
[0228] M pontos serão usados para calcular o valor de luma mínimo e o valor de croma correspondente. Os M pontos selecionados têm valor de luma menor que outros pontos. O valor de luma médio dos M pontos selecionados será usado como o valor de luma mínimo, e o valor de croma médio dos M pontos selecionados será usado como o valor de croma que corresponde ao valor de luma mínimo.
[0229] Por exemplo, se o 5o, 7o, 8o, 9o, 11o pontos tiverem valor de luma maior que outros pontos, e o 4o, 6o, 14o, 18o pontos tiverem o menor valor de luma. Então, o valor médio de p5, p7, p8, p9 e p11 é o valor de luma máximo usado para parâmetros de modelo linear, e valor médio de q5, q7, q8, q9 e q11 é o valor de croma que corresponde ao valor de luma máximo. Então, o valor médio de p4, p6, p14 e p18 é o valor de luma mínimo usado para parâmetro de modelo linear, e o valor médio de q4, q6, q14 e q18 é o valor de croma que corresponde ao valor de luma mínimo.
[0230] No presente documento, observa-se que M e N podem ser iguais, ou diferentes. Por exemplo, M = N = 2.
[0231] No presente documento, observa-se que M e N podem ser definidos, de modo adaptativo, com base no tamanho de bloco. Por exemplo, M = (W+H) >> t, N = (W+H) >> r. No presente documento, os t e r são quantidade de bits deslocados a direita, tais como 2, 3 e 4.
[0232] Em uma implantação alternativa, se (W+H) > T1, então, M e N são definidos como valores particulares M1, N1. De outro modo, M e N são definidos como valores particulares M2, N2. No presente documento M1 e N1 podem ser iguais, ou diferentes. M2 e N2 podem ser iguais, ou diferentes. Por exemplo, se (W+H) > 16, então, M = 2, N = 2. Se (W+H) <= 16, então, M = 1, N =
1.
[0233] Observa-se que o mecanismo aperfeiçoado também pode ser usado em MDLM e MMLM.
[0234] Quarto mecanismo aperfeiçoado: (de modo ativo, mais de um ponto com base em limiar de valor de luma), mais de um ponto maior/menor será usado, com o uso de valor médio
[0235] No quarto mecanismo aperfeiçoado, N pontos serão usados para calcular o valor de luma máximo e o valor de croma correspondente. Os N pontos selecionados com valor de luma estão dentro de uma faixa de [MaxlumaValue-T1, MaxlumaValue].O valor de luma médio dos N pontos selecionados será usado como o valor de luma máximo, e o valor de croma médio dos N pontos selecionados será usado como o valor de croma que corresponde ao valor de luma máximo. Em um exemplo, o MaxlumaValue representa o valor de luma máximo no conjunto P.
[0236] No quarto mecanismo aperfeiçoado, M pontos serão usados para calcular o valor de luma mínimo e o valor de croma correspondente. Os M pontos selecionados com valor de luma estão dentro de uma faixa de [MinlumaValue, MinlumaValue+T2]. O valor de luma médio dos M pontos selecionados será usado como o valor de luma mínimo, e o valor de croma médio dos M pontos selecionados será usado como o valor de croma que corresponde ao valor de luma mínimo. Em um exemplo, o MinlumaValue representa o valor de luma mínimo no conjunto P.
[0237] Por exemplo, se o 5o, 7o, 8o, 9o, 11o pontos forem os pontos com valor de luma dentro de uma faixa de [Lmax-T1, Lmax]. O 4o, 6o, 14o, 18o pontos são os pontos com valor de luma dentro de uma faixa de [Lmin, Lmin+T2]. Em um exemplo, o Lmax representa o maior valor de luma no conjunto P, e Lmin representa o menor valor de luma no conjunto P. Então, o valor médio de p5, p7, p8, p9 e p11 é o valor de luma máximo usado para parâmetro de modelo linear, e o valor médio de q5, q7, q8, q9 e q11 é o valor de croma máximo que corresponde ao valor de luma máximo. Então, o valor médio de p4, p6, p14 e p18 é o valor de luma mínimo usado para parâmetro de modelo linear, e o valor médio de q4, q6, q14 e q18 é o valor de croma mínimo que corresponde ao valor de luma mínimo.
[0238] Observa-se que M e N podem ser iguais, ou diferentes.
[0239] Observa-se que T1 e T2 podem ser iguais, ou não iguais.
[0240] Observa-se que o mecanismo aperfeiçoado também pode ser usado em MDLM e MMLM.
[0241] Quinto mecanismo aperfeiçoado: uso de amostras vizinhas estendidas
[0242] No mecanismo existente, apenas as amostras vizinhas à esquerda e superior são usadas para obter o par de pontos para buscar o par de pontos para derivar o parâmetro de modelo linear. No quinto mecanismo aperfeiçoado, algumas amostras estendidas podem ser usadas para aumentar o número de par de pontos, para aperfeiçoar a robustez dos parâmetros de modelo linear.
[0243] Por exemplo, as amostras vizinhas superior direita e as amostras vizinhas esquerda/inferior também são usadas para derivar os parâmetros de modelo linear.
[0244] Por exemplo, conforme mostrado na Figura 20, no mecanismo de CCLM de único modo existente, as amostras de luma vizinhas superior subamostradas são representadas por A’, e as amostras de luma vizinhas à esquerda subamostradas são representadas por L’. As amostras de croma vizinhas superior são representadas por Ac’, e as amostras de croma vizinhas à esquerda são representadas por Lc’.
[0245] Conforme mostrado na Figura 21, no quinto mecanismo aperfeiçoado, as amostras vizinhas serão estendidas para amostras superior direita e à inferior esquerda. Isso significa que as amostras de referência A, L, e Ac, Lc podem ser usadas para obter o valor de luma máx/mín e o valor de croma correspondente.
[0246] No presente documento, M>W, N>H.
[0247] No presente documento, observa-se que o mecanismo aperfeiçoado também pode ser usado em MDLM e MMLM.
[0248] No mecanismo CCIP ou LM existente, para obter o valor de luma máx/mín e o valor de croma correspondente, apenas um par de pontos será usado.
[0249] Nos mecanismos aperfeiçoados propostos, não só um par de pontos será usado.
[0250] Se mais de um ponto tiver valor máximo ou mais de um ponto tiver valor mínimo, então, o par de pontos será escolhido com base no valor de croma dos pontos correspondentes.
[0251] Se mais de um ponto tiver valor máximo ou mais de um ponto tiver valor mínimo, então, o valor de croma correspondente para valor de luma máximo será o valor de croma médio das amostras de luma com o valor máximo, e o valor de croma correspondente para valor de luma mínimo será o valor de croma médio das amostras de luma com o valor mínimo.
[0252] Não só um par de pontos será escolhido. Especificamente, os N pontos que têm o maior valor, e os M pontos que têm o menor valor serão usados para derivar os parâmetros de modelo linear.
[0253] Não só um par de pontos será escolhido. Especificamente, os N pontos com valores dentro de uma faixa de [MaxValue-T1, MaxValue], e os M pontos com valores dentro de uma faixa de [MinValue, MinValue+T2] serão escolhidos como os pontos para derivar os parâmetros de modelo linear.
[0254] Não só as amostras vizinhas à esquerda e acima são usadas para obter os valores máx/mín, mas também algumas amostras vizinhas estendidas são usadas, como as amostras vizinhas inferiores à esquerda e amostras vizinhas superior/direita.
[0255] Todos os mecanismos aperfeiçoados mencionados acima obterão os parâmetros de modelo linear mais robustos.
[0256] Todos os mecanismos aperfeiçoados mencionados acima também podem ser usados em MMLM.
[0257] Todos os mecanismos aperfeiçoados mencionados acima, exceto o mecanismo aperfeiçoado 5, também podem ser usados em MDLM.
[0258] Observa-se que os mecanismos aperfeiçoados propostos na presente revelação são usados para obter os valores de luma máx/mín e os valores de croma correspondentes para derivar os parâmetros de modelo linear para predição intra croma. Os mecanismos aperfeiçoados são aplicados no módulo de predição intra ou no processo intra. Portanto, existe tanto no lado de decodificador quanto no lado de codificador. Além disso, os mecanismos aperfeiçoados para obter os valores de luma máx/mín e os valores de croma correspondentes podem ser implantados do mesmo modo no codificador e decodificador.
[0259] Para um bloco de croma, a fim de obter sua predição com o uso do modo LM, as amostras de luma subamostradas correspondentes são obtidas primeiro, então, os valores de luma máx/mín e os valores de croma correspondentes nas amostras vizinhas reconstruídas são obtidos para derivar os parâmetros de modelo linear. Então, a predição (isto é, um bloco preditivo) de bloco de croma atual é obtida com o uso dos parâmetros de modelo linear derivados e do bloco de luma subamostrado.
[0260] Um método para predição de componente cruzado de um bloco de acordo com a modalidade 1 da presente revelação se refere ao primeiro mecanismo aperfeiçoado descrito acima.
[0261] Um método para predição de componente cruzado de um bloco de acordo com a modalidade 2 da presente revelação se refere ao segundo mecanismo aperfeiçoado descrito acima.
[0262] Um método para predição de componente cruzado de um bloco de acordo com a modalidade 3 da presente revelação se refere ao terceiro mecanismo aperfeiçoado descrito acima.
[0263] Um método para predição de componente cruzado de um bloco de acordo com a modalidade 4 da presente revelação se refere ao quarto mecanismo aperfeiçoado descrito acima.
[0264] Um método para predição de componente cruzado de um bloco de acordo com a modalidade 5 da presente revelação se refere ao quinto mecanismo aperfeiçoado descrito acima.
[0265] A Figura 22 é um fluxograma de outro método exemplificativo 220 para predição de componente cruzado de um bloco (por exemplo, um bloco de croma) de acordo com algumas modalidades da presente revelação. Portanto, o método pode ser realizado por um codificador de vídeo 20 e/ou um decodificador de vídeo 30 de um sistema codec 10 ou 40. Em particular, o método pode ser realizado por uma unidade de predição intra 46 do codificador de vídeo 20, e/ou uma unidade de predição intra 74 do decodificador de vídeo 30.
[0266] Na etapa 2210, um bloco de luma subamostrado é obtido. Pode- se entender que a resolução espacial do bloco de luma é frequentemente maior que o bloco de croma, um bloco de luma (isto é, um bloco de luma reconstruído) é subamostrado para obter um bloco de luma subamostrado. O bloco de luma 911, 1211, 1311, 1411 e 1511 corresponde a um bloco de croma 901, conforme ilustrado nas Figuras 9, 12 a 15.
[0267] Na etapa 2230, um valor de luma máximo e um valor de luma mínimo são determinados a partir de um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, em que as amostras de luma vizinhas reconstruídas incluem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e/ou uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma, e valor de croma correspondente também são determinados.
[0268] Na etapa 2250, parâmetros de modelo linear são calculados. Por exemplo, os parâmetros de modelo linear são calculados com base no valor de luma máximo e no valor de croma correspondente, e no valor de luma mínimo e no valor de croma correspondente com o uso da equação (13) e da equação (14).
[0269] Na etapa 2270, um bloco preditivo do bloco de croma 901 é obtido pelo menos com base no um ou mais parâmetros de modelo linear. Os valores de croma preditos do bloco de croma 901 são gerados com base no um ou mais parâmetros de modelo linear e no bloco de luma subamostrado 1212, 1312, 1412, 1512. Os valores de croma preditos do bloco de croma 901 são derivados com o uso da equação (1).
[0270] O método para predição de componente cruzado de um bloco de acordo com a modalidade 1 (que corresponde ao primeiro mecanismo aperfeiçoado para modo de LM) da presente revelação é fornecido a título de referência à Figura 22.
[0271] O primeiro mecanismo aperfeiçoado descrito acima será usado para derivar os valores de luma máx/mín, e os valores de croma correspondentes. Se mais de um ponto tiver o valor máx/mín, então, o par de pontos será escolhido com base no valor de croma dos pontos correspondentes. O par de pontos (que tem valor de luma máx/mín) que tem a menor diferença de valor de croma será escolhido como o par de pontos para derivar o parâmetro de modelo linear.
[0272] Observa-se que, além do uso do menor valor de diferença de valor de croma, o primeiro mecanismo aperfeiçoado também pode usar o maior valor da diferença de valor de croma.
[0273] Para detalhes, consulte o mecanismo aperfeiçoado 1 apresentado acima.
[0274] O mecanismo aperfeiçoado 1 também pode ser usado em MDLM e MMLM. Por exemplo, para MDLM/MMLM, apenas o valor de luma máx/mín e valor de croma correspondente são usados para derivar os parâmetros de modelo linear. O mecanismo aperfeiçoado 1 é usado para derivar os valores de luma máx/mín e valores de croma correspondentes.
[0275] O método para predição de componente cruzado de um bloco de acordo com a modalidade 2 (que corresponde ao segundo mecanismo aperfeiçoado para modo de LM) da presente revelação é fornecido a título de referência à Figura 22.
[0276] A diferença entre a modalidade 2 e a modalidade 1 está em:
[0277] Se mais de um ponto tiver o valor máx/mín, então, o valor de croma médio será usado. O valor de croma que corresponde ao valor de luma máximo é o valor de croma médio dos pontos com valor de luma máximo. O valor de croma que corresponde ao valor de luma mínimo é o valor de croma médio dos pontos com valor de luma mínimo.
[0278] Para detalhes, consulte o mecanismo aperfeiçoado 2.
[0279] O mecanismo aperfeiçoado também pode ser usado em MDLM e MMLM. Por exemplo, para MDLM/MMLM, apenas o valor de luma máx/mín e valor de croma correspondente são usados para derivar os parâmetros de modelo linear. O mecanismo aperfeiçoado 2 é usado para derivar os valores de luma máx/mín e valores de croma correspondentes.
[0280] O método para predição de componente cruzado de um bloco de acordo com a modalidade 3 (que corresponde ao terceiro mecanismo aperfeiçoado) da presente revelação é fornecido a título de referência à Figura 22.
[0281] A diferença entre a modalidade 3 e a modalidade 1 está em:
[0282] N pontos serão usados para calcular o valor de luma máximo, e o valor de croma correspondente. Os N pontos selecionados têm valor de luma maior que outros pontos. O valor de luma médio dos N pontos selecionados será usado como o valor de luma máximo, e o valor de croma médio dos N pontos selecionados será usado como o valor de croma que corresponde ao valor de luma máximo.
[0283] M pontos serão usados para calcular o valor de luma mínimo, e o valor de croma correspondente. Os M pontos selecionados têm valores de luma menores que outros pontos. O valor de luma médio dos M pontos selecionados será usado como o valor de luma mínimo, e o valor de croma médio dos M pontos selecionados será usado como o valor de croma que corresponde ao valor de luma mínimo.
[0284] Para detalhes, consulte o mecanismo aperfeiçoado 3 descrito acima.
[0285] O mecanismo aperfeiçoado 3 também pode ser usado em MDLM e MMLM. Por exemplo, para MDLM/MMLM, apenas os valores de luma máx/mín e valores de croma correspondentes são usados para derivar os parâmetros de modelo linear. O mecanismo aperfeiçoado 3 é usado para derivar os valores de luma máx/mín e valores de croma correspondentes.
[0286] O método para predição de componente cruzado de um bloco de acordo com a modalidade 4 (que corresponde ao quarto mecanismo aperfeiçoado) da presente revelação é fornecido a título de referência à Figura 22.
[0287] A diferença entre a modalidade 4 e a modalidade 1 está em:
[0288] N pares de pontos serão usados para calcular o valor de luma máximo, e o valor de croma correspondente. Os N pares de pontos selecionados têm valores de luma dentro de uma faixa de [MaxlumaValue-T1, MaxlumaValue]. O valor de luma médio dos N pares de pontos selecionados será usado como o valor de luma máximo, e o valor de croma médio dos N pares de pontos selecionados será usado como o valor de croma que corresponde ao valor de luma máximo.
[0289] M pares de pontos serão usados para calcular o valor de luma mínimo, e o valor de croma correspondente. Os M pares de pontos selecionados têm valores de luma dentro de uma faixa de [MinlumaValue, MinlumaValue+T2]. O valor de luma médio dos M pares de pontos selecionados será usado como o valor de luma mínimo, e o valor de croma médio dos M pares de pontos selecionados será usado como o valor de croma que corresponde ao valor de luma mínimo.
[0290] Para detalhes, consulte o mecanismo aperfeiçoado 4 descrito acima.
[0291] O mecanismo aperfeiçoado 4 também pode ser usado em MDLM e MMLM. Por exemplo, para MDLM/MMLM, apenas o valor de luma máx/mín e valor de croma correspondente são usados para derivar os parâmetros de modelo linear. O mecanismo aperfeiçoado 4 é usado para derivar o valor de luma máx/mín e valor de croma correspondente.
[0292] O método para predição de componente cruzado de um bloco de acordo com a modalidade 5 (que corresponde ao quinto mecanismo aperfeiçoado) da presente revelação é fornecido a título de referência à Figura 22.
[0293] A diferença entre a modalidade 5 e a modalidade 1 está em:
[0294] Algumas amostras estendidas podem ser usadas para aumentar o número de par de pontos, para aperfeiçoar a robustez dos parâmetros de modelo linear.
[0295] Por exemplo, as amostras vizinhas superior direita e as amostras vizinhas esquerda/inferior também são usadas para derivar os parâmetros de modelo linear.
[0296] Para detalhes, consulte o mecanismo aperfeiçoado 5 descrito acima.
[0297] O mecanismo aperfeiçoado 5 também pode ser usado em MMLM. Por exemplo, para MMLM, apenas o valor de luma máx/mín e valor de croma correspondente são usados para derivar os parâmetros de modelo linear. O mecanismo aperfeiçoado 5 é usado para derivar os valores de luma máx/mín e valores de croma correspondentes.
[0298] A Figura 23 é um fluxograma de um método exemplificativo 230 de decodificação de dados de vídeo. Na etapa 2310, um bloco de luma 911, 1211, 1311, 1411 e 1511 que corresponde a um bloco de croma 901 é determinado.
[0299] Na etapa 2320, um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas é determinado, em que as amostras de luma vizinhas reconstruídas incluem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e/ou uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma.
[0300] Na etapa 2330, dois pares de valor de luma e valor de croma são determinados de acordo com N amostras de luma vizinhas subamostradas e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas, e/ou M amostras de luma vizinhas subamostradas e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas. O valor mínimo das N amostras de luma vizinhas subamostradas não é menor que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, e o valor máximo das M amostras de luma vizinhas subamostradas não é maior que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, e M, N são um número inteiro positivo e maiores que 1. Em particular, um primeiro par de valor de luma e valor de croma é determinado de acordo com N amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas; um segundo par de valor de luma e valor de croma é determinado de acordo com M amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas.
[0301] Na etapa 2340, um ou mais parâmetros de modelo linear são determinados com base nos dois pares de valor de luma e valor de croma.
[0302] Na etapa 2350, um bloco preditivo do bloco de croma 901 é determinado pelo menos com base no um ou mais parâmetros de modelo linear, por exemplo, valores de croma preditos do bloco de croma 901 são gerados com base nos parâmetros de modelo linear e no bloco de luma subamostrado 1212, 1312, 1412 e 1512.
[0303] Na etapa 2360, o bloco de croma 901 é reconstruído com base no bloco preditivo. Por exemplo, adicionar o bloco preditivo a um bloco residual para reconstruir o bloco de croma 901.
[0304] Deve-se observar que, no caso de predição intra de MDLM com o uso de modo CCIP_A 1700, o conjunto de amostras de luma vizinhas reconstruídas inclui uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma, mas não inclui uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma. No caso de predição intra de MDLM com o uso de modo CCIP_L 1800, o conjunto de amostras de luma vizinhas reconstruídas não inclui uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e inclui uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma. No caso de predição intra de CCLM, o conjunto de amostras de luma vizinhas reconstruídas inclui uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma.
[0305] A Figura 24 é um fluxograma de um método exemplificativo 240 de codificação de dados de vídeo. Na etapa 2410, um bloco de luma 911, 1211, 1311, 1411 e 1511 que corresponde a um bloco de croma 901 é determinado.
[0306] Na etapa 2420, um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas é determinado, em que as amostras de luma vizinhas reconstruídas incluem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e/ou uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma.
[0307] Na etapa 2430, dois pares de valor de luma e valor de croma são determinados de acordo com N amostras de luma vizinhas subamostradas e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas, e/ou M amostras de luma vizinhas subamostradas e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas. O valor mínimo das N amostras de luma vizinhas subamostradas não é menor que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas. O valor máximo das M amostras de luma vizinhas subamostradas não é maior que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, e M, N são um número inteiro positivo e maiores que 1. Em particular, um primeiro par de valor de luma e valor de croma é determinado de acordo com N amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas; um segundo par de valor de luma e valor de croma é determinado de acordo com M amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas.
[0308] Na etapa 2440, um ou mais parâmetros de modelo linear são determinados com base nos dois pares de valor de luma e valor de croma.
[0309] Na etapa 2450, um bloco preditivo do bloco de croma 901 é determinado com base no um ou mais parâmetros de modelo linear, por exemplo, valores de croma preditos do bloco de croma 901 são gerados com base nos parâmetros de modelo linear e no bloco de luma subamostrado 1212, 1312, 1412 e 1512.
[0310] Na etapa 2460, o bloco de croma 901 é codificado com base no bloco preditivo. Os dados residuais entre o bloco de croma e o bloco preditivo são codificados e um fluxo de bits que inclui os dados residuais codificados é gerado. Por exemplo, subtrair o bloco preditivo do bloco de croma 901 para obter um bloco residual (dados residuais) e gerar um fluxo de bits que inclui os dados residuais codificados.
[0311] Deve-se observar que, no caso de predição intra de MDLM com o uso de modo CCIP_A 1700, o conjunto de amostras de luma vizinhas reconstruídas inclui uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma, mas não inclui uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma. No caso de predição intra de MDLM com o uso de modo CCIP_L 1800, o conjunto de amostras de luma vizinhas reconstruídas não inclui uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e inclui uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma. No caso de predição intra de CCLM, o conjunto de amostras de luma vizinhas reconstruídas inclui uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma de predição intra de CCLM.
[0312] A Figura 25 é um fluxograma de um método exemplificativo 250 de decodificação de dados de vídeo. Na etapa 2510, um bloco de luma 911 que corresponde a um bloco de croma 901 é determinado.
[0313] Na etapa 2520, um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas é determinado, em que as amostras de luma vizinhas reconstruídas incluem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e/ou uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma.
[0314] Na etapa 2530, quando N amostras de luma vizinhas subamostradas com o valor máximo e/ou M amostras de luma vizinhas subamostradas com o valor mínimo são incluídas no conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, dois pares de valor de luma e valor de croma são determinados de acordo com N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e/ou M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, em que M, N são um número inteiro positivo e maiores que 1. Em particular, dois pares de valor de luma e valor de croma são determinados de acordo com pelo menos um dentre os seguintes:
1. N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e uma amostra de luma vizinha subamostrada com o valor mínimo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com o valor mínimo;
2. uma amostra de luma vizinha subamostrada com o valor máximo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com os valores máximos, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, e
3. N amostras de luma vizinhas subamostradas com o valor máximo e
N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, em que M, N são um número inteiro positivo e maiores que
1.
[0315] Na etapa 2540, um ou mais parâmetros de modelo linear são determinados com base nos dois pares de valor de luma e valor de croma.
[0316] Na etapa 2550, um bloco preditivo é determinado com base no um ou mais parâmetros de modelo linear, por exemplo, valores de croma preditos do bloco de croma 901 são gerados com base nos parâmetros de modelo linear e no bloco de luma subamostrado 1212, 1312, 1412 e 1512.
[0317] Na etapa 2560, o bloco de croma 901 é reconstruído com base no bloco preditivo. Por exemplo, adicionar o bloco preditivo a um bloco residual para reconstruir o bloco de croma 901.
[0318] Deve-se observar que, no caso de predição intra de MDLM com o uso de modo CCIP_A 1700, o conjunto de amostras de luma vizinhas reconstruídas inclui uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma, mas não inclui uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma. No caso de predição intra de MDLM com o uso de modo CCIP_L 1800, o conjunto de amostras de luma vizinhas reconstruídas não inclui uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e inclui uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma. No caso de predição intra de CCLM, o conjunto de amostras de luma vizinhas reconstruídas inclui uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma de predição intra de CCLM.
[0319] A Figura 26 é um fluxograma de um método exemplificativo 260 de codificação de dados de vídeo. Na etapa 2610, um bloco de luma 911 que corresponde a um bloco de croma 901 é determinado.
[0320] Na etapa 2620, um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas é determinado, em que as amostras de luma vizinhas reconstruídas incluem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e/ou uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma.
[0321] Na etapa 2630, quando N amostras de luma vizinhas subamostradas com o valor máximo e/ou M amostras de luma vizinhas subamostradas com o valor mínimo são incluídas no conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, dois pares de valor de luma e valor de croma são determinados de acordo com N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e/ou M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, em que M, N são um número inteiro positivo e maiores que 1. Em particular, dois pares de valor de luma e valor de croma são determinados de acordo com pelo menos um dentre os seguintes:
1. N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e uma amostra de luma vizinha subamostrada com o valor mínimo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com o valor mínimo;
2. uma amostra de luma vizinha subamostrada com o valor máximo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com os valores máximos, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, e
3. N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, em que M, N são um número inteiro positivo e maiores que
1.
[0322] Na etapa 2640, um ou mais parâmetros de modelo linear são determinados com base nos dois pares de valor de luma e valor de croma.
[0323] Na etapa 2650, um bloco preditivo do bloco de croma 901 é determinado com base no um ou mais parâmetros de modelo linear, por exemplo, valores de croma preditos do bloco de croma 901 são gerados com base nos parâmetros de modelo linear e no bloco de luma subamostrado 1212, 1312, 1412 e 1512.
[0324] Na etapa 2660, o bloco de croma 901 é codificado com base no bloco preditivo. Os dados residuais entre o bloco de croma e o bloco preditivo são codificados e um fluxo de bits que inclui os dados residuais codificados é gerado. Por exemplo, subtrair o bloco preditivo do bloco de croma 901 para obter um bloco residual (dados residuais) e gerar um fluxo de bits que inclui os dados residuais codificados.
[0325] Deve-se observar que, no caso de predição intra de MDLM com o uso de modo CCIP_A 1700, o conjunto de amostras de luma vizinhas reconstruídas inclui uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma, mas não inclui uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma. No caso de predição intra de MDLM com o uso de modo CCIP_L 1800, o conjunto de amostras de luma vizinhas reconstruídas não inclui uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e inclui uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma. No caso de predição intra de CCLM, o conjunto de amostras de luma vizinhas reconstruídas inclui uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma de predição intra de CCLM.
[0326] Em um ou mais exemplos, as funções descritas podem ser implantadas em hardware, software, firmware ou qualquer combinação dos mesmos. Se implantadas em software, as funções podem ser armazenadas em ou transmitidas como uma ou mais instruções ou código em uma mídia legível por computador e executadas por uma unidade de processamento com base em hardware. As mídias legíveis por computador podem incluir mídias de armazenamento legíveis por computador, que correspondem a uma mídia tangível, tal como mídias de armazenamento de dados, ou mídias de comunicação incluindo qualquer mídia que facilita a transferência de um programa de computador de um local para outro, por exemplo, de acordo com um protocolo de comunicação. Desse modo, as mídias legíveis por computador podem corresponder, de modo geral, a (1) mídias de armazenamento legíveis por computador tangíveis que são não transitórias ou (2) uma mídia de comunicação, tal como um sinal ou onda portadora. As mídias de armazenamento de dados podem ser quaisquer mídias disponíveis que podem ser acessadas por um ou mais computadores ou um ou mais processadores para recuperar instruções, código e/ou estruturas de dados para implantação das técnicas descritas nesta revelação. Um produto de programa de computador pode incluir uma mídia legível por computador.
[0327] A título de exemplo e não limitação, tais mídias de armazenamento legíveis por computador podem incluir RAM, ROM, EEPROM, CD-ROM ou outro armazenamento de disco óptico, armazenamento de disco magnético, ou outros dispositivos de armazenamento magnético, memória flash, ou qualquer outra mídia que pode ser usada para armazenar código de programa desejado na forma de instruções ou estruturas de dados e que pode ser acessada por um computador. Além disso, qualquer conexão é denominada, de maneira apropriada, uma mídia legível por computador. Por exemplo, se as instruções forem transmitidas a partir de um site da web, servidor ou outra fonte remota com o uso de um cabo coaxial, cabo de fibra óptica, par trançado, linha de assinante digital (DSL) ou tecnologias sem fio, tais como infravermelho, rádio e micro-ondas, então, o cabo coaxial, cabo de fibra óptica, par trançado, DSL ou tecnologias sem fio, tais como infravermelho, rádio e micro-ondas estão incluídos na definição de mídia. Deve-se entender, entretanto, que mídias de armazenamento legíveis por computador e mídias de armazenamento de dados não incluem conexões, ondas portadoras, sinais ou outras mídias transitórias, mas, em vez disso, se referem a mídias de armazenamento não transitórias, tangíveis. Disco magnético e disco óptico, conforme usado neste documento, incluem disco compacto (CD), disco a laser, disco óptico, disco versátil digital (DVD), disquete e disco Blu-ray em que discos magnéticos normalmente reproduzem dados magneticamente, enquanto discos ópticos reproduzem dados opticamente com lasers. Combinações dos mesmos também devem estar incluídas no escopo de mídias legíveis por computador.
[0328] As instruções podem ser executadas por um ou mais processadores, tais como um ou mais processadores de sinal digital (DSPs), microprocessadores de propósito geral, circuitos integrados de aplicação específica (ASICs), arranjos lógicos programáveis em campo (FPGAs) ou outros circuitos lógicos discretos ou integrados equivalentes. Assim, o termo “processador”, conforme usado no presente documento, pode se referir a qualquer uma dentre a estrutura antecedente ou qualquer outra estrutura adequada para implantação das técnicas descritas no presente documento. Além disso, em alguns aspectos, a funcionalidade descrita no presente documento pode ser fornecida dentro de módulos de hardware e/ou software dedicados configurados para codificação e decodificação, ou incorporados em um codec combinado. Além disso, as técnicas podem ser totalmente implantadas em um ou mais circuitos ou elementos lógicos.
[0329] As técnicas desta revelação podem ser implantadas em uma grande variedade de dispositivos ou aparelhos, incluindo um aparelho telefônico sem fio, um circuito integrado (IC) ou um conjunto de ICs (por exemplo, um conjunto de chips). Vários componentes, módulos ou unidades são descritos nesta revelação para enfatizar aspectos funcionais de dispositivos configurados para realizar as técnicas reveladas, mas não exigem, necessariamente, realização por diferentes unidades de hardware. Em vez disso, conforme descrito acima, várias unidades podem ser combinadas em uma unidade de hardware de codec ou fornecidas por uma coleção de unidades de hardware interoperativas, incluindo um ou mais processadores, conforme descrito acima, em conjunto com software e/ou firmware adequado.
[0330] Embora diversas modalidades tenham sido fornecidas na presente revelação, deve-se entender que os sistemas e métodos revelados podem ser incorporados em muitas outras formas específicas sem se afastar do espírito ou escopo da presente revelação. Os presentes exemplos devem ser considerados como ilustrativos e não restritivos, e a intenção não deve ser limitada aos detalhes fornecidos no presente documento. Por exemplo, os vários elementos ou componentes podem ser combinados ou integrados em outro sistema ou determinados recursos podem ser omitidos, ou não implantados.
[0331] Além disso, técnicas, sistemas, subsistemas e métodos descritos e ilustrados nas várias modalidades como discretos ou separados podem ser combinados ou integrados a outros sistemas, módulos, técnicas ou métodos sem se afastar do escopo da presente revelação.
Outros itens mostrados ou discutidos como acoplados ou diretamente acoplados ou que se comunicam um com o outro podem ser acoplados indiretamente ou se comunicar através de alguma interface, dispositivo ou componente intermediário, seja de modo elétrico, mecânico ou de outro modo.
Outros exemplos de mudanças, substituições e alterações são verificados pelos versados na técnica e podem ser realizados sem se afastar do espírito e escopo revelados no presente documento.

Claims (103)

REIVINDICAÇÕES
1. Método de decodificação de dados de vídeo, CARACTERIZADO pelo fato de que compreende: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, em que as amostras de luma vizinhas reconstruídas compreendem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma ou uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma; determinar um primeiro par de valor de luma e valor de croma de acordo com N amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas; determinar um segundo par de valor de luma e valor de croma de acordo com M amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas; determinar um ou mais parâmetros de modelo linear com base no primeiro e segundo pares de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e reconstruir o bloco de croma com base no bloco preditivo; em que um valor mínimo das N amostras de luma vizinhas subamostradas não é menor que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas, e um valor máximo das M amostras de luma vizinhas subamostradas não é maior que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas, e M, N são um número inteiro positivo e maiores que 1.
2. Método de decodificação de dados de vídeo, CARACTERIZADO pelo fato de que compreende: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, em que as amostras de luma vizinhas reconstruídas compreendem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma; determinar um primeiro par de valor de luma e valor de croma de acordo com N amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas, e determinar um segundo par de valor de luma e valor de croma de acordo com M amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas; determinar um ou mais parâmetros de modelo linear com base no primeiro e segundo pares de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e reconstruir o bloco de croma com base no bloco preditivo; em que o valor mínimo das N amostras de luma vizinhas subamostradas não é menor que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas, e o valor máximo das M amostras de luma vizinhas subamostradas não é maior que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas, e M, N são um número inteiro positivo e maiores que 1.
3. Método, de acordo com a reivindicação 1 ou 2, CARACTERIZADO pelo fato de que o conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas consiste: nas N amostras de luma vizinhas subamostradas e nas M amostras de luma vizinhas subamostradas.
4. Método, de acordo com qualquer uma das reivindicações 1 a 3, CARACTERIZADO pelo fato de que o valor de luma do primeiro par de valor de luma e valor de croma é o valor de luma médio das N amostras de luma vizinhas subamostradas, e o valor de croma do primeiro par de valor de luma e valor de croma é o valor de croma médio das N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas; e em que o valor de luma do segundo par de valor de luma e valor de croma é o valor de luma médio das M amostras de luma vizinhas subamostradas, e o valor de croma do segundo par de valor de luma e valor de croma é o valor de croma médio das M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas.
5. Método, de acordo com qualquer uma das reivindicações 1 a 3, CARACTERIZADO pelo fato de que o valor de luma do primeiro par de valor de luma e valor de croma é o valor de luma médio das referidas N amostras de luma vizinhas subamostradas dentro de uma primeira faixa de valores de luma, e o valor de croma do primeiro par de valor de luma e valor de croma é o valor de croma médio das referidas N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas dentro da primeira faixa de valores de luma; e em que o valor de luma do segundo par de valor de luma e valor de croma é o valor de luma médio das referidas M amostras de luma vizinhas subamostradas dentro de uma segunda faixa de valores de luma, e o valor de croma do segundo par de valor de luma e valor de croma é o valor de croma médio das referidas M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas dentro da segunda faixa de valores de luma.
6. Método, de acordo com a reivindicação 5, CARACTERIZADO pelo fato de que o primeiro valor de luma está dentro de uma faixa de [MaxLumaValue- T1, MaxLumaValue]; e o segundo valor de luma está dentro de uma faixa de [MinLumaValue, MinLumaValue+T2]; em que os MaxLumaValue e MinLumaValue representam, respectivamente, o valor de luma máximo e o valor de luma mínimo no conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, e T1, T2 são limiares predefinidos.
7. Método, de acordo com qualquer uma das reivindicações 1 a 6, CARACTERIZADO pelo fato de que M e N são iguais.
8. Método, de acordo com a reivindicação 7, CARACTERIZADO pelo fato de que M=N=2.
9. Método, de acordo com qualquer uma das reivindicações 1 a 6, CARACTERIZADO pelo fato de que M e N são definidos com base no tamanho de bloco do bloco de luma.
10. Método, de acordo com qualquer uma das reivindicações 1 a 6 e reivindicação 9, CARACTERIZADO pelo fato de que M=(W+H)>>t, N=(W+H)>>r, em que os t e r são o número de bits deslocados a direita, W indica a largura do bloco de luma e H indica a altura do bloco de luma.
11. Método, de acordo com qualquer uma das reivindicações 1 a 10, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas compreendem: uma amostra de luma vizinha superior direita fora do bloco de luma e amostras de luma que estão à direita da amostra de luma vizinha superior direita fora do bloco de luma; e/ou uma amostra de luma vizinha inferior esquerda fora do bloco de luma e amostras de luma que estão abaixo da amostra de luma vizinha inferior esquerda fora do bloco de luma.
12. Método, de acordo com qualquer uma das reivindicações 1 a 11, CARACTERIZADO pelo fato de que a pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação superior, e a pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação à esquerda.
13. Método, de acordo com qualquer uma das reivindicações 1 a 12, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas excluem amostras de luma que estão acima de uma amostra de luma vizinha superior esquerda fora do bloco de luma, e/ou amostras de luma que estão à esquerda da amostra de luma vizinha superior esquerda.
14. Método, de acordo com qualquer uma das reivindicações 1 a 13, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas compreendem um primeiro conjunto de amostras de luma vizinhas reconstruídas e um segundo conjunto de amostras de luma vizinhas reconstruídas, e em que o primeiro conjunto de amostras de luma vizinhas reconstruídas compreende amostras de luma vizinhas reconstruídas com o valor de luma sendo menor que ou igual a um limiar; e o segundo conjunto de amostras de luma vizinhas reconstruídas compreende amostras de luma vizinhas reconstruídas com o valor de luma sendo maior que o limiar.
15. Método, de acordo com qualquer uma das reivindicações 1 a 14, CARACTERIZADO pelo fato de que o conjunto de amostras subamostradas das amostras de luma vizinhas reconstruídas é obtido ao subamostrar as amostras de luma vizinhas reconstruídas.
16. Método de codificação de dados de vídeo, CARACTERIZADO pelo fato de que compreende: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, em que as amostras de luma vizinhas reconstruídas compreendem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma ou uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma; determinar um primeiro par de valor de luma e valor de croma de acordo com N amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas; determinar um segundo par de valor de luma e valor de croma de acordo com M amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas; determinar um ou mais parâmetros de modelo linear com base nos primeiro e segundo pares de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e codificar o bloco de croma com base no bloco preditivo; em que o valor mínimo das N amostras de luma vizinhas subamostradas não é menor que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas, e o valor máximo das M amostras de luma vizinhas subamostradas não é maior que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas, e M, N são um número inteiro positivo e maiores que 1.
17. Método de codificação de dados de vídeo, CARACTERIZADO pelo fato de que compreende: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, em que as amostras de luma vizinhas reconstruídas compreendem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma; determinar um primeiro par de valor de luma e valor de croma de acordo com N amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas; determinar um segundo par de valor de luma e valor de croma de acordo com M amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas; determinar um ou mais parâmetros de modelo linear com base nos primeiro e segundo pares de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e codificar o bloco de croma com base no bloco preditivo; em que o valor mínimo das N amostras de luma vizinhas subamostradas não é menor que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas, e o valor máximo das M amostras de luma vizinhas subamostradas não é maior que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas, e M, N são um número inteiro positivo e maiores que 1.
18. Método, de acordo com a reivindicação 16 ou 17,
CARACTERIZADO pelo fato de que o conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas consiste: nas N amostras de luma vizinhas subamostradas e nas M amostras de luma vizinhas subamostradas.
19. Método, de acordo com qualquer uma das reivindicações 16 a 18, CARACTERIZADO pelo fato de que o valor de luma do primeiro par de valor de luma e valor de croma é o valor de luma médio das referidas N amostras de luma vizinhas subamostradas, e o valor de croma do primeiro par de valor de luma e valor de croma é o valor de croma médio das referidas N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas; e em que o valor de luma do segundo par de valor de luma e valor de croma é o valor de luma médio das referidas M amostras de luma vizinhas subamostradas, e o valor de croma do segundo par de valor de luma e valor de croma é o valor de croma médio das referidas M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas.
20. Método, de acordo com qualquer uma das reivindicações 16 a 18, CARACTERIZADO pelo fato de que o valor de luma do primeiro par de valor de luma e valor de croma é o valor de luma médio das referidas N amostras de luma vizinhas subamostradas dentro de uma primeira faixa de valores de luma, e o valor de croma do primeiro par de valor de luma e valor de croma é o valor de croma médio das referidas N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas dentro da primeira faixa de valores de luma; e em que o valor de luma do segundo par de valor de luma e valor de croma é o valor de luma médio das referidas M amostras de luma vizinhas subamostradas dentro de uma segunda faixa de valores de luma, e o valor de croma do segundo par de valor de luma e valor de croma é o valor de croma médio das referidas M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas dentro da segunda faixa de valores de luma.
21. Método, de acordo com a reivindicação 20, CARACTERIZADO pelo fato de que o primeiro valor de luma está dentro de uma faixa de [MaxLumaValue-
T1, MaxLumaValue]; e/ou, o segundo valor de luma está dentro de uma faixa de [MinLumaValue, MinLumaValue+T2], em que os MaxLumaValue e MinLumaValue representam, respectivamente, o valor de luma máximo e o valor de luma mínimo no conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, e T1, T2 são limiares predefinidos.
22. Método, de acordo com qualquer uma das reivindicações 16 a 21, CARACTERIZADO pelo fato de que M e N são iguais.
23. Método, de acordo com a reivindicação 22, CARACTERIZADO pelo fato de que M=N=2.
24. Método, de acordo com qualquer uma das reivindicações 16 a 21, CARACTERIZADO pelo fato de que M e N são definidos com base no tamanho de bloco do bloco de luma.
25. Método, de acordo com qualquer uma das reivindicações 16 a 21 e reivindicação 24, CARACTERIZADO pelo fato de que M=(W+H)>>t, N=(W+H)>>r, em que os t e r são os respectivos números de bits deslocados a direita, W indica a largura do bloco de luma e H indica a altura do bloco de luma.
26. Método, de acordo com qualquer uma das reivindicações 16 a 25, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas compreendem: uma amostra de luma vizinha superior direita fora do bloco de luma e amostras de luma que estão à direita da amostra de luma vizinha superior direita fora do bloco de luma; e/ou uma amostra de luma vizinha inferior esquerda fora do bloco de luma e amostras de luma que estão abaixo da amostra de luma vizinha inferior esquerda fora do bloco de luma.
27. Método, de acordo com qualquer uma das reivindicações 16 a 26, CARACTERIZADO pelo fato de que a pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação superior, e a pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação à esquerda.
28. Método, de acordo com qualquer uma das reivindicações 16 a 27, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas excluem amostras de luma que estão acima de uma amostra de luma vizinha superior esquerda fora do bloco de luma, e/ou amostras de luma que estão à esquerda da amostra de luma vizinha superior esquerda.
29. Método, de acordo com qualquer uma das reivindicações 16 a 28, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas compreendem um primeiro conjunto de amostras de luma vizinhas reconstruídas e um segundo conjunto de amostras de luma vizinhas reconstruídas, e em que o primeiro conjunto de amostras de luma vizinhas reconstruídas compreende amostras de luma vizinhas reconstruídas com o valor de luma sendo menor que ou igual a um limiar; e o segundo conjunto de amostras de luma vizinhas reconstruídas compreende amostras de luma vizinhas reconstruídas com o valor de luma sendo maior que o limiar.
30. Método, de acordo com qualquer uma das reivindicações 16 a 29, CARACTERIZADO pelo fato de que o conjunto de amostras subamostradas das amostras de luma vizinhas reconstruídas é obtido ao subamostrar as amostras de luma vizinhas reconstruídas.
31. Dispositivo de decodificação de dados de vídeo, CARACTERIZADO pelo fato de que compreende: uma memória de dados de vídeo e um decodificador de vídeo; em que o decodificador de vídeo é configurado para: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, em que as amostras de luma vizinhas reconstruídas compreendem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma ou uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma; determinar um primeiro par de valor de luma e valor de croma de acordo com N amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas; determinar um segundo par de valor de luma e valor de croma de acordo com M amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas; determinar um ou mais parâmetros de modelo linear com base nos primeiro e segundo pares de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e reconstruir o bloco de croma com base no bloco preditivo; em que o valor mínimo das N amostras de luma vizinhas subamostradas não é menor que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas, e o valor máximo das M amostras de luma vizinhas subamostradas não é maior que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas, e M, N são um número inteiro positivo e maiores que 1.
32. Dispositivo de decodificação de dados de vídeo, CARACTERIZADO pelo fato de que compreende: uma memória de dados de vídeo e um decodificador de vídeo; em que o decodificador de vídeo é configurado para: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, em que as amostras de luma vizinhas reconstruídas compreendem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma; determinar um primeiro par de valor de luma e valor de croma de acordo com N amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas; determinar um segundo par de valor de luma e valor de croma de acordo com M amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas; determinar um ou mais parâmetros de modelo linear com base nos primeiro e segundo pares de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e reconstruir o bloco de croma com base no bloco preditivo; em que o valor mínimo das N amostras de luma vizinhas subamostradas não é menor que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas, e o valor máximo das M amostras de luma vizinhas subamostradas não é maior que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas, e M, N são um número inteiro positivo e maiores que 1.
33. Dispositivo, de acordo com a reivindicação 31 ou 32, CARACTERIZADO pelo fato de que o conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas consiste: nas N amostras de luma vizinhas subamostradas e nas M amostras de luma vizinhas subamostradas.
34. Dispositivo, de acordo com qualquer uma das reivindicações 31 a 33, CARACTERIZADO pelo fato de que o valor de luma do primeiro par de valor de luma e valor de croma é o valor de luma médio das referidas N amostras de luma vizinhas subamostradas, e o valor de croma do primeiro par de valor de luma e valor de croma é o valor de croma médio das referidas N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas; e em que o valor de luma do segundo par de valor de luma e valor de croma é o valor de luma médio das referidas M amostras de luma vizinhas subamostradas, e o valor de croma do segundo par de valor de luma e valor de croma é o valor de croma médio das referidas M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas.
35. Dispositivo, de acordo com qualquer uma das reivindicações 31 a 33, CARACTERIZADO pelo fato de que o valor de luma do primeiro par de valor de luma e valor de croma é o valor de luma médio das referidas N amostras de luma vizinhas subamostradas dentro de uma primeira faixa de valores de luma, e o valor de croma do primeiro par de valor de luma e valor de croma é o valor de croma médio das referidas N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas dentro da primeira faixa de valores de luma; e em que o valor de luma do segundo par de valor de luma e valor de croma é o valor de luma médio das referidas M amostras de luma vizinhas subamostradas dentro de uma segunda faixa de valores de luma, e o valor de croma do segundo par de valor de luma e valor de croma é o valor de croma médio das referidas M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas dentro da segunda faixa de valores de luma.
36. Dispositivo, de acordo com a reivindicação 35, CARACTERIZADO pelo fato de que o primeiro valor de luma está dentro de uma faixa de [MaxLumaValue- T1, MaxLumaValue]; e o segundo valor de luma está dentro de uma faixa de [MinLumaValue, MinLumaValue+T2]; em que os MaxLumaValue e MinLumaValue representam, respectivamente, o valor de luma máximo e o valor de luma mínimo no conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, e T1, T2 são limiares predefinidos.
37. Dispositivo, de acordo com qualquer uma das reivindicações 31 a 36, CARACTERIZADO pelo fato de que M e N são iguais.
38. Dispositivo, de acordo com a reivindicação 37, CARACTERIZADO pelo fato de que M=N=2.
39. Dispositivo, de acordo com qualquer uma das reivindicações 31 a 36, CARACTERIZADO pelo fato de que M e N são definidos com base no tamanho de bloco do bloco de luma.
40. Dispositivo, de acordo com qualquer uma das reivindicações 31 a 36 e 39, CARACTERIZADO pelo fato de que M=(W+H)>>t, N=(W+H)>>r,
em que os t e r são os respectivos números de bits deslocados a direita, W indica a largura do bloco de luma e H indica a altura do bloco de luma.
41. Dispositivo, de acordo com qualquer uma das reivindicações 31 a 40, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas compreendem: uma amostra de luma vizinha superior direita fora do bloco de luma e amostras de luma que estão à direita da amostra de luma vizinha superior direita fora do bloco de luma; e/ou uma amostra de luma vizinha inferior esquerda fora do bloco de luma e amostras de luma que estão abaixo da amostra de luma vizinha inferior esquerda fora do bloco de luma.
42. Dispositivo, de acordo com qualquer uma das reivindicações 31 a 41, CARACTERIZADO pelo fato de que a pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação superior, e a pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação à esquerda.
43. Dispositivo, de acordo com qualquer uma das reivindicações 31 a 42, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas excluem amostras de luma que estão acima de uma amostra de luma vizinha superior esquerda fora do bloco de luma, e/ou amostras de luma que estão à esquerda da amostra de luma vizinha superior esquerda.
44. Dispositivo, de acordo com qualquer uma das reivindicações 31 a 43, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas compreendem um primeiro conjunto de amostras de luma vizinhas reconstruídas e um segundo conjunto de amostras de luma vizinhas reconstruídas, e em que o primeiro conjunto de amostras de luma vizinhas reconstruídas compreende amostras de luma vizinhas reconstruídas com o valor de luma sendo menor que ou igual a um limiar; e o segundo conjunto de amostras de luma vizinhas reconstruídas compreende amostras de luma vizinhas reconstruídas com o valor de luma sendo maior que o limiar.
45. Dispositivo, de acordo com qualquer uma das reivindicações 31 a 44, CARACTERIZADO pelo fato de que o conjunto de amostras subamostradas das amostras de luma vizinhas reconstruídas é obtido ao subamostrar as amostras de luma vizinhas reconstruídas.
46. Dispositivo de codificação de dados de vídeo, CARACTERIZADO pelo fato de que compreende: uma memória de dados de vídeo e um codificador de vídeo; em que o codificador de vídeo é configurado para: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, em que as amostras de luma vizinhas reconstruídas compreendem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma ou uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma; determinar um primeiro par de valor de luma e valor de croma de acordo com N amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas; determinar um segundo par de valor de luma e valor de croma de acordo com M amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas; determinar um ou mais parâmetros de modelo linear com base nos primeiro e segundo pares de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e codificar o bloco de croma com base no bloco preditivo; em que o valor mínimo das N amostras de luma vizinhas subamostradas não é menor que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas, e o valor máximo das M amostras de luma vizinhas subamostradas não é maior que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas, e M, N são um número inteiro positivo e maiores que 1.
47. Dispositivo de codificação de dados de vídeo, CARACTERIZADO pelo fato de que compreende: uma memória de dados de vídeo e um codificador de vídeo; em que o codificador de vídeo é configurado para: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, em que as amostras de luma vizinhas reconstruídas compreendem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma; determinar um primeiro par de valor de luma e valor de croma de acordo com N amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas; determinar um segundo par de valor de luma e valor de croma de acordo com M amostras de luma vizinhas subamostradas do conjunto de amostras subamostradas e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas; determinar um ou mais parâmetros de modelo linear com base nos primeiro e segundo pares de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e codificar o bloco de croma com base no bloco preditivo; em que o valor mínimo das N amostras de luma vizinhas subamostradas não é menor que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas, e o valor máximo das M amostras de luma vizinhas subamostradas não é maior que o valor de luma das amostras de luma vizinhas subamostradas remanescentes do conjunto de amostras subamostradas, e M, N são um número inteiro positivo e maiores que 1.
48. Dispositivo, de acordo com a reivindicação 46 ou 47, CARACTERIZADO pelo fato de que o conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas consiste nas N amostras de luma vizinhas subamostradas e nas M amostras de luma vizinhas subamostradas.
49. Dispositivo, de acordo com qualquer uma das reivindicações 46 a 48, CARACTERIZADO pelo fato de que o valor de luma do primeiro par de valor de luma e valor de croma é o valor de luma médio das referidas N amostras de luma vizinhas subamostradas, e o valor de croma do primeiro par de valor de luma e valor de croma é o valor de croma médio das referidas N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas; e em que o valor de luma do segundo par de valor de luma e valor de croma é o valor de luma médio das referidas M amostras de luma vizinhas subamostradas, e o valor de croma do segundo par de valor de luma e valor de croma é o valor de croma médio das referidas M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas.
50. Dispositivo, de acordo com qualquer uma das reivindicações 46 a 48, CARACTERIZADO pelo fato de que o valor de luma do primeiro par de valor de luma e valor de croma é o valor de luma médio das referidas N amostras de luma vizinhas subamostradas dentro de uma primeira faixa de valores de luma, e o valor de croma do primeiro par de valor de luma e valor de croma é o valor de croma médio das referidas N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas dentro da primeira faixa de valores de luma; e em que o valor de luma do segundo par de valor de luma e valor de croma é o valor de luma médio das referidas M amostras de luma vizinhas subamostradas dentro de uma segunda faixa de valores de luma, e o valor de croma do segundo par de valor de luma e valor de croma é o valor de croma médio das referidas M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas dentro da segunda faixa de valores de luma.
51. Dispositivo, de acordo com a reivindicação 50, CARACTERIZADO pelo fato de que o primeiro valor de luma está dentro de uma faixa de [MaxLumaValue- T1, MaxLumaValue]; e/ou, o segundo valor de luma está dentro de uma faixa de [MinLumaValue,
MinLumaValue+T2], em que os MaxLumaValue e MinLumaValue representam, respectivamente, o valor de luma máximo e o valor de luma mínimo no conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, e T1, T2 são limiares predefinidos.
52. Dispositivo, de acordo com qualquer uma das reivindicações 46 a 51, CARACTERIZADO pelo fato de que M e N são iguais.
53. Dispositivo, de acordo com a reivindicação 52, CARACTERIZADO pelo fato de que M=N=2.
54. Dispositivo, de acordo com qualquer uma das reivindicações 46 a 51, CARACTERIZADO pelo fato de que M e N são definidos com base no tamanho de bloco do bloco de luma.
55. Dispositivo, de acordo com qualquer uma das reivindicações 46 a 51 e 54, CARACTERIZADO pelo fato de que M=(W+H)>>t, N=(W+H)>>r, em que os t e r são os respectivos números de bits deslocados a direita, W indica a largura do bloco de luma e H indica a altura do bloco de luma.
56. Dispositivo, de acordo com qualquer uma das reivindicações 46 a 55, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas compreendem adicionalmente: uma amostra de luma vizinha superior direita fora do bloco de luma e amostras de luma que estão à direita da amostra de luma vizinha superior direita fora do bloco de luma; e/ou uma amostra de luma vizinha inferior esquerda fora do bloco de luma e amostras de luma que estão abaixo da amostra de luma vizinha inferior esquerda fora do bloco de luma.
57. Dispositivo, de acordo com qualquer uma das reivindicações 46 a 56, CARACTERIZADO pelo fato de que a pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação superior, e a pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação à esquerda.
58. Dispositivo, de acordo com qualquer uma das reivindicações 46 a 57, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas excluem amostras de luma que estão acima de uma amostra de luma vizinha superior esquerda fora do bloco de luma, e/ou amostras de luma que estão à esquerda da amostra de luma vizinha superior esquerda.
59. Dispositivo, de acordo com qualquer uma das reivindicações 46 a 58, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas compreendem um primeiro conjunto de amostras de luma vizinhas reconstruídas e um segundo conjunto de amostras de luma vizinhas reconstruídas, e em que o primeiro conjunto de amostras de luma vizinhas reconstruídas compreende amostras de luma vizinhas reconstruídas com o valor de luma sendo menor que ou igual a um limiar; e o segundo conjunto de amostras de luma vizinhas reconstruídas compreende amostras de luma vizinhas reconstruídas com o valor de luma sendo maior que o limiar.
60. Dispositivo, de acordo com qualquer uma das reivindicações 46 a 59, CARACTERIZADO pelo fato de que o conjunto de amostras subamostradas das amostras de luma vizinhas reconstruídas é obtido ao subamostrar as amostras de luma vizinhas reconstruídas.
61. Método para decodificar dados de vídeo, CARACTERIZADO pelo fato de que compreende: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, em que as amostras de luma vizinhas reconstruídas compreendem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma, ou uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma; quando a pelo menos uma dentre as N amostras de luma vizinhas subamostradas com o valor máximo e as M amostras de luma vizinhas subamostradas com o valor mínimo estiverem compreendidas no conjunto de amostras subamostradas, determinar dois pares de valor de luma e valor de croma de acordo com pelo menos um dentre os seguintes:
1. N amostras de luma vizinhas subamostradas com o valor máximo e
N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e uma amostra de luma vizinha subamostrada com o valor mínimo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com o valor mínimo;
2. uma amostra de luma vizinha subamostrada com o valor máximo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com os valores máximos, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, e
3. N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, em que M, N são um número inteiro positivo e maiores que 1; determinar um ou mais parâmetros de modelo linear com base nos dois pares de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e reconstruir o bloco de croma com base no bloco preditivo.
62. Método para decodificar dados de vídeo, CARACTERIZADO pelo fato de que compreende: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, em que as amostras de luma vizinhas reconstruídas compreendem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma; quando a pelo menos uma dentre as N amostras de luma vizinhas subamostradas com o valor máximo e as M amostras de luma vizinhas subamostradas com o valor mínimo estiverem compreendidas no conjunto de amostras subamostradas, determinar dois pares de valor de luma e valor de croma de acordo com pelo menos um dentre os seguintes:
1. N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e uma amostra de luma vizinha subamostrada com o valor mínimo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com o valor mínimo;
2. uma amostra de luma vizinha subamostrada com o valor máximo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com os valores máximos, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, e
3. N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, em que M, N são um número inteiro positivo e maiores que 1; determinar um ou mais parâmetros de modelo linear com base nos dois pares de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e reconstruir o bloco de croma com base no bloco preditivo.
63. Método, de acordo com a reivindicação 61 ou 62, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas compreendem adicionalmente: uma amostra de luma vizinha superior direita fora do bloco de luma e amostras de luma vizinhas que estão à direita da amostra de luma vizinha superior direita fora do bloco de luma; e/ou uma amostra de luma vizinha inferior esquerda fora do bloco de luma e amostras de luma vizinhas que estão abaixo da amostra de luma vizinha inferior esquerda fora do bloco de luma.
64. Método, de acordo com qualquer uma das reivindicações 61 a 63, CARACTERIZADO pelo fato de que a pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação superior, e a pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação à esquerda.
65. Método, de acordo com qualquer uma das reivindicações 61 a 64, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas excluem amostras de luma que estão acima de uma amostra de luma vizinha superior esquerda fora do bloco de luma, e/ou amostras de luma que estão à esquerda da amostra de luma vizinha superior esquerda.
66. Método, de acordo com qualquer uma das reivindicações 61 a 65, CARACTERIZADO pelo fato de que a etapa de determinar dois pares de valor de luma e valor de croma, compreende: determinar dois pares de valor de luma e valor de croma com base em diferença de valor de croma entre um valor de croma de cada um dentre uma primeira pluralidade de pares de valor de luma e valor de croma e um valor de croma de cada um dentre uma segunda pluralidade de pares de valor de luma e valor de croma, em que referido cada um dentre a primeira pluralidade de pares compreende uma dentre N amostras de luma vizinhas subamostradas com o valor máximo e a amostra de croma vizinha reconstruída correspondente, e referido cada um dentre a segunda pluralidade de pares compreende uma dentre M amostras de luma vizinhas subamostradas com o valor mínimo e a amostra de croma vizinha reconstruída correspondente.
67. Método, de acordo com a reivindicação 66, CARACTERIZADO pelo fato de que a menor diferença de valor de croma está entre um valor de croma de um primeiro par de valor de luma e valor de croma e um valor de croma de um segundo par de valor de luma e valor de croma, e o primeiro par e o segundo par que têm a menor diferença de valor de croma são escolhidos como referidos dois pares de valor de luma e valor de croma; ou a maior diferença de valor de croma está entre um valor de croma de um terceiro par de valor de luma e valor de croma e um valor de croma de um quarto par de valor de luma e valor de croma, e o terceiro par e o quarto par que têm a maior diferença de valor de croma são escolhidos como referidos dois pares de valor de luma e valor de croma.
68. Método, de acordo com qualquer uma das reivindicações 61 a 65, CARACTERIZADO pelo fato de que a etapa de determinar dois pares de valor de luma e valor de croma compreende: determinar um quinto par de valor de luma e valor de croma e um sexto par de valor de luma e valor de croma como referidos dois pares de valor de luma e valor de croma, em que o valor de croma correspondente do quinto par de valor de luma e valor de croma é o valor de croma médio das N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com o valor máximo, e o valor de croma correspondente do sexto par de valor de luma e valor de croma é o valor de croma médio das M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo.
69. Método, de acordo com qualquer uma das reivindicações 61 a 68, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas compreendem um primeiro conjunto de amostras de luma vizinhas reconstruídas e um segundo conjunto de amostras de luma vizinhas reconstruídas, e em que o primeiro conjunto de amostras de luma vizinhas reconstruídas compreende amostras de luma vizinhas reconstruídas com o valor de luma sendo menor que ou igual a um limiar; e o segundo conjunto de amostras de luma vizinhas reconstruídas compreende amostras de luma vizinhas reconstruídas com o valor de luma sendo maior que o limiar.
70. Método, de acordo com qualquer uma das reivindicações 61 a 69, CARACTERIZADO pelo fato de que o conjunto de amostras subamostradas das amostras de luma vizinhas reconstruídas é obtido ao subamostrar as amostras de luma vizinhas reconstruídas.
71. Dispositivo de decodificação de dados de vídeo, CARACTERIZADO pelo fato de que compreende: uma memória de dados de vídeo e um decodificador de vídeo;
em que o decodificador de vídeo é configurado para: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, em que as amostras de luma vizinhas reconstruídas compreendem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma, ou uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma; quando a pelo menos uma dentre as N amostras de luma vizinhas subamostradas com o valor máximo e as M amostras de luma vizinhas subamostradas com o valor mínimo estiverem compreendidas no conjunto de amostras subamostradas, determinar dois pares de valor de luma e valor de croma de acordo com pelo menos um dentre os seguintes:
4. N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e uma amostra de luma vizinha subamostrada com o valor mínimo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com o valor mínimo;
5. uma amostra de luma vizinha subamostrada com o valor máximo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com os valores máximos, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, e
6. N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, em que M, N são um número inteiro positivo e maiores que 1; determinar um ou mais parâmetros de modelo linear com base nos dois pares de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e reconstruir o bloco de croma com base no bloco preditivo.
72. Dispositivo de decodificação de dados de vídeo, CARACTERIZADO pelo fato de que compreende: uma memória de dados de vídeo e um decodificador de vídeo; em que o decodificador de vídeo é configurado para: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, em que as amostras de luma vizinhas reconstruídas compreendem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma; quando a pelo menos uma dentre as N amostras de luma vizinhas subamostradas com o valor máximo e as M amostras de luma vizinhas subamostradas com o valor mínimo estiverem compreendidas no conjunto de amostras subamostradas, determinar dois pares de valor de luma e valor de croma de acordo com pelo menos um dentre os seguintes:
1. N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e uma amostra de luma vizinha subamostrada com o valor mínimo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com o valor mínimo;
2. uma amostra de luma vizinha subamostrada com o valor máximo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com os valores máximos, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, e
3. N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, em que M, N são um número inteiro positivo e maiores que 1; determinar um ou mais parâmetros de modelo linear com base nos dois pares de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e reconstruir o bloco de croma com base no bloco preditivo
73. Dispositivo, de acordo com a reivindicação 71 ou 72, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas compreendem adicionalmente: uma amostra de luma vizinha superior direita fora do bloco de luma e amostras de luma vizinhas que estão à direita da amostra de luma vizinha superior direita fora do bloco de luma; e/ou uma amostra de luma vizinha inferior esquerda fora do bloco de luma e amostras de luma vizinhas que estão abaixo da amostra de luma vizinha inferior esquerda fora do bloco de luma.
74. Dispositivo, de acordo com qualquer uma das reivindicações 71 a 73, CARACTERIZADO pelo fato de que a pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação superior, e a pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação à esquerda.
75. Dispositivo, de acordo com qualquer uma das reivindicações 71 a 74, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas excluem amostras de luma que estão acima de uma amostra de luma vizinha superior esquerda fora do bloco de luma, e/ou amostras de luma que estão à esquerda da amostra de luma vizinha superior esquerda.
76. Dispositivo, de acordo com qualquer uma das reivindicações 71 a 75, CARACTERIZADO pelo fato de que o decodificador de vídeo é configurado para: determinar dois pares de valor de luma e valor de croma com base em diferença de valor de croma entre um valor de croma de cada um dentre uma primeira pluralidade de pares de valor de luma e valor de croma e um valor de croma de cada um dentre uma segunda pluralidade de pares de valor de luma e valor de croma, em que referido cada um dentre a primeira pluralidade de pares compreende uma dentre N amostras de luma vizinhas subamostradas com o valor máximo e a amostra de croma vizinha reconstruída correspondente, e referido cada um dentre a segunda pluralidade de pares compreende uma dentre M amostras de luma vizinhas subamostradas com o valor mínimo e a amostra de croma vizinha reconstruída correspondente.
77. Dispositivo, de acordo com a reivindicação 76, CARACTERIZADO pelo fato de que a menor diferença de valor de croma está entre um valor de croma de um primeiro par de valor de luma e valor de croma e um valor de croma de um segundo par de valor de luma e valor de croma, e o primeiro par e o segundo par que têm a menor diferença de valor de croma são escolhidos como referidos dois pares de valor de luma e valor de croma; ou a maior diferença de valor de croma está entre um valor de croma de um terceiro par de valor de luma e valor de croma e um valor de croma de um quarto par de valor de luma e valor de croma, e o terceiro par e o quarto par que têm a maior diferença de valor de croma são escolhidos como referidos dois pares de valor de luma e valor de croma.
78. Dispositivo, de acordo com qualquer uma das reivindicações 71 a 75, CARACTERIZADO pelo fato de que o decodificador de vídeo é configurado para: determinar um quinto par de valor de luma e valor de croma e um sexto par de valor de luma e valor de croma como referidos dois pares de valor de luma e valor de croma, em que o valor de croma correspondente do quinto par de valor de luma e valor de croma é o valor de croma médio das N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com o valor máximo, e o valor de croma correspondente do sexto par de valor de luma e valor de croma é o valor de croma médio das M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo.
79. Dispositivo, de acordo com qualquer uma das reivindicações 71 a 78, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas compreendem um primeiro conjunto de amostras de luma vizinhas reconstruídas e um segundo conjunto de amostras de luma vizinhas reconstruídas, e em que o primeiro conjunto de amostras de luma vizinhas reconstruídas compreende amostras de luma vizinhas reconstruídas com o valor de luma sendo menor que ou igual a um limiar; e o segundo conjunto de amostras de luma vizinhas reconstruídas compreende amostras de luma vizinhas reconstruídas com o valor de luma sendo maior que o limiar.
80. Dispositivo, de acordo com qualquer uma das reivindicações 71 a 79, CARACTERIZADO pelo fato de que o conjunto de amostras subamostradas das amostras de luma vizinhas reconstruídas é obtido ao subamostrar as amostras de luma vizinhas reconstruídas.
81. Método para codificar dados de vídeo, CARACTERIZADO pelo fato de que compreende: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, em que as amostras de luma vizinhas reconstruídas compreendem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma, ou uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma; quando a pelo menos uma dentre as N amostras de luma vizinhas subamostradas com o valor máximo e as M amostras de luma vizinhas subamostradas com o valor mínimo estiverem compreendidas no conjunto de amostras subamostradas, determinar dois pares de valor de luma e valor de croma de acordo com pelo menos um dentre os seguintes:
1. N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e uma amostra de luma vizinha subamostrada com o valor mínimo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com o valor mínimo;
2. uma amostra de luma vizinha subamostrada com o valor máximo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com os valores máximos, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, e
3. N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, em que M, N são um número inteiro positivo e maiores que 1; determinar um ou mais parâmetros de modelo linear com base nos dois pares de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e codificar o bloco de croma com base no bloco preditivo.
82. Método para codificar dados de vídeo, CARACTERIZADO pelo fato de que compreende: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, em que as amostras de luma vizinhas reconstruídas compreendem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma; quando a pelo menos uma dentre as N amostras de luma vizinhas subamostradas com o valor máximo e as M amostras de luma vizinhas subamostradas com o valor mínimo estiverem compreendidas no conjunto de amostras subamostradas, determinar dois pares de valor de luma e valor de croma de acordo com pelo menos um dentre os seguintes:
1. N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e uma amostra de luma vizinha subamostrada com o valor mínimo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com o valor mínimo;
2. uma amostra de luma vizinha subamostrada com o valor máximo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com o valor máximo, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, e
3. N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, em que M, N são um número inteiro positivo e maiores que 1; determinar um ou mais parâmetros de modelo linear com base nos dois pares de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e codificar o bloco de croma com base no bloco preditivo.
83. Método, de acordo com a reivindicação 81 ou 82, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas compreendem adicionalmente: uma amostra de luma vizinha superior direita fora do bloco de luma e amostras de luma vizinhas que estão à direita da amostra de luma vizinha superior direita fora do bloco de luma; e/ou uma amostra de luma vizinha inferior esquerda fora do bloco de luma e amostras de luma vizinhas que estão abaixo da amostra de luma vizinha inferior esquerda fora do bloco de luma.
84. Método, de acordo com qualquer uma das reivindicações 81 a 83, CARACTERIZADO pelo fato de que a pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação superior, e a pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação à esquerda.
85. Método, de acordo com qualquer uma das reivindicações 81 a 84,
CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas excluem amostras de luma que estão acima de uma amostra de luma vizinha superior esquerda fora do bloco de luma, e/ou amostras de luma que estão à esquerda da amostra de luma vizinha superior esquerda.
86. Método, de acordo com qualquer uma das reivindicações 81 a 85, CARACTERIZADO pelo fato de que a etapa de determinar dois pares de valor de luma e valor de croma compreende: determinar dois pares de valor de luma e valor de croma com base em diferença de valor de croma entre um valor de croma de cada um dentre uma primeira pluralidade de pares de valor de luma e valor de croma e um valor de croma de cada um dentre uma segunda pluralidade de pares de valor de luma e valor de croma, em que referido cada um dentre a primeira pluralidade de pares compreende uma dentre N amostras de luma vizinhas subamostradas com o valor máximo e a amostra de croma vizinha reconstruída correspondente, e referido cada um dentre a segunda pluralidade de pares compreende uma dentre M amostras de luma vizinhas subamostradas com o valor mínimo e a amostra de croma vizinha reconstruída correspondente.
87. Método, de acordo com a reivindicação 86, CARACTERIZADO pelo fato de que a menor diferença de valor de croma está entre um valor de croma de um primeiro par de valor de luma e valor de croma e um valor de croma de um segundo par de valor de luma e valor de croma, e o primeiro par e o segundo par que têm a menor diferença de valor de croma são escolhidos como referidos dois pares de valor de luma e valor de croma; ou a maior diferença de valor de croma está entre um valor de croma de um terceiro par de valor de luma e valor de croma e um valor de croma de um quarto par de valor de luma e valor de croma, e o terceiro par e o quarto par que têm a maior diferença de valor de croma são escolhidos como referidos dois pares de valor de luma e valor de croma.
88. Método, de acordo com qualquer uma das reivindicações 81 a 85, CARACTERIZADO pelo fato de que a etapa de determinar dois pares de valor de luma e valor de croma compreende: determinar um quinto par de valor de luma e valor de croma e um sexto par de valor de luma e valor de croma como referidos dois pares de valor de luma e valor de croma, em que o valor de croma correspondente do quinto par de valor de luma e valor de croma é o valor de croma médio das N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com o valor máximo, e o valor de croma correspondente do sexto par de valor de luma e valor de croma é o valor de croma médio das M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo.
89. Método, de acordo com qualquer uma das reivindicações 81 a 88, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas compreendem um primeiro conjunto de amostras de luma vizinhas reconstruídas e um segundo conjunto de amostras de luma vizinhas reconstruídas, e em que o primeiro conjunto de amostras de luma vizinhas reconstruídas compreende amostras de luma vizinhas reconstruídas com o valor de luma sendo menor que ou igual a um limiar; e o segundo conjunto de amostras de luma vizinhas reconstruídas compreende amostras de luma vizinhas reconstruídas com o valor de luma sendo maior que o limiar.
90. Método, de acordo com qualquer uma das reivindicações 81 a 89, CARACTERIZADO pelo fato de que o conjunto de amostras subamostradas das amostras de luma vizinhas reconstruídas é obtido ao subamostrar as amostras de luma vizinhas reconstruídas.
91. Dispositivo de codificação de dados de vídeo, CARACTERIZADO pelo fato de que compreende: uma memória de dados de vídeo e um decodificador de vídeo; em que o decodificador de vídeo é configurado para: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, em que as amostras de luma vizinhas reconstruídas compreendem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma, ou uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma; quando a pelo menos uma dentre as N amostras de luma vizinhas subamostradas com o valor máximo e as M amostras de luma vizinhas subamostradas com o valor mínimo estiverem compreendidas no conjunto de amostras subamostradas, determinar dois pares de valor de luma e valor de croma de acordo com pelo menos um dentre os seguintes:
1. N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e uma amostra de luma vizinha subamostrada com o valor mínimo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com o valor mínimo;
2. uma amostra de luma vizinha subamostrada com o valor máximo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com os valores máximos, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, e
3. N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, em que M, N são um número inteiro positivo e maiores que 1; determinar um ou mais parâmetros de modelo linear com base nos dois pares de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e codificar o bloco de croma com base no bloco preditivo.
92. Dispositivo de codificação de dados de vídeo, CARACTERIZADO pelo fato de que compreende: uma memória de dados de vídeo e um decodificador de vídeo; em que o decodificador de vídeo é configurado para: determinar um bloco de luma que corresponde a um bloco de croma; determinar um conjunto de amostras subamostradas de amostras de luma vizinhas reconstruídas, em que as amostras de luma vizinhas reconstruídas compreendem uma pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma e uma pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma; quando a pelo menos uma dentre as N amostras de luma vizinhas subamostradas com o valor máximo e as M amostras de luma vizinhas subamostradas com o valor mínimo estiverem compreendidas no conjunto de amostras subamostradas, determinar dois pares de valor de luma e valor de croma de acordo com pelo menos um dentre os seguintes:
1. N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e uma amostra de luma vizinha subamostrada com o valor mínimo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com o valor mínimo;
2. uma amostra de luma vizinha subamostrada com o valor máximo e uma amostra de croma vizinha reconstruída que correspondem à amostra de luma vizinha subamostrada com os valores máximos, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, e
3. N amostras de luma vizinhas subamostradas com o valor máximo e N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com os valores máximos, e M amostras de luma vizinhas subamostradas com o valor mínimo e M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo, em que M, N são um número inteiro positivo e maiores que 1; determinar um ou mais parâmetros de modelo linear com base nos dois pares de valor de luma e valor de croma; determinar um bloco preditivo com base no um ou mais parâmetros de modelo linear; e codificar o bloco de croma com base no bloco preditivo.
93. Dispositivo, de acordo com a reivindicação 91 ou 92, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas compreendem adicionalmente: uma amostra de luma vizinha superior direita fora do bloco de luma e amostras de luma vizinhas que estão à direita da amostra de luma vizinha superior direita fora do bloco de luma; e/ou uma amostra de luma vizinha inferior esquerda fora do bloco de luma e amostras de luma vizinhas que estão abaixo da amostra de luma vizinha inferior esquerda fora do bloco de luma.
94. Dispositivo, de acordo com qualquer uma das reivindicações 91 a 93, CARACTERIZADO pelo fato de que a pluralidade de amostras de luma reconstruídas que estão acima do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação superior, e a pluralidade de amostras de luma reconstruídas que estão à esquerda do bloco de luma são amostras de luma vizinhas reconstruídas adjacentes à respectiva delimitação à esquerda.
95. Dispositivo, de acordo com qualquer uma das reivindicações 91 a 94, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas excluem amostras de luma que estão acima de uma amostra de luma vizinha superior esquerda fora do bloco de luma, e/ou amostras de luma que estão à esquerda da amostra de luma vizinha superior esquerda.
96. Dispositivo, de acordo com qualquer uma das reivindicações 91 a 95, CARACTERIZADO pelo fato de que o decodificador de vídeo é adicionalmente configurado para: determinar dois pares de valor de luma e valor de croma com base na diferença de valor de croma entre um valor de croma de cada um dentre uma primeira pluralidade de pares de valor de luma e valor de croma e um valor de croma de cada um dentre uma segunda pluralidade de pares de valor de luma e valor de croma, em que o cada um dentre a primeira pluralidade de pares compreende uma dentre N amostras de luma vizinhas subamostradas com o valor máximo e a amostra de croma vizinha reconstruída correspondente, e referido cada um dentre a segunda pluralidade de pares compreende uma dentre M amostras de luma vizinhas subamostradas com o valor mínimo e a amostra de croma vizinha reconstruída correspondente.
97. Dispositivo, de acordo com a reivindicação 96, CARACTERIZADO pelo fato de que a menor diferença de valor de croma está entre um valor de croma de um primeiro par de valor de luma e valor de croma e um valor de croma de um segundo par de valor de luma e valor de croma, e o primeiro par e o segundo par que têm a menor diferença de valor de croma são escolhidos como referidos dois pares de valor de luma e valor de croma; ou a maior diferença de valor de croma está entre um valor de croma de um terceiro par de valor de luma e valor de croma e um valor de croma de um quarto par de valor de luma e valor de croma, e o terceiro par e o quarto par que têm a maior diferença de valor de croma são escolhidos como referidos dois pares de valor de luma e valor de croma.
98. Dispositivo, de acordo com qualquer uma das reivindicações 91 a 95, CARACTERIZADO pelo fato de que o decodificador de vídeo é adicionalmente configurado para: determinar um quinto par de valor de luma e valor de croma e um sexto par de valor de luma e valor de croma como referidos dois pares de valor de luma e valor de croma, em que o valor de croma correspondente do quinto par de valor de luma e valor de croma é o valor de croma médio das N amostras de croma vizinhas reconstruídas que correspondem às N amostras de luma vizinhas subamostradas com o valor máximo, e o valor de croma correspondente do sexto par de valor de luma e valor de croma é o valor de croma médio das M amostras de croma vizinhas reconstruídas que correspondem às M amostras de luma vizinhas subamostradas com o valor mínimo.
99. Dispositivo, de acordo com qualquer uma das reivindicações 91 a 98, CARACTERIZADO pelo fato de que as amostras de luma vizinhas reconstruídas compreendem um primeiro conjunto de amostras de luma vizinhas reconstruídas e um segundo conjunto de amostras de luma vizinhas reconstruídas, e em que o primeiro conjunto de amostras de luma vizinhas reconstruídas compreende amostras de luma vizinhas reconstruídas com o valor de luma sendo menor que ou igual a um limiar; e o segundo conjunto de amostras de luma vizinhas reconstruídas compreende amostras de luma vizinhas reconstruídas com o valor de luma sendo maior que o limiar.
100. Dispositivo, de acordo com qualquer uma das reivindicações 91 a 99, CARACTERIZADO pelo fato de que o conjunto de amostras subamostradas das amostras de luma vizinhas reconstruídas é obtido ao subamostrar as amostras de luma vizinhas reconstruídas.
101. Aparelho de decodificação, CARACTERIZADO pelo fato de que compreende: um armazenamento de memória que compreende instruções; e um ou mais processadores em comunicação com a memória, em que o um ou mais processadores, ao executar as instruções, realizam o método conforme definido em qualquer uma das reivindicações 1 a 15 ou conforme definido em qualquer uma das reivindicações 61 a 70.
102. Aparelho de codificação, CARACTERIZADO pelo fato de que compreende: um armazenamento de memória que compreende instruções; e um ou mais processadores em comunicação com a memória, em que o um ou mais processadores, ao executar as instruções, realizam o método conforme definido em qualquer uma das reivindicações 16 a 30 ou conforme definido em qualquer uma das reivindicações 81 a 90.
103. Mídia legível por computador, CARACTERIZADA pelo fato de que armazena instruções que, quando executadas por um processador em um dispositivo, fazem com que o dispositivo realize o método conforme definido em qualquer uma das reivindicações 1 a 30, reivindicações 61 a 70 e reivindicações 81 a 90.
BR112021000694-0A 2018-07-16 2019-07-16 Codificador de vídeo, decodificador de vídeo, e métodos de codificação e decodificação correspondentes BR112021000694A2 (pt)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201862698924P 2018-07-16 2018-07-16
US62/698,924 2018-07-16
US201862698991P 2018-07-17 2018-07-17
US62/698,991 2018-07-17
PCT/CN2019/096191 WO2020015648A1 (en) 2018-07-16 2019-07-16 Video encoder, video decoder, and corresponding encoding and decoding methods

Publications (1)

Publication Number Publication Date
BR112021000694A2 true BR112021000694A2 (pt) 2021-04-13

Family

ID=69164978

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112021000694-0A BR112021000694A2 (pt) 2018-07-16 2019-07-16 Codificador de vídeo, decodificador de vídeo, e métodos de codificação e decodificação correspondentes

Country Status (24)

Country Link
US (2) US11336907B2 (pt)
EP (2) EP4164225A1 (pt)
JP (2) JP7461925B2 (pt)
KR (2) KR102483942B1 (pt)
CN (2) CN112425173A (pt)
AU (2) AU2019303720B2 (pt)
BR (1) BR112021000694A2 (pt)
CA (2) CA3106468C (pt)
CL (1) CL2021000123A1 (pt)
DK (1) DK3815377T3 (pt)
ES (1) ES2938068T3 (pt)
FI (1) FI3815377T3 (pt)
HR (1) HRP20230288T1 (pt)
HU (1) HUE061422T2 (pt)
IL (1) IL280228B2 (pt)
LT (1) LT3815377T (pt)
MX (1) MX2021000616A (pt)
NZ (1) NZ772305A (pt)
PH (1) PH12021550112A1 (pt)
PL (1) PL3815377T3 (pt)
PT (1) PT3815377T (pt)
SG (1) SG11202100412SA (pt)
SI (1) SI3815377T1 (pt)
WO (1) WO2020015648A1 (pt)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR112021000694A2 (pt) 2018-07-16 2021-04-13 Huawei Technologies Co., Ltd. Codificador de vídeo, decodificador de vídeo, e métodos de codificação e decodificação correspondentes
CN117880501A (zh) 2018-10-07 2024-04-12 三星电子株式会社 用于编码或解码视频信号的视频信号处理方法和设备
EP4221220A1 (en) * 2018-10-08 2023-08-02 Beijing Dajia Internet Information Technology Co., Ltd. Simplifications of cross-component linear model
WO2020076142A1 (ko) * 2018-10-12 2020-04-16 주식회사 윌러스표준기술연구소 교차성분 선형 모델을 이용한 비디오 신호 처리 방법 및 장치
CN112335245A (zh) * 2018-10-12 2021-02-05 Oppo广东移动通信有限公司 视频图像分量预测方法及装置、计算机存储介质
WO2020094061A1 (en) * 2018-11-06 2020-05-14 Beijing Bytedance Network Technology Co., Ltd. Multi-models for intra prediction
CN113170122B (zh) 2018-12-01 2023-06-27 北京字节跳动网络技术有限公司 帧内预测的参数推导
BR112021010886A2 (pt) 2018-12-07 2021-08-31 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Decodificador para decodificação e codificador para codificação com base em bloco de dados, métodos, mídia de armazenamento digital legível por computador e fluxo de dados
AU2019391197B2 (en) 2018-12-07 2023-05-25 Beijing Bytedance Network Technology Co., Ltd. Context-based intra prediction
CN113395520B (zh) 2019-01-02 2023-05-16 Oppo广东移动通信有限公司 解码预测方法、装置及计算机存储介质
AU2020226566A1 (en) 2019-02-24 2021-08-19 Beijing Bytedance Network Technology Co., Ltd. Parameter derivation for intra prediction
CN113767631B (zh) 2019-03-24 2023-12-15 北京字节跳动网络技术有限公司 用于帧内预测的参数推导中的条件
KR20210141683A (ko) * 2019-03-25 2021-11-23 광동 오포 모바일 텔레커뮤니케이션즈 코포레이션 리미티드 이미지 요소의 예측 방법, 인코더, 디코더 및 컴퓨터 저장 매체
CN113497937B (zh) * 2020-03-20 2023-09-05 Oppo广东移动通信有限公司 图像编码方法、图像解码方法及相关装置
CN113747176A (zh) 2020-05-29 2021-12-03 Oppo广东移动通信有限公司 图像编码方法、图像解码方法及相关装置
EP4324208A1 (en) * 2021-04-16 2024-02-21 Beijing Dajia Internet Information Technology Co., Ltd. Video coding using multi-model linear model

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8000390B2 (en) 2006-04-28 2011-08-16 Sharp Laboratories Of America, Inc. Methods and systems for efficient prediction-mode selection
US8488668B2 (en) 2007-06-15 2013-07-16 Qualcomm Incorporated Adaptive coefficient scanning for video coding
CN105635737B (zh) 2010-04-09 2019-03-15 Lg电子株式会社 处理视频数据的方法和装置
US9288500B2 (en) * 2011-05-12 2016-03-15 Texas Instruments Incorporated Luma-based chroma intra-prediction for video coding
KR20120140181A (ko) * 2011-06-20 2012-12-28 한국전자통신연구원 화면내 예측 블록 경계 필터링을 이용한 부호화/복호화 방법 및 그 장치
US9693070B2 (en) * 2011-06-24 2017-06-27 Texas Instruments Incorporated Luma-based chroma intra-prediction for video coding
KR101756843B1 (ko) * 2011-06-28 2017-07-11 삼성전자주식회사 휘도 성분 영상을 이용한 색차 성분 영상의 예측 방법 및 예측 장치
CN110708542B (zh) * 2012-01-18 2023-02-17 韩国电子通信研究院 视频解码装置、视频编码装置和传输比特流的方法
CN104380741B (zh) 2012-01-19 2018-06-05 华为技术有限公司 用于lm帧内预测的参考像素缩减
CN104871537B (zh) * 2013-03-26 2018-03-16 联发科技股份有限公司 色彩间帧内预测的方法
US9648330B2 (en) 2013-07-15 2017-05-09 Qualcomm Incorporated Inter-color component residual prediction
US10455249B2 (en) * 2015-03-20 2019-10-22 Qualcomm Incorporated Downsampling process for linear model prediction mode
US9736335B2 (en) 2015-04-15 2017-08-15 Apple Inc. Techniques for advanced chroma processing
CN106559669B (zh) 2015-09-29 2018-10-09 华为技术有限公司 预测图像编解码方法及装置
WO2017139937A1 (en) * 2016-02-18 2017-08-24 Mediatek Singapore Pte. Ltd. Advanced linear model prediction for chroma coding
US10652575B2 (en) * 2016-09-15 2020-05-12 Qualcomm Incorporated Linear model chroma intra prediction for video coding
US10382781B2 (en) * 2016-09-28 2019-08-13 Qualcomm Incorporated Interpolation filters for intra prediction in video coding
US10477240B2 (en) * 2016-12-19 2019-11-12 Qualcomm Incorporated Linear model prediction mode with sample accessing for video coding
US10231104B2 (en) 2017-06-08 2019-03-12 T-Mobile Usa, Inc. Proactive and reactive management for devices in a network
MX2020003656A (es) * 2017-10-02 2020-10-12 Arris Entpr Llc Sistema y método para reducir artefactos de bloque y proporcionar eficiencia de codificación mejorada.
GB2567249A (en) * 2017-10-09 2019-04-10 Canon Kk New sample sets and new down-sampling schemes for linear component sample prediction
EP3799428A4 (en) * 2018-07-02 2021-04-14 LG Electronics, Inc. CCLM-BASED INTRA-PREDICTION DEVICE AND PROCESS
EP3815370A4 (en) 2018-07-12 2021-08-11 Huawei Technologies Co., Ltd. INTRAPREDICTION USING COMPONENT LINEAR MODEL IN VIDEO ENCODING
BR112021000694A2 (pt) 2018-07-16 2021-04-13 Huawei Technologies Co., Ltd. Codificador de vídeo, decodificador de vídeo, e métodos de codificação e decodificação correspondentes
WO2020053804A1 (en) * 2018-09-12 2020-03-19 Beijing Bytedance Network Technology Co., Ltd. Downsampling in cross-component linear modeling
EP4221220A1 (en) * 2018-10-08 2023-08-02 Beijing Dajia Internet Information Technology Co., Ltd. Simplifications of cross-component linear model
WO2020094061A1 (en) * 2018-11-06 2020-05-14 Beijing Bytedance Network Technology Co., Ltd. Multi-models for intra prediction
AU2019391197B2 (en) * 2018-12-07 2023-05-25 Beijing Bytedance Network Technology Co., Ltd. Context-based intra prediction
AU2020226566A1 (en) * 2019-02-24 2021-08-19 Beijing Bytedance Network Technology Co., Ltd. Parameter derivation for intra prediction

Also Published As

Publication number Publication date
ES2938068T3 (es) 2023-04-04
MX2021000616A (es) 2021-07-02
US11336907B2 (en) 2022-05-17
HRP20230288T1 (hr) 2023-05-12
EP3815377A1 (en) 2021-05-05
FI3815377T3 (fi) 2023-03-01
EP3815377B1 (en) 2022-12-28
CN115941942B (zh) 2023-09-01
CN115941942A (zh) 2023-04-07
IL280228B1 (en) 2023-10-01
AU2023204301A1 (en) 2023-07-27
JP2024023503A (ja) 2024-02-21
KR20230008896A (ko) 2023-01-16
WO2020015648A1 (en) 2020-01-23
CA3213840A1 (en) 2020-01-23
DK3815377T3 (da) 2023-04-03
CL2021000123A1 (es) 2021-05-28
CN112425173A (zh) 2021-02-26
PL3815377T3 (pl) 2023-05-08
NZ772305A (en) 2023-06-30
IL280228B2 (en) 2024-02-01
AU2019303720B2 (en) 2023-04-06
IL280228A (en) 2021-03-25
LT3815377T (lt) 2023-04-11
CA3106468A1 (en) 2020-01-23
KR20210030444A (ko) 2021-03-17
KR102483942B1 (ko) 2022-12-30
US20210136392A1 (en) 2021-05-06
JP2021530917A (ja) 2021-11-11
PT3815377T (pt) 2023-03-30
SI3815377T1 (sl) 2023-05-31
EP3815377A4 (en) 2021-09-15
EP4164225A1 (en) 2023-04-12
AU2019303720A1 (en) 2021-02-11
PH12021550112A1 (en) 2021-09-27
SG11202100412SA (en) 2021-02-25
HUE061422T2 (hu) 2023-06-28
JP7461925B2 (ja) 2024-04-04
CA3106468C (en) 2023-11-07
US20220264123A1 (en) 2022-08-18

Similar Documents

Publication Publication Date Title
BR112021000694A2 (pt) Codificador de vídeo, decodificador de vídeo, e métodos de codificação e decodificação correspondentes
CN112789863B (zh) 帧内预测方法及设备
TW201931853A (zh) 具有聯合像素/變換為基礎之量化之視頻寫碼之量化參數控制
US11917152B2 (en) Position dependent spatial varying transform for video coding
CN111416977A (zh) 视频编码器、视频解码器及相应方法
BR112021000225A2 (pt) Sinalização de modo intra luma
BR112021000318A2 (pt) Particionamento de bloco de fronteira em codificação de vídeo
RU2772813C1 (ru) Видеокодер, видеодекодер и соответствующие способы кодирования и декодирования
US11722668B2 (en) Video encoder, video decoder, and corresponding method
BR112021009686A2 (pt) Método e dispositivo de intrapredição