BR112021013735A2 - Método de codificação de imagens e dispositivo para executar intrapredição baseada em mrl - Google Patents

Método de codificação de imagens e dispositivo para executar intrapredição baseada em mrl Download PDF

Info

Publication number
BR112021013735A2
BR112021013735A2 BR112021013735-1A BR112021013735A BR112021013735A2 BR 112021013735 A2 BR112021013735 A2 BR 112021013735A2 BR 112021013735 A BR112021013735 A BR 112021013735A BR 112021013735 A2 BR112021013735 A2 BR 112021013735A2
Authority
BR
Brazil
Prior art keywords
current block
intra
mpm
mode
block
Prior art date
Application number
BR112021013735-1A
Other languages
English (en)
Inventor
Jin Heo
Sunmi YOO
Ling Li
Jangwon CHOI
Jungah CHOI
Original Assignee
Lg Electronics Inc.
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 Lg Electronics Inc. filed Critical Lg Electronics Inc.
Publication of BR112021013735A2 publication Critical patent/BR112021013735A2/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/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/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/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
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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

Landscapes

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

Abstract

método de codificação de imagens e dispositivo para executar intrapredição baseada em mr. trata-se de um método de decodificação de imagens que, de acordo com o presente documento, compreende as etapas de: configurar uma lista de mpm que inclua modos de intrapredição candidatos para um bloco atual; derivar um modo de intrapredição do bloco atual a partir da lista de mpm com base em informações de índice de mpm que indicam um modo de intrapredição, dentre os modos de intrapredição candidatos incluídos na lista de mpm, para o bloco atual; gerar amostras de predição para o bloco atual com base no modo de intrapredição; e gerar uma cena reconstruída para o bloco atual com base nas amostras de predição, sendo que a etapa de configurar a lista de mpm compreende, com base no caso em que o valor das informações de índice de linha de referência, que representam uma linha de referência usada para a intrapredição do bloco atual, é diferente de zero, derivar um modo dc como um modo dentre os modos de intrapredição candidatos, e incluí-lo na lista de mpm.

Description

"MÉTODO DE CODIFICAÇÃO DE IMAGEMS E DISPOSITIVO PARA EXECUTAR INTRAPREDIÇÃO BASEADA EM MRL"
ANTECEDENTES DA INVENÇÃO Campo da Invenção
[001] A presente invenção refere-se à tecnologia da codificação de imagens e, mais especificamente, a um método e aparelho para executar a predição intra baseada em Linha Multirreferência (MRL). Técnica Relacionada
[002] Recentemente, a demanda por imagens/vídeos de alta qualidade e em alta resolução, tais como imagens/vídeos em 4K, 8K ou Ultra-Alta Definição (UHD), vem crescendo em vários setores. À medida que a resolução ou qualidade das imagens/vídeos aumentam, proporcionalmente mais informações ou bits são transmitidos do que no caso de dados de imagem/vídeo convencionais. Logo, se dados de imagem/vídeo são transmitidos através de um meio, tal como uma linha de banda larga com fio/sem fio, ou armazenados em um meio de armazenamento herdado, os custos de transmissão e armazenamento aumentam de pronto.
[003] Ademais, vêm crescendo o interesse e a demanda por conteúdos de realidade virtual (VR) e realidade artificial (AR), e meios imersivos, como hologramas; e a difusão de imagens/vídeos com características de imagem/vídeo diferentes das de uma imagem/vídeo real, como imagens/vídeos de jogos eletrônicos, também está crescendo.
[004] Logo, uma técnica de compressão de imagem/vídeo altamente eficaz se faz necessária para comprimir com eficácia e transmitir, armazenar ou reproduzir imagens/vídeos de alta qualidade e em alta resolução com várias características, conforme descrito acima.
SUMÁRIO
[005] Um objetivo técnico da presente revelação consiste em propor um método e aparelho para aprimorar a eficácia na codificação de imagens.
[006] Outro objetivo técnico da presente revelação consiste em propor um método e aparelho de predição intra eficientes.
[007] Ainda outro objeto técnico da presente revelação consiste em propor um método e aparelho para aplicar um modo DC à predição intra baseada em Linha Multirreferência (MRL) e construir uma lista de Modos Mais Prováveis (MPM) que inclua o modo DC.
[008] De acordo com uma modalidade da presente revelação, é proposto um método para decodificar imagens executado por um aparelho decodificador. O método compreende construir uma lista de Modos Mais Prováveis (MPM) que inclua modos de predição intra candidatos para um bloco atual; derivar um modo de predição intra do bloco atual a partir da lista de MPM com base em informações de índice de MPM que indicam um modo de predição intra para o bloco atual dentre os modos de predição intra candidatos incluídos na lista de MPM; gerar amostras de predição para o bloco atual com base no modo de predição intra; e gerar uma cena reconstruída para o bloco atual com base nas amostras de predição, sendo que a construção da lista de MPM inclui derivar um modo DC como um dos modos de predição intra candidatos para incluí-lo na lista de MPM, com base em um caso em que o valor das informações de índice de linha de referência que indicam uma linha de referência usada para a predição intra do bloco atual é diferente de 0.
[009] De acordo com outra modalidade da presente revelação, é proposto um método para codificar imagens executado por um aparelho codificador. O método compreende construir uma lista de Modos Mais Prováveis (MPM) que inclua modos de predição intra candidatos para um bloco atual; derivar um modo de predição intra do bloco atual com base nos modos de predição intra candidatos incluídos na lista de MPM; gerar informações de índice de MPM que indiquem um modo de predição intra do bloco atual dentre os modos de predição intra candidatos incluídos na lista de MPM; e codificar informações de imagem que incluam ao menos uma das informações de índice de linha de referência que indicam uma linha de referência usada para a predição intra do bloco atual, sendo que a construção da lista de MPM inclui derivar um modo DC como um dos modos de predição intra candidatos para incluí-lo na lista de MPM, com base em um caso em que o valor das informações de índice de linha de referência é diferente de 0.
[010] De acordo com ainda outra modalidade da presente revelação, é proposto um meio de armazenamento digital legível por computador que armazena informações de imagem codificadas que fazem com que o método para decodificar imagens revelado na reivindicação 1 seja praticado.
EFEITOS VANTAJOSOS
[011] De acordo com a presente revelação, a eficácia geral na compressão de imagens/vídeos pode ser aprimorada.
[012] De acordo com a presente revelação, a complexidade computacional pode ser reduzida e o desempenho de predição pode ser aprimorado através de uma predição intra eficaz e, com isso, a eficácia na codificação geral pode ser aprimorada.
[013] De acordo com a presente revelação, ao construir uma lista de MPM que inclui um modo DC para a predição intra baseada em MRL e executar a predição intra em modo DC usando MRLs, a precisão da predição pode ser intensificada, com o quê a eficácia de codificação geral pode ser aprimorada.
BREVE DESCRIÇÃO DOS DESENHOS
[014] A FIG. 1 ilustra um exemplo de um sistema de codificação de vídeo/imagem ao qual as modalidades do presente documento podem ser aplicadas.
[015] A FIG. 2 é um diagrama que ilustra esquematicamente uma configuração de um aparelho codificador de vídeo/imagem ao qual as modalidades do presente documento podem ser aplicadas.
[016] A FIG. 3 é um diagrama para explicar esquematicamente uma configuração de um aparelho decodificador de vídeo/imagem ao qual a presente revelação é aplicável.
[017] A FIG. 4 ilustra um exemplo de um método para codificar imagens baseado na predição intra ao qual modalidades da presente revelação podem ser aplicadas, e a FIG. 5 ilustra um preditor intra em um aparelho codificador.
[018] A FIG. 6 ilustra um exemplo de um método para decodificar imagens baseado na predição intra ao qual modalidades da presente revelação podem ser aplicadas, e a FIG. 7 ilustra um preditor intra em um aparelho decodificador.
[019] A FIG. 8 ilustra um exemplo de um método de predição intra baseado em MPM de um aparelho codificador ao qual modalidades da presente revelação podem ser aplicadas.
[020] A FIG. 9 ilustra um exemplo de um método de predição intra baseado em MPM de um aparelho decodificador ao qual modalidades da presente revelação podem ser aplicadas.
[021] A FIG. 10 ilustra um exemplo de modos de predição intra aos quais modalidades da presente revelação podem ser aplicadas.
[022] A FIG. 11 ilustra um exemplo de linhas de amostras de referência para a predição intra usando linhas multirreferência.
[023] A FIG. 12 ilustra uma modalidade de um método para derivar amostras de predição em um modo DC.
[024] A FIG. 13 ilustra outra modalidade de um método para derivar amostras de predição em um modo DC.
[025] A FIG. 14 é um fluxograma que ilustra um método de codificação que pode ser executado por um aparelho codificador de acordo com uma modalidade da presente revelação.
[026] A FIG. 15 é um fluxograma que ilustra um método de decodificação que pode ser executado por um aparelho decodificador de acordo com uma modalidade da presente revelação.
[027] A FIG. 16 ilustra um exemplo de um sistema de transmissão de conteúdo ao qual modalidades de acordo com a presente revelação podem ser aplicadas.
DESCRIÇÃO DE MODALIDADES EXEMPLIFICATIVAS
[028] Uma modalidade exemplificativa da presente revelação propõe um método para decodificar informações de imagem executado por um aparelho decodificador. O método inclui: decodificar um índice de transformada secundária inseparável (NSST) a partir de um fluxo de bits, se uma NSST for aplicada a um bloco alvo, decodificar informações sobre coeficientes de transformada para o bloco alvo a partir do fluxo de bits, com base no índice de NSST decodificado, e derivar os coeficientes de transformada para o bloco atual com base nas informações decodificadas sobre os coeficientes de transformada, sendo que o índice de NSST é decodificado antes das informações sobre os coeficientes de transformada para o bloco alvo.
[029] A presente revelação pode ser modificada de várias maneiras, e modalidades específicas das mesma serão descritas e ilustradas nos desenhos. No entanto, as modalidades não visam a limitar a revelação. Os termos usados na descrição a seguir meramente descrevem modalidades específicas, mas não visam a limitar a revelação. A expressão de um número singular inclui a expressão do número no plural, salvo menção claramente em contrário. Termos como "incluir" e "ter" visam a indicar que os recursos, números, etapas, operações, elementos, componentes ou combinações desses usados na descrição a seguir existem, e, portanto, não deve-se interpretá-los como se a possibilidade de existência ou adição de um ou mais recursos, números, etapas, operações, elementos, componentes ou combinações desses diferentes fosse excluída.
[030] Doravante, descrever-se-ão exemplos da presente modalidade em detalhes e com referência aos desenhos anexos. Além disso, números de referência iguais são usados para indicar os mesmos elementos ao longo de todos os desenhos, e descrições iguais sobre os mesmos elementos serão omitidas.
[031] Este documento está associado à codificação de vídeos/imagens. Por exemplo, um método/modalidade revelada neste documento pode aplicar-se a um método revelado no padrão de codificação de vídeo versátil (VVC), no padrão de codificação de vídeo essencial (EVC), no padrão AOMedia Video 1 (AV1), na 2ª geração do padrão de codificação de áudio e vídeo (AVS2) ou no padrão de codificação de vídeo/imagem de última geração (por exemplo, H.267, H.268 ou seus semelhantes).
[032] O presente documento sugere várias modalidades de codificação de vídeo/imagem, e as modalidades acima podem ser praticadas em combinação umas às outras, salvo especificação em contrário.
[033] Neste documento, vídeo pode referir-se a uma sequência de imagens ao longo do tempo. Em termos gerais, cena refere-se à unidade que representa uma imagem em um quadro de tempo específico, e um slice/tile refere-se à unidade que constitui uma parte da cena em termos da codificação. Um slice/tile pode incluir uma ou mais unidades de árvore de codificação (CTUs). Uma cena pode ser composta por um ou mais slices/tiles. Uma cena pode ser composta por um ou mais grupos de tiles. Um grupo de tiles pode incluir um ou mais tiles. Um brick pode representar uma região retangular de linhas de CTU dentro de um tile em uma cena (um brick pode representar uma região retangular de linhas de CTU dentro de um tile em uma cena). Um tile pode ser dividido em vários bricks, cada um dos quais pode ser construído com uma ou mais linhas de CTU dentro do tile (um tile pode ser dividido em vários bricks, cada um dos quais composto por uma ou mais linhas de CTU dentro do tile). Um tile que não é dividido em vários bricks também pode ser chamado de brick.
Uma varredura dos bricks pode representar uma ordenação sequencial específica de CTUs que dividem uma cena, em que as CTUs podem ser ordenadas em uma varredura por rastreamento de CTUs, e os bricks dentro de um tile podem ser ordenados consecutivamente em uma varredura por rastreamento dos bricks do tile, e os tiles em uma cena podem ser ordenados consecutivamente em uma varredura por rastreamento dos tiles da cena (uma varredura dos bricks é uma ordenação sequencial específica de CTUs que dividem uma cena em que as CTUs são ordenadas consecutivamente em uma varredura por rastreamento de CTUs em um brick, os bricks dentro de um tile são ordenados consecutivamente em uma varredura por rastreamento dos bricks do tile, e os tiles em uma cena são ordenados consecutivamente em uma varredura por rastreamento dos tiles da cena). Um tile é uma coluna de tiles específica e uma região retangular de CTUs dentro de uma coluna de tiles específica (um tile é uma região retangular de CTUs dentro de uma coluna de tiles específica e uma linha de tiles específica em uma cena). A coluna de tiles é uma região retangular de CTUs, que possui uma altura igual à altura da cena e uma largura que pode ser especificada por elementos de sintaxe no conjunto de parâmetros de cena (a coluna de tiles é uma região retangular de CTUs com altura igual à altura da cena e uma largura especificada por elementos de sintaxe no conjunto de parâmetros de cena). A linha de tiles é uma região retangular de CTUs, que possui uma largura especificada por elementos de sintaxe no conjunto de parâmetros de cena e uma altura que pode ser igual à altura da cena (a linha de tiles é uma região retangular de CTUs com uma altura especificada por elementos de sintaxe no conjunto de parâmetros de cena e uma largura igual à largura da cena). Uma varredura de tiles pode representar uma ordenação sequencial específica de CTUs que dividem uma cena, e as CTUs podem ser ordenadas consecutivamente em uma varredura por rastreamento de CTUs em um tile, e os tiles em uma cena podem ser ordenados consecutivamente em uma varredura por rastreamento dos tiles da cena (uma varredura de tiles é uma ordenação sequencial específica de CTUs que dividem uma cena em que as CTUs são ordenadas consecutivamente em uma varredura por rastreamento de CTUs em um tile, ao passo que os tiles em uma cena são ordenados consecutivamente em uma varredura por rastreamento dos tiles da cena). Um slice pode incluir um número inteiro de bricks de uma cena, e o número inteiro de bricks pode ser incluído em uma única unidade NAL (um slice inclui um número inteiro de bricks de uma cena que podem ser exclusivamente contidos em uma única unidade NAL). Um slice pode ser construído dentro de vários tiles completos, ou pode ser uma sequência consecutiva de bricks completos de um tile (um slice pode consistir em um número de tiles completos ou apenas em uma sequência consecutiva de bricks completos de um tile). Neste documento, um grupo de tiles e um slice podem ser usados de maneira intercambiável. Por exemplo, neste documento, um grupo de tiles/cabeçalho de grupo de tiles pode ser chamado de slice/cabeçalho de slice.
[034] Um pixel ou um pel podem significar a menor unidade que constitui uma cena (ou imagem). Além disso, "amostra" pode ser usado como um termo correspondente a um pixel. Um amostra pode representar, em termos gerais, um pixel ou um valor de um pixel, e pode representar só um pixel/valor de pixel de um componente luma ou só um pixel/valor de pixel de um componente croma.
[035] Uma unidade pode representar uma unidade básica de processamento de imagem. A unidade pode incluir ao menos uma de uma região específica da cena e informações relacionadas à região. Uma unidade pode incluir um bloco luma e dois blocos croma (por exemplo, cb, cr). O termo "unidade" pode ser usado de maneira intercambiável com termos como "bloco" ou "área" em alguns casos. Em termos gerais, um bloco M×N pode incluir amostras (ou arranjos de amostras) ou um conjunto (ou arranjo) de coeficientes de transformada de M colunas e N linhas. Como alternativa, a amostra pode significar um valor de pixel no domínio espacial e,
quando esse valor de pixel for transformado no domínio de frequência, ela pode significar um coeficiente de transformada no domínio de frequência.
[036] Neste documento, os símbolos “/” e “,” devem ser interpretados como “e/ou”. Por exemplo, a expressão “A/B” é interpretada como “A e/ou B”, e a expressão “A, B” é interpretada como “A e/ou B”. Além disso, a expressão "A/B/C" significa "ao menos um de A, B e/ou C". Ademais, a expressão "A, B, C" também significa "ao menos um de A, B e/ou C". (Neste documento, os símbolos “/” e “;” devem ser interpretados como se indicassem “e/ou”. Por exemplo, a expressão "A/B" pode significar "A e/ou B". Além disso, "A, B" pode significar "A e/ou B". Ademais, "A/B/C" pode significar "ao menos um de A, B e/ou C". Além do mais, "A/B/C" pode significar "ao menos um de A, B e/ou C".)
[037] Em aditamento, no presente documento, o termo "ou" deve ser interpretado como "e/ou". Por exemplo, a expressão "A ou B" pode significar: 1) só "A", 2) só "B" e/ou 3) "ambos A e B". Em outras palavras, o termo "ou", no presente documento, pode significar "em aditamento, ou como alternativa". (Além disso, no documento, o termo "ou" deve ser interpretado como se indicasse "e/ou". Por exemplo, a expressão "A ou B" pode compreender 1) só A, 2) só B e/ou 3) ambos A e B. Em outras palavras, o termo "ou", neste documento, deve ser interpretado como se indicasse "em aditamento, ou como alternativa".)
[038] A FIG. 1 ilustra um exemplo de um sistema de codificação de vídeo/imagem ao qual as modalidades do presente documento podem ser aplicadas.
[039] Com referência à Figura 1, um sistema codificador de vídeo/imagem pode incluir um dispositivo de origem e um dispositivo receptor. O dispositivo de origem pode transmitir informações ou dados de vídeo/imagem codificados ao dispositivo receptor através de um meio de armazenamento digital ou rede na forma de um arquivo ou transmissão.
[040] O dispositivo de origem pode incluir uma fonte de vídeo, um aparelho codificador e um transmissor. O dispositivo receptor pode incluir um receptor, um aparelho decodificador e um renderizador. O aparelho codificador pode ser chamado de aparelho codificador de vídeo/imagem, e o aparelho decodificador pode ser chamado de aparelho decodificador de vídeo/imagem. O transmissor pode ser incluído no aparelho codificador. O receptor pode ser incluído no aparelho decodificador. O renderizador pode incluir uma tela, e a tela pode ser configurada como um dispositivo distinto ou um componente externo.
[041] A fonte de vídeo pode adquirir vídeo/imagens através de um processo de captura, síntese ou geração do vídeo/imagens. A fonte de vídeo pode incluir um dispositivo de captura de vídeo/imagem e/ou um dispositivo gerador de vídeo/imagem. O dispositivo de captura de vídeo/imagem pode incluir, por exemplo, uma ou mais câmeras, arquivos de vídeo/imagem que incluem vídeo/imagens previamente capturados, entre outros. O dispositivo gerador de vídeo/imagem pode incluir, por exemplo, computadores, tablets e smartphones e pode gerar (eletronicamente) vídeo/imagens. Por exemplo, um vídeo/imagem virtual pode ser gerado através de um computador, ou seus semelhantes. Nesse caso, o processo de captura de vídeo/imagem pode ser substituído por um processo de gerar dados relacionados.
[042] O aparelho codificador pode codificar vídeo/imagens de entrada. O aparelho codificador pode executar uma série de procedimentos, tais como predição, transformada e quantização, para eficácia na compressão e codificação. Os dados codificados (informações de vídeo/imagem codificadas) podem ser enviados na forma de um fluxo de bits.
[043] O transmissor pode transmitir a imagem/informações ou dados de imagem codificados enviados na forma de um fluxo de bits ao receptor do dispositivo receptor através de um meio de armazenamento digital ou rede na forma de um arquivo ou transmissão. O meio de armazenamento digital pode incluir vários meios de armazenamento, tais como USB, SD, CD, DVD, Blu-ray, HDD, SSD e seus semelhantes. O transmissor pode incluir um elemento para gerar um arquivo de mídia por meio de um formato de arquivo predeterminado e pode incluir um elemento para transmissão através de uma rede de difusão/comunicação. O receptor pode receber/extrair o fluxo de bits e transmiti-lo ao aparelho decodificador.
[044] O aparelho decodificador pode decodificar o vídeo/imagem executando uma série de procedimentos, tais como desquantização, transformada inversa e predição, correspondentes à operação do aparelho codificador.
[045] O renderizador pode renderizar o vídeo/imagem decodificado. O vídeo/imagem renderizado pode ser exibido na tela.
[046] A FIG. 2 é um diagrama que ilustra esquematicamente uma configuração de um aparelho codificador de vídeo/imagem ao qual as modalidades do presente documento podem ser aplicadas. Doravante, aquilo que for chamado de aparelho codificador de vídeo pode incluir um aparelho codificador de imagem.
[047] Com referência à FIG. 2, o aparelho decodificador 200 pode incluir e ser configurado com um divisor de imagem 210, um preditor 220, um processador residual 230, um codificador por entropia 220, um somador 250, um filtro 260 e uma memória 270. O preditor 220 pode incluir um preditor inter 221 e um preditor intra
222. O processador residual 230 pode incluir um transformador 232, um quantizador 233, um desquantizador 234 e um transformador inverso 235. O processador residual 230 pode incluir ainda um subtrator 231. O somador 250 pode ser chamado de reconstrutor ou gerador de blocos reconstruídos. O divisor de imagem 210, o preditor 220, o processador residual 230, o codificador por entropia 240, o somador 250 e o filtro 260, que foram descritos acima, podem ser configurados por um ou mais componentes de hardware (por exemplo, chipsets ou processadores de codificador) de acordo com uma modalidade. Além disso, a memória 270 pode incluir um buffer de cenas decodificadas (DPB) e também pode ser configurada por um meio de armazenamento digital. O componente de hardware pode incluir ainda a memória 270 como um componente interno/externo.
[048] O divisor de imagem 210 pode dividir uma imagem de entrada (ou cena, quadro) transmitida ao aparelho codificador 200 em uma ou mais unidades de processamento. Por exemplo, a unidade de processamento pode ser chamada de unidade de codificação (CU). Nesse caso, a unidade de codificação pode ser recursivamente dividida de acordo com uma estrutura de árvore quaternária–árvore binária–árvore ternária (QTBTTT) a partir de uma unidade de árvore de codificação (CTU) ou de uma unidade de codificação maior (LCU). Por exemplo, uma unidade de codificação pode ser dividida em uma pluralidade de unidades de codificação mais profundas com base em uma estrutura de árvore quaternária, uma estrutura de árvore binária e/ou uma estrutura de árvore ternária. Nesse caso, por exemplo, a estrutura de árvore quaternária é aplicada primeiramente, e a estrutura de árvore binária e/ou a estrutura de árvore ternária podem ser aplicadas mais tarde. Como alternativa, a estrutura de árvore binária também pode ser aplicada primeiramente. Um procedimento de codificação de acordo com a presente revelação pode ser realizado com base em uma unidade de codificação final, que não é mais dividida. Nesse caso, com base na eficácia de codificação de acordo com as características de imagem ou seus semelhantes, a unidade de codificação máxima pode ser usada diretamente como a unidade de codificação final ou, se necessário, a unidade de codificação pode ser dividida recursivamente em unidades de codificação mais profundas, de modo que uma unidade de codificação com um tamanho ideal possa ser usada como a unidade de codificação final. Aqui, o procedimento de codificação pode incluir um procedimento tal como predição, transformada e reconstrução, que serão descritos mais adiante. Em outro exemplo, a unidade de processamento pode incluir ainda uma unidade de predição (PU) ou uma unidade de transformada (TU). Nesse caso, cada uma da unidade de predição e unidade de transformada podem ser divididas ou particionadas a partir da unidade de codificação final supramencionada. A unidade de predição pode ser uma unidade de predição de amostra, e a unidade de transformada pode ser uma unidade para deduzir um coeficiente de transformada e/ou uma unidade para deduzir um sinal residual a partir do coeficiente de transformada.
[049] O termo "unidade" pode ser usado de maneira intercambiável com termos como "bloco" ou "área" em alguns casos. Em termos gerais, um bloco MxN pode representar amostras compostas por M colunas e N linhas ou um grupo de coeficientes de transformada. A amostra pode representar, em termos gerais, um pixel ou um valor do pixel, e também pode representar só o pixel/valor de pixel de um componente luma e também representar só o pixel/valor de pixel de um componente croma. "Amostra" pode ser usado como o termo correspondente a um pixel ou um pel que configura uma cena (ou imagem).
[050] O aparelho codificador 200 pode gerar um sinal residual (bloco residual, arranjo de amostras residuais) ao subtrair do sinal de imagem de entrada de imagem de entrada (bloco original, arranjo de amostras original) um sinal predito (bloco predito, arranjo de amostras de predição) emitido pelo preditor inter 221 ou pelo preditor intra 222, e o sinal residual gerado é transmitido ao transformador 232. Nesse caso, como ilustrado, a unidade para subtrair o sinal predito (bloco predito, arranjo de amostras de predição) do sinal de imagem de entrada (bloco original, arranjo de amostras original) dentro do codificador 200 pode ser chamada de subtrator 231. O preditor 110 pode realizar predição para um bloco a ser processado (doravante, chamado de bloco atual) e gerar um bloco predito que inclui amostras de predição do bloco atual. O preditor pode determinar se a predição intra ou predição inter é aplicada em unidades do bloco atual ou CU. O preditor pode gerar várias informações sobre a predição, tais como informações de modo de predição, para transmitir as informações geradas ao codificador por entropia 240, como descrito mais adiante na descrição de cada modo de predição. As informações sobre a predição podem ser codificadas no codificador por entropia 240 e emitidas na forma de um fluxo de bits.
[051] O preditor intra 222 pode predizer o bloco atual com referência a amostras dentro de uma cena atual. As amostras aludidas podem situar-se próximas ao bloco atual, ou também podem situar-se distantes do bloco atual de acordo com o modo de predição. Os modos de predição na predição intra podem incluir uma pluralidade de modos não direcionais e uma pluralidade de modos direcionais. O modo não direcional pode incluir, por exemplo, um modo DC ou um modo plano. O modo direcional pode incluir, por exemplo, 33 modos de predição direcionais ou 65 modos de predição direcionais de acordo com o nível de detalhes da direção de predição. No entanto, isso é ilustrativo, e um número de modos de predição direcionais superior ou inferior aos números acima pode ser usado de acordo com a configuração. O preditor intra 222 também pode determinar o modo de predição aplicado ao bloco atual usando o modo de predição aplicado ao bloco vizinho.
[052] O preditor inter 221 pode deduzir um bloco predito do bloco atual com base em um bloco de referência (arranjo de amostras de referência) especificado por um vetor de movimento em uma cena de referência. Nessa hora, a fim de reduzir a quantidade de informações de movimento transmitidas no modo de predição inter, as informações de movimento podem ser preditas em unidades de um bloco, sub- bloco ou amostra com base na correlação das informações de movimento entre o bloco vizinho e o bloco atual.As informações de movimento podem incluir um vetor de movimento e um índice de cenas de referência. As informações de movimento podem incluir ainda informações de direção de predição inter (predição L0, predição L1, predição Bi, ou seus semelhantes). No caso da predição inter, o bloco vizinho pode incluir um bloco vizinho espacial existente dentro da cena atual e um bloco vizinho temporal existente na cena de referência. A cena de referência que inclui o bloco de referência e a cena de referência que inclui o bloco vizinho temporal também podem ser a mesma, e também podem ser diferentes uma da outra. O bloco vizinho temporal pode ser chamado de nomes como bloco de referência colocalizado, CU colocalizada (colCU) ou seus semelhantes, e a cena de referência que inclui o bloco vizinho temporal também pode ser chamada de cena colocalizada (colPic). Por exemplo, o preditor inter 221 pode configurar uma lista de candidatos a informações de movimento com base nos blocos vizinhos e gerar informações indicativas de qual candidato é usado para derivar o vetor de movimento e/ou o índice de cenas de referência do bloco atual. A predição inter pode ser realizada com base em vários modos de predição, e, por exemplo, no caso de um modo de pulo e um modo de fusão, o preditor inter 221 pode usar as informação de movimento do bloco vizinho como informações de movimento do bloco atual. No caso do modo de pulo, o sinal residual pode não ser transmitido, à diferença do modo de fusão. Um modo de predição de vetor de movimento (MVP) pode indicar o vetor de movimento do bloco atual usando o vetor de movimento do bloco vizinho como um preditor de vetor de movimento e sinalizar uma diferença entre vetores de movimento.
[053] O preditor 200 pode gerar um sinal predito com base em vários métodos de predição que serão descritos abaixo. Por exemplo, o preditor pode não só aplicar a predição intra ou a predição inter para predizer um bloco mas também aplicar simultaneamente a predição intra e a predição inter. Isso pode ser chamado de predição inter e intra combinada (CIIP). Além disso, o preditor pode basear-se em um modo de predição cópia intrablocos (IBC) ou em um modo paleta a fim de praticar a predição em um bloco. O modo de predição IBC ou modo paleta podem ser usados para a codificação de imagens/vídeo de conteúdo de um jogo eletrônico, ou de algo do gênero, tal como codificação de conteúdo de tela (SCC). A IBC basicamente realiza a predição em uma cena atual mas pode ser realizada à semelhança da predição inter no sentido de que ela deriva um bloco de referência em uma cena atual. Ou seja, a IBC pode usar ao menos uma das técnicas de predição inter descritas no presente documento. O modo paleta pode ser considerado um exemplo de codificação intra ou predição intra Quando o modo paleta é aplicado, um valor de amostra em uma cena pode ser sinalizado com base em informações em um índice de paletas e uma tabela de paletas.
[054] O sinal predito gerado através do preditor (inclusive o preditor inter 221 e/ou o preditor intra 222) pode ser usado para gerar um sinal reconstruído ou para gerar um sinal residual. O transformador 232 pode gerar coeficientes de transformada aplicando a técnica de transformada ao sinal residual. Por exemplo, a técnica de transformada pode incluir ao menos um de uma transformada discreta de cosseno (DCT), uma transformada discreta de seno (DST), uma transformada de Karhunen-Loève (KLT), uma transformada baseada em gráfico (GBT) ou uma transformada condicionalmente não linear (CNT). Aqui, quando as informações de relação entre pixels são representadas em gráfico, a GBT significa a transformada obtida a partir do gráfico. A CNT significa a transformada que é obtida com base em um sinal predito gerado usando todos os pixels previamente reconstruídos. Além disso, o processo de transformada também pode ser aplicado a blocos de pixels com as mesmas dimensões que um quadrado, e também pode ser aplicado a blocos com dimensões variadas em vez de quadradas.
[055] O quantizador 233 pode quantizar os coeficientes de transformada para transmitir os coeficientes de transformada quantizados ao codificador por entropia 240, e o codificador por entropia 240 pode codificar o sinal quantizado (informações sobre os coeficientes de transformada quantizados) no sinal quantizado codificado para o fluxo de bits. As informações sobre os coeficientes de transformada quantizados podem ser chamadas de informações residuais. O quantizador 233 pode reorganizar os coeficientes de transformada quantizados em forma de bloco na forma de um vetor unidimensional com base na ordem de varredura dos coeficientes, e também gerar informações sobre os coeficientes de transformada quantizados com base nos coeficientes de transformada quantizados na forma de um vetor unidimensional.
O codificador por entropia 240 pode realizar vários métodos de codificação, por exemplo, tais como codificação exponencial de Golomb, codificação de comprimento variável adaptativa ao contexto (CAVLC) e codificação aritmética binária adaptativa ao contexto (CABAC). O codificador por entropia 240 também pode codificar informações (por exemplo, valores de elementos de sintaxe, e seus semelhantes) necessárias para reconstruir vídeos/imagens que não os coeficientes de transformada quantizados juntos ou em separado.
As informações codificadas (por exemplo, informações de vídeo/imagem codificadas) podem ser transmitidas ou armazenadas em unidades de camadas de abstração de rede (NALs) na forma de um fluxo de bits.
As informações de vídeo/imagem podem incluir ainda informações sobre vários conjuntos de parâmetros, tais como um conjunto de parâmetros de adaptação (APS), um conjunto de parâmetros de cena (PPS), um conjunto de parâmetros de sequência (SPS) ou um conjunto de parâmetros de vídeo (VPS). Além disso, as informações de vídeo/imagem podem incluir ainda informações de restrição gerais.
As informações sinalizadas/transmitidas ou elementos de sintaxe que serão descritos mais adiante neste documento podem ser codificados através do procedimento de codificação supramencionado e, portanto, incluídos no fluxo de bits.
O fluxo de bits pode ser transmitido através de uma rede ou armazenado em um meio de armazenamento digital.
Aqui, a rede pode incluir uma rede de difusão e/ou uma rede de comunicação, ou algo do gênero, e o meio de armazenamento digital pode incluir vários meios de armazenamento, tais como USB, SD, CD, DVD, Blu-ray, HDD e SSD.
Um transmissor (não ilustrado) para transmitir o sinal emitido pelo codificador por entropia 240 e/ou um armazenamento (não ilustrado) para armazenar o sinal podem ser configurados como os elementos internos/externos do aparelho codificador 200, ou o transmissor também pode ser incluído no codificador por entropia 240.
[056] Os coeficientes de transformada quantizados emitidos pelo quantizador 233 podem ser usados para gerar um sinal predito. Por exemplo, o desquantizador 234 e a transformada inversa 235 aplicam desquantização e transformada inversa aos coeficientes de transformada quantizados, de tal modo que o sinal residual (bloco residual ou amostras residuais) possa ser reconstruído. O somador 250 adiciona o sinal residual reconstruído ao sinal predito emitido pelo preditor inter 221 ou pelo preditor intra 222, de tal modo que o sinal reconstruído (cena reconstruída, bloco reconstruído, arranjo de amostras reconstruídas) possa ser gerado. Como no caso em que o modo de pulo é aplicado, se não houver residual para o bloco a ser processado, o bloco predito pode ser usado como o bloco reconstruído. O somador 250 pode ser chamado de reconstrutor ou gerador de blocos reconstruídos. O sinal reconstruído gerado pode ser usado para a predição intra do próximo bloco a ser processado dentro da cena atual, e, como descrito mais adiante, também usado para a predição inter da próxima cena através de filtragem.
[057] Entrementes, o mapeamento luma com escalonamento croma (LMCS) também pode ser aplicado em um processo de codificação e/ou reconstrução de cena.
[058] O filtro 260 pode aplicar filtragem ao sinal reconstruído, aprimorando assim qualidades de imagem subjetivas/objetivas. Por exemplo, o filtro 260 pode aplicar vários métodos de filtragem à cena reconstruída para gerar uma cena reconstruída modificada e armazenar a cena reconstruída modificada na memória 270, mais especificamente no DPB da memória 270. Vários métodos de filtragem podem incluir, por exemplo, filtragem de desblocagem, desvio adaptativo de amostra, filtro de loop adaptativo, filtro bilateral e seus semelhantes. O filtro 260 pode gerar várias informações relacionadas a filtragem para transmitir as informações geradas ao codificador por entropia 240, como descrito mais adiante na descrição de cada método de filtragem. As informações relacionadas a filtragem podem ser codificadas pelo codificador por entropia 240 para ser emitidas na forma de um fluxo de bits.
[059] A cena reconstruída modificada transmitida à memória 270 pode ser usada como a cena de referência no preditor inter 221. Se a predição inter for aplicada pelo preditor inter, o aparelho codificador pode evitar a incompatibilidade de predição entre o aparelho codificador 200 e o aparelho decodificador, e também aprimorar a eficácia de codificação.
[060] O DPB da memória 270 pode armazenar a cena reconstruída modificada que será usada como a cena de referência no preditor inter 221. A memória 270 pode armazenar as informações de movimento do bloco do qual as informações de movimento dentro da cena atual são derivadas (ou codificadas) e/ou as informações de movimento dos blocos dentro da cena previamente reconstruída. As informações de movimento armazenadas podem ser transmitidas ao preditor inter 221 para ser utilizadas como informações de movimento do bloco vizinho espacial ou informações de movimento do bloco vizinho temporal. A memória 270 pode armazenar as amostras reconstruídas dos blocos reconstruídos dentro da cena atual e transferir as amostras reconstruídas ao preditor intra 222.
[061] A FIG. 3 é um diagrama para explicar esquematicamente uma configuração de um aparelho decodificador de vídeo/imagem ao qual a presente revelação é aplicável.
[062] Com referência à FIG. 3, o aparelho decodificador 300 pode incluir e ser configurado com um decodificador por entropia 310, um processador residual 320, um preditor 330, um somador 340, um filtro 350 e uma memória 360. O preditor 330 pode incluir um preditor inter 331 e um preditor intra 332. O processador residual 320 pode incluir um desquantizador 321 e um transformador inverso 322. O decodificador por entropia 310, o processador residual 320, o preditor 330, o somador 340 e o filtro 350, que foram descritos acima, podem ser configurados por um ou mais componentes de hardware (por exemplo, chipsets ou processadores de decodificador) de acordo com uma modalidade. Além disso, a memória 360 pode incluir um buffer de cenas decodificadas (DPB) e pode ser configurada por um meio de armazenamento digital. O componente de hardware pode incluir ainda a memória 360 como um componente interno/externo.
[063] Quando o fluxo de bits que inclui informações de vídeo/imagem chega, o aparelho decodificador 300 pode reconstruir a imagem em resposta a um processo no qual as informações de vídeo/imagem são processadas no aparelho codificador ilustrado na FIG. 2. Por exemplo, o aparelho decodificador 300 pode derivar as unidades/blocos com base em informações relacionadas à partição em blocos obtidas do fluxo de bits. O aparelho decodificador 300 pode executar a decodificação usando a unidade de processamento aplicada ao aparelho codificador. Logo, a unidade de processamento para a decodificação pode ser, por exemplo, uma unidade de codificação, e a unidade de codificação pode ser dividida de acordo com a estrutura de árvore quaternária, a estrutura de árvore binária e/ou a estrutura de árvore ternária a partir da unidade de árvore de codificação ou da unidade de codificação máxima. Uma ou mais unidades de transformada podem ser derivadas da unidade de codificação. Além disso, o sinal de imagem reconstruído decodificado e emitido através do aparelho decodificador 300 pode ser reproduzido através de um aparelho reprodutor.
[064] O aparelho decodificador 300 pode receber o sinal emitido pelo aparelho codificador ilustrado na FIG. 2 na forma de um fluxo de bits, e o sinal recebido pode ser decodificado através do decodificador por entropia 310. Por exemplo, o decodificador por entropia 310 pode derivar informações (por exemplo,
informações de vídeo/imagem) necessárias à reconstruída de imagens (ou à reconstrução de cenas) ao analisar o fluxo de bits.
As informações de vídeo/imagem podem incluir ainda informações sobre vários conjuntos de parâmetros, tais como um conjunto de parâmetros de adaptação (APS), um conjunto de parâmetros de cena (PPS), um conjunto de parâmetros de sequência (SPS) e um conjunto de parâmetros de vídeo (VPS). Além disso, as informações de vídeo/imagem podem incluir ainda informações de restrição gerais.
O aparelho decodificador pode decodificar a cena com base ainda nas informações sobre o conjunto de parâmetros e/ou nas informações de restrições gerais.
As informações sinalizadas/recebidas e/ou os elementos de sintaxe, que serão descritos mais adiante neste documento, podem ser decodificados através do procedimento de decodificação e obtidos a partir do fluxo de bits.
Por exemplo, o decodificador por entropia 310 pode decodificar informações dentro do fluxo de bits com base em um método de codificação, tal como codificação de Golomb exponencial, CAVLC ou CABAC, e emitir um valor do elemento de sintaxe necessário à reconstrução de imagem, e os valores quantizados do coeficiente de transformada relacionado a residual.
Mais especificamente, o método de decodificação por entropia CABAC pode receber um bin correspondente a cada elemento de sintaxe a partir do fluxo de bits, determinar um modelo de contexto usando informações de elemento de sintaxe a ser decodificadas e decodificar informações do bloco vizinho e do bloco a ser decodificado ou informações do símbolo/bin decodificado no estágio anterior, e gerar um símbolo correspondente a um valor de cada elemento de sintaxe ao predizer a probabilidade de geração do bin de acordo com o modelo de contexto determinado para executar a decodificação aritmética do bin.
Nessa hora, o método de decodificação por entropia CABAC pode determinar o modelo de contexto e, em seguida, atualizar o modelo de contexto usando as informações do símbolo/bin decodificado para um modelo de contexto de um próximo símbolo/bin.
As informações sobre predição dentre as informações decodificadas pelo decodificador por entropia 310 podem ser providas ao preditor (ao preditor inter 332 e ao preditor intra 331), e um valor residual no qual a decodificação por entropia é realizada pelo decodificador por entropia 310, ou seja, os coeficientes de transformada quantizados e informações de parâmetro relacionadas, pode ser introduzido no processador residual 320. O processador residual 320 pode derivar um sinal residual (bloco residual, amostras residuais, arranjo de amostras residuais). Além disso, as informações sobre filtragem dentre as informações decodificadas pelo decodificador por entropia 310 podem ser encaminhadas ao filtro 350. Entrementes, um receptor (não ilustrado) para receber o sinal emitido pelo aparelho codificador pode ser adicionalmente configurado como o elemento interno/externo do aparelho decodificador 300, ou o receptor também pode ser um componente do decodificador por entropia 310. Entrementes, o aparelho decodificador de acordo com este documento pode ser chamado de aparelho decodificador de vídeo/imagem/cena, e o aparelho decodificador também pode ser classificado como um decodificador de informações (decodificador de informações de vídeo/imagem/cena) e um decodificador de amostras (decodificador de amostras de vídeo/imagem/cena). O decodificador de informações pode incluir o decodificador por entropia 310, e o decodificador de amostras pode incluir ao menos um dentre o desquantizador 321, o transformador inverso 322, o somador 340, o filtro 350, a memória 360, o preditor inter 332 e o preditor intra 331.
[065] O desquantizador 321 pode desquantizar os coeficientes de transformada quantizados para emitir os coeficientes de transformada. O desquantizador 321 pode reorganizar os coeficientes de transformada quantizados na forma de um bloco bidimensional. Nesse caso, a reorganização pode ser realizada com base em uma ordem de varredura dos coeficientes executada pelo aparelho codificador. O desquantizador 321 pode executar a desquantização para os coeficientes de transformada quantizados usando um parâmetro de quantização (por exemplo, informações de dimensões da etapa de quantização) e obter os coeficientes de transformada.
[066] O transformador inverso 322 transforma inversamente os coeficientes de transformada para obter o sinal residual (bloco residual, arranjo de amostras residuais).
[067] O preditor 330 pode executar a predição do bloco atual e gerar um bloco predito que inclui as amostras de predição do bloco atual. O preditor pode determinar se a predição intra ou inter é aplicada ao bloco atual com base nas informações sobre predição emitidas pelo codificador por entropia 310, e determinar um modo de predição intra/inter específico.
[068] O preditor 200 pode gerar o sinal predito com base em vários métodos de predição que serão descritos mais adiante. Por exemplo, o preditor pode não só aplicar a predição intra ou inter para a predição de um bloco mas também aplicar as predições intra e inter simultaneamente. Isso pode ser chamado de predição inter e intra combinada (CIIP). Além disso, o preditor pode basear-se em um modo de predição cópia intrablocos (IBC) ou em um modo paleta a fim de praticar a predição em um bloco. O modo de predição IBC ou modo paleta podem ser usados para a codificação de imagens/vídeo de conteúdo de um jogo eletrônico, ou de algo do gênero, tal como codificação de conteúdo de tela (SCC). A IBC basicamente realiza a predição em uma cena atual mas pode ser realizada à semelhança da predição inter no sentido de que ela deriva um bloco de referência em uma cena atual. Ou seja, a IBC pode usar ao menos uma das técnicas de predição inter descritas no presente documento. O modo paleta pode ser considerado um exemplo de codificação intra ou predição intra Quando o modo paleta é aplicado, informações sobre uma tabela de paletas e um índice de paletas podem ser incluídas nas informações de vídeo/imagem e sinalizadas.
[069] O preditor intra 331 pode predizer o bloco atual com referência às amostras dentro da cena atual. As amostras aludidas podem situar-se próximas ao bloco atual de acordo com o modo de predição, ou também podem situar-se distantes do bloco atual. Os modos de predição na predição intra podem incluir uma pluralidade de modos não direcionais e uma pluralidade de modos direcionais. O preditor intra 331 também pode determinar o modo de predição aplicado ao bloco atual usando o modo de predição aplicado ao bloco vizinho.
[070] O preditor inter 332 pode deduzir o bloco predito do bloco atual com base no bloco de referência (arranjo de amostras de referência) especificado pelo vetor de movimento na cena de referência. Nessa hora, a fim de reduzir a quantidade de informações de movimento transmitidas no modo de predição inter, as informações de movimento podem ser preditas em unidades de um bloco, sub-bloco ou amostra com base na correlação das informações de movimento entre o bloco vizinho e o bloco atual. As informações de movimento podem incluir um vetor de movimento e um índice de cenas de referência. As informações de movimento podem incluir ainda informações de direção de predição inter (predição L0, predição L1, predição Bi, ou seus semelhantes). No caso da predição inter, o bloco vizinho pode incluir um bloco vizinho espacial existente dentro da cena atual e um bloco vizinho temporal existente na cena de referência. Por exemplo, o preditor inter 332 pode configurar uma lista de candidatos a informações de movimento com base nos blocos vizinhos e derivar o vetor de movimento e/ou o índice de cenas de referência do bloco atual com base em informações de seleção de candidato recebidas. A predição inter pode ser executada com base em vários modos de predição, e as informações sobre a predição podem incluir informações indicativas do modo da predição inter do bloco atual.
[071] O somador 340 pode adicionar o sinal residual ao sinal predito (bloco predito, arranjo de amostras de predição) emitido pelo preditor (incluindo pelo preditor inter 332 e/ou pelo preditor intra 331) para gerar o sinal reconstruído (cena reconstruída, bloco reconstruído, arranjo de amostras reconstruídas). Como no caso em que o modo de pulo é aplicado, se não houver residual para o bloco a ser processado, o bloco predito pode ser usado como o bloco reconstruído.
[072] O somador 340 pode ser chamado de reconstrutor ou gerador de blocos reconstruídos. O sinal reconstruído gerado pode ser usado para a predição intra de um próximo bloco a ser processado dentro da cena atual, e, como descrito mais adiante, também pode ser emitido através de filtragem ou também pode ser usado para a predição inter de uma próxima cena.
[073] Entrementes, um mapeamento luma com escalonamento croma (LMCS) também pode ser aplicado no processo de codificação de cena.
[074] O filtro 350 pode aplicar filtragem ao sinal reconstruído, aprimorando assim qualidades de imagem subjetivas/objetivas. Por exemplo, o filtro 350 pode aplicar vários métodos de filtragem à cena reconstruída para gerar uma cena reconstruída modificada e transmitir a cena reconstruída modificada à memória 360, mais especificamente ao DPB da memória 360. Vários métodos de filtragem podem incluir, por exemplo, filtragem de desblocagem, desvio adaptativo de amostra, filtro de loop adaptativo, filtro bidirecional e seus semelhantes.
[075] A cena reconstruída (modificada) armazenada no DPB da memória 360 pode ser usada como a cena de referência no preditor inter 332. A memória 360 pode armazenar as informações de movimento do bloco do qual as informações de movimento dentro da cena atual são derivadas (codificadas) e/ou as informações de movimento dos blocos dentro da cena previamente reconstruída. As informações de movimento armazenadas podem ser transmitidas ao preditor inter 260 para ser utilizadas como informações de movimento do bloco vizinho espacial ou informações de movimento do bloco vizinho temporal. A memória 360 pode armazenar as amostras reconstruídas dos blocos reconstruídos dentro da cena atual e transferir as amostras reconstruídas armazenadas ao preditor intra 331.
[076] No presente relatório descritivo, as modalidades exemplificativas descritas no filtro 260, no preditor inter 221 e no preditor intra 222 do aparelho codificador 200 podem ser aplicadas igualmente ou corresponder ao filtro 350, ao preditor inter 332 e ao preditor intra 331 do aparelho decodificador 300, respectivamente.
[077] Entrementes, conforme descrito acima, ao executar a codificação de vídeo, a predição é realizada para aprimorar a eficácia de compressão. Com isso, um bloco predito que inclui amostras de predição para um bloco atual como um bloco a ser codificado (isto é, um bloco alvo de codificação) pode ser gerado. Aqui, o bloco predito inclui amostras de predição em um domínio espacial (ou domínio de pixel). O bloco predito é derivado da mesma maneira em um aparelho codificador e um aparelho decodificador, e o aparelho codificador pode sinalizar informações (informações residuais) sobre o residual entre o bloco original e o bloco predito, em vez de um valor de amostra original de um bloco original, ao aparelho decodificador, aumentando assim a eficácia na codificação de imagens. O aparelho decodificador pode derivar um bloco residual que inclui amostras residuais com base nas informações residuais, adicionar o bloco residual e o bloco predito para gerar blocos reconstruídos que incluem amostras reconstruídas, e gerar uma cena reconstruída que inclui os blocos reconstruídos.
[078] As informações residuais podem ser geradas através de um procedimento de transformada e quantização. Por exemplo, o aparelho codificador pode derivar um bloco residual entre o bloco original e o bloco predito, executar um procedimento de transformada sobre amostras residuais (arranjo de amostras residuais) incluídas no bloco residual para derivar coeficientes de transformada, executar um procedimento de quantização sobre os coeficientes de transformada para derivar coeficientes de transformada quantizados, e sinalizar informações residuais relacionadas ao aparelho decodificador (através de um fluxo de bits). Aqui, as informações residuais podem incluir informações de valor dos coeficientes de transformada quantizados, informações de localização, uma técnica de transformada, um kernel de transformada, um parâmetro de quantização, e seus semelhantes. O aparelho decodificador pode executar um procedimento de desquantização/transformada inversa com base nas informações residuais e derivar amostras residuais (ou blocos residuais). O aparelho decodificador pode gerar uma cena reconstruída com base no bloco predito e no bloco residual. Além disso, no que diz respeito à predição inter de uma cena posterior, o aparelho codificador também pode desquantizar/transformar inversamente os coeficientes de transformada quantizados para derivar um bloco residual e gerar uma cena reconstruída com base nele.
[079] Entrementes, quando realiza-se a predição intra, a correlação entre amostras pode ser utilizada, e uma diferença entre o bloco original e um bloco de predição, a saber, residuais, pode ser obtida. A transformação e quantização descritas acima podem ser aplicadas aos residuais, com o quê a redundância espacial pode ser removida. Doravante, descrever-se-ão em detalhes métodos de codificação e decodificação que empregam a predição inter.
[080] A predição intra refere-se à predição para gerar amostras de predição para um bloco atual com base em amostras de referência externas do bloco atual em uma cena a que pertence o bloco atual (doravante chamada de cena atual). Aqui, as amostras de referência externas do bloco atual podem referir-se às amostras situadas nas proximidades do bloco atual. Quando aplica-se a predição intra ao bloco atual, podem ser derivadas amostras de referência vizinhas a ser usadas na predição intra do bloco atual.
[081] Por exemplo, quando as dimensões (largura x altura) de um bloco são nWxnH, as amostras de referência vizinhas do bloco atual podem incluir amostras adjacentes ao limite esquerdo do bloco atual e um total de 2xnH amostras adjacentes ao canto inferior esquerdo, amostras adjacentes ao limite superior do bloco atual e um total de 2xnW amostras adjacentes ao canto superior direito, e uma amostra adjacente ao canto superior esquerdo do bloco atual. Como alternativa, amostras de referência vizinhas do bloco atual podem incluir várias colunas de amostras vizinhas superiores e várias linhas de amostras vizinhas esquerdas. Além disso, amostras de referência vizinhas do bloco atual podem incluir um total de nH amostras adjacentes ao limite direito do bloco atual, um total de nW amostras adjacentes ao limite inferior do bloco atual, e uma amostra adjacente ao canto direito inferior do bloco atual.
[082] No entanto, algumas das amostras de referência vizinhas do bloco atual podem não ter sido decodificadas ainda ou não estar disponíveis. Nesse caso, o aparelho decodificador pode construir amostras de referência vizinhas a ser usadas na predição substituindo amostras não disponíveis por amostras disponíveis. Como alternativa, amostras de referência vizinhas a ser usadas para predição podem ser construídas através da interpolação das amostras disponíveis.
[083] Quando amostras de referência vizinhas são derivadas, (i) uma amostra de predição pode ser derivada com base na média ou interpolação de amostras de referência vizinhas do bloco atual, ou (ii) a amostra de predição pode ser derivada com base em uma amostra de referência situada em uma direção (de predição) específica em relação à amostra de predição dentre amostras de referência vizinhas do bloco atual. O caso (i) pode ser aplicado quando o modo de predição intra for um modo não direcional ou um modo não angular, ao passo que o caso (ii) pode ser aplicado quando o modo de predição intra for um modo direcional ou um modo angular.
[084] Além disso, a amostra de predição pode ser gerada através da interpolação entre uma primeira amostra vizinha situada em uma direção de predição do modo de predição intra do bloco atual com base na amostra de predição do bloco atual dentre amostras de referência vizinhas e uma segunda amostra vizinha situada na direção oposta à direção de predição. O caso acima pode ser chamado de predição intra por interpolação linear (LIP). Além disso, amostras de predição croma podem ser geradas com base em amostras luma usando um modelo linear. Esse caso pode ser chamado de modo LM.
[085] Além disso, uma amostra de predição do bloco atual pode ser derivada derivando uma amostra de predição temporária do bloco atual com base em amostras de referência vizinhas filtradas e usando uma soma ponderada de ao menos uma amostra de referência derivada de acordo com o modo de predição intra dentre amostras de referência vizinhas existentes, ou seja, amostras de referência vizinhas não filtradas, e a amostra de predição temporária. O caso acima pode ser chamado de Predição Intra Dependente da Posição (PDPC).
[086] Além disso, a codificação por predição intra pode ser realizada selecionando uma linha de amostras de referência com a precisão de predição mais alta dentre várias linhas de amostras de referência vizinhas do bloco atual para derivar uma amostra de predição usando uma amostra de referência situada na direção de predição da linha correspondente e indicando (sinalizando) a linha de amostras de referência usada ao aparelho decodificador. O caso acima pode ser chamado de predição intra por Linha Multirreferência (LIP) ou predição intra baseada em MRL.
[087] Além disso, o bloco atual pode ser dividido em subpartições verticais ou horizontais para realizar a predição intra sob o mesmo modo de predição intra, onde amostras de referência vizinhas podem ser derivadas e usadas em unidades de subpartições. Em outras palavras, embora o modo de predição intra para o bloco atual possa ser aplicado da mesma maneira para todas as subpartições, o desempenho de predição intra pode ser aprimorado dependendo das situações ao derivar e usar amostras de referência vizinhas em unidades de subpartições. O método de predição acima pode ser chamado de Subpartições Intra (ISP) ou predição intra baseada em ISP.
[088] Os métodos de predição intra podem ser mencionados como um tipo de predição intra a ser distinguido do modo de predição intra. O tipo de predição intra pode ser aludido por vários termos, tais como um esquema de predição intra ou um modo de predição intra adicional. Por exemplo, o tipo de predição intra (ou o modo de predição intra adicional) pode incluir ao menos um de LIP, PDPC, MRL e ISP. Um método de predição intra geral, salvo o tipo de predição intra específico, tal como LIP, PDPC, MRL e ISP, pode ser mencionado como um tipo de predição intra normal. O tipo de predição intra normal pode ser aplicado comumente quando o tipo de predição intra específico não é aplicado, e a predição pode ser realizada com base no modo de predição intra. Entrementes, dependendo de necessidade, pode- se realizar pós-filtragem sobre a amostra de predição derivada.
[089] A FIG. 4 ilustra um exemplo de um método para codificar imagens baseado na predição intra ao qual modalidades da presente revelação podem ser aplicadas, e a FIG. 5 ilustra um preditor intra em um aparelho codificador. O preditor intra dentro do aparelho codificador da FIG. 5 pode ser aplicado da mesma maneira e de tal maneira que corresponda à predição intra 222 do aparelho codificador 200 da FIG. 2.
[090] Com referência às FIGs. 4 e 5, a etapa S400 pode ser executada pelo preditor intra 222 do aparelho codificador, e a etapa S410 pode ser executada pelo processador residual 230 do aparelho codificador. Mais especificamente, a etapa S410 pode ser realizada pelo subtrator 231 do aparelho codificador. Na etapa S420, as informações de predição podem ser derivadas pelo preditor intra 222 e codificadas pelo codificador por entropia 240. Na etapa S420, as informações residuais podem ser derivadas pelo processador residual 230 e codificadas pelo codificador por entropia 240. As informações residuais são as informações sobre amostras residuais. As informações residuais podem incluir informações sobre os coeficientes de transformada quantizados para as amostras residuais. Como descrito acima, as amostras residuais podem ser derivadas como coeficientes de transformada através do transformador 232 do aparelho codificador, e os coeficientes de transformada podem ser derivados como coeficientes de transformada quantizados através do quantizador 233. As informações sobre os coeficientes de transformada quantizados podem ser codificadas pelo codificador por entropia 240 através de um procedimento de codificação residual.
[091] O aparelho codificador realiza a predição intra sobre o bloco atual S400. O aparelho codificador pode derivar um modo/tipo de predição intra para o bloco atual, derivar amostras de referência vizinhas do bloco atual, e gerar amostras de predição no bloco atual com base no modo/tipo de predição intra e nas amostras de referência vizinhas. Aqui, procedimentos para determinar o modo/tipo de predição intra, derivar as amostras de referência vizinhas e gerar as amostras de predição podem ser praticados simultaneamente, ou um procedimento pode ser praticado antes dos demais.
[092] Por exemplo, o preditor intra 222 do aparelho codificador pode incluir uma unidade de determinação do modo/tipo de predição intra 222-1, uma unidade de derivação de amostras de referência 222-2 e uma unidade de derivação de amostras de predição 222-3; a unidade de determinação do modo/tipo de predição intra 222-1 pode determinar um modo/tipo de predição intra para o bloco atual; uma unidade de derivação de amostras de referência 222-2 pode derivar amostras de referência vizinhas do bloco atual; e a unidade de derivação de amostras de predição 222-3 pode derivar amostras de predição do bloco atual. Embora não ilustrado, quando um procedimento de filtragem de amostras de predição é executado, o preditor intra 222 pode incluir ainda um filtro de amostras de predição
(não ilustrado). O aparelho codificador pode determinar um modo/tipo aplicado ao bloco atual dentre uma pluralidade de modos/tipos de predição intra. O aparelho codificador pode comparar o custo RD para os modos/tipos de predição intra e determinar o modo/tipo de predição intra ideal para o bloco atual.
[093] Como descrito acima, o aparelho codificador pode executar um procedimento de filtragem de amostras de predição. A filtragem de amostras de predição pode ser chamada de pós-filtragem. Algumas das ou todas as amostras de predição podem ser filtradas pelo procedimento de filtragem de amostras de predição. Em alguns casos, o procedimento de filtragem de amostras de predição pode ser omitido.
[094] O aparelho codificador gera amostras residuais para o bloco atual com base nas amostras de predição (filtradas) S410. O aparelho codificador pode comparar as amostras de predição às amostras originais do bloco atual em termos de fases e derivar amostras residuais.
[095] O aparelho codificador pode codificar informações de imagem que incluem informações sobre predição intra (informações de predição) e informações residuais sobre as amostras residuais S420. As informações de predição podem incluir informações de modo de predição intra e informações de tipo de predição intra. As informações residuais podem incluir sintaxe de codificação residual. O aparelho codificador pode derivar coeficientes de transformada quantizados ao transformar/quantizar as amostras residuais. As informações residuais podem incluir informações sobre os coeficientes de transformada quantizados.
[096] O aparelho codificador pode emitir informações de imagem codificadas na forma de um fluxo de bits. O fluxo de bits de saída pode ser distribuído ao aparelho decodificador através de um meio de armazenamento ou rede.
[097] Como descrito acima, o aparelho codificador pode gerar uma cena reconstruída (que inclui amostras reconstruídas e um bloco reconstruído). Para tanto, o aparelho codificador pode derivar amostras residuais (modificadas) ao aplicar a desquantização/transformada inversa novamente aos coeficientes de transformada quantizados. O motivo por que realiza-se a desquantização/transformada inversa novamente após amostras residuais serem transformadas/quantizadas é para derivar amostras residuais que sejam iguais às amostras residuais derivadas do aparelho decodificador conforme descrito acima. O aparelho codificador pode gerar um bloco reconstruído que inclui amostras reconstruídas para o bloco atual com base nas amostras de predição e amostras residuais (modificadas). Com base no bloco reconstruído, pode-se gerar uma cena reconstruída para a cena atual. Como descrito acima, um procedimento de filtragem in-loop pode ser adicionalmente aplicado à cena reconstruída.
[098] A FIG. 6 ilustra um exemplo de um método para decodificar imagens baseado na predição intra ao qual modalidades da presente revelação podem ser aplicadas, e a FIG. 7 ilustra um preditor intra em um aparelho decodificador. O preditor intra dentro do aparelho decodificador da FIG. 7 pode ser aplicado da mesma maneira e de tal maneira que corresponda à predição intra 331 do aparelho decodificador 300 da FIG. 3.
[099] Com referência às FIGs. 6 e 7, o aparelho decodificador pode executar uma operação correspondente à operação executada no aparelho codificador. As etapas S600 a S620 podem ser executadas pelo preditor intra 331 do aparelho decodificador, e as informações de predição da etapa S600 e as informações residuais da etapa S630 podem ser obtidas a partir de um fluxo de bits pelo decodificador por entropia 310 do aparelho decodificador. O processador residual 320 do aparelho decodificador pode derivar amostras residuais para o bloco atual com base nas informações residuais. Mais especificamente, o desquantizador 321 do processador residual 320 pode derivar coeficientes de transformada ao executar a desquantização com base nos coeficientes de transformada quantizados derivados com base nas informações residuais e derivar amostras residuais para o bloco atual ao executar a transformada inversa sobre os coeficientes de transformada. A etapa S640 pode ser executada pelo somador 340 ou reconstrutor do aparelho decodificador.
[0100] O aparelho decodificador pode derivar o modo/tipo de predição intra para o bloco atual com base nas informações de predição recebidas (informações de modo/tipo de predição intra) S600. O aparelho decodificador pode derivar amostras de referência vizinhas do bloco atual S610. O aparelho decodificador gera amostras de predição dentro do bloco atual com base no modo/tipo de predição intra e amostras de referência vizinhas S620. Nesse caso, o aparelho decodificador pode executar um procedimento de filtragem de amostras de predição. A filtragem de amostras de predição pode ser chamada de pós-filtragem. Algumas das ou todas as amostras de predição podem ser filtradas pelo procedimento de filtragem de amostras de predição. Em alguns casos, o procedimento de filtragem de amostras de predição pode ser omitido.
[0101] O aparelho decodificador gera amostras residuais para o bloco atual com base nas informações residuais recebidas S630. O aparelho decodificador pode gerar amostras reconstruídas para o bloco atual com base nas amostras de predição e nas amostras residuais e gerar um bloco reconstruído que inclui amostras reconstruídas S640. Uma cena reconstruída pode ser gerada para a cena atual com base no bloco reconstruído. Como descrito acima, o procedimento de filtragem in- loop pode ser adicionalmente aplicado à cena reconstruída.
[0102] Aqui, o preditor intra 331 do aparelho decodificador pode incluir uma unidade de determinação do modo de predição intra 331-1, uma unidade de derivação de amostras de referência 331-2 e uma unidade de derivação de amostras de predição 331-2; a unidade de determinação do modo/tipo de predição intra 331-1 pode determinar um modo/tipo de predição intra para o bloco atual com base nas informações de modo/tipo de predição intra obtidas pelo decodificador por entropia 310; a unidade de derivação de amostras de referência 331-2 pode derivar amostras de referência vizinhas do bloco atual; e a unidade de derivação de amostras de predição 331-3 pode derivar amostras de predição do bloco atual. Embora não ilustrado, quando o procedimento de filtragem de amostras de predição é executado, o preditor intra 331 pode incluir ainda um filtro de amostras de predição (não ilustrado).
[0103] As informações de modo de predição intra incluem, por exemplo, informações de flag (por exemplo, intra_luma_mpm_flag) que indicam se um Modo Mais Provável (MPM) é aplicado ao bloco atual ou se um modo remanescente é aplicado ao bloco atual. Quando o MPM é aplicado ao bloco atual, as informações de modo de predição podem incluir ainda informações de índice (por exemplo, intra_luma_mpm_idx) que indicam um dos candidatos a modo de predição intra (candidatos a MPM). Os candidatos a modo de predição intra (candidatos a MPM) podem compreender uma lista de candidatos a MPM ou uma lista de MPM. Além disso, quando o MPM não é aplicado ao bloco atual, as informações de modo de predição intra podem incluir ainda informações de modo remanescentes (por exemplo, intra_luma_mpm_remainder) que indicam um dos modos de predição intra remanescentes, salvo os candidatos a modo de predição intra (candidatos a MPM). O aparelho decodificador pode determinar o modo de predição intra do bloco atual com base nas informações de modo de predição intra.
[0104] Além disso, as informações de tipo de predição intra podem ser implementadas em várias formas. Em um exemplo, as informações de tipo de predição intra podem incluir informações de índice de tipo de predição intra que indicam um dos tipos de predição intra. Em outro exemplo, as informações de tipo de predição intra podem incluir ao menos uma de informações de linhas de amostras de referência (por exemplo, intra_luma_ref_idx) que indicam se as MRLs são aplicadas ao bloco atual e qual linha de amostras de referência é usada quando as MRLs são aplicadas, informações de flag de ISP (por exemplo, intra_subpartitions_mode_flag) que indicam se a ISP é aplicada ao bloco atual, informações de tipo de ISP (por exemplo, intra_subpartitions_split_flag) que indicam um tipo de divisão de subpartições, informações de flag que indicam se o PDCP é aplicado, ou informações de flag que indicam se a LIP é aplicada. Além disso, as informações de tipo de predição intra podem incluir uma flag de MIP que indica se a MIP é aplicada à flag atual.
[0105] As informações de modo de predição intra e/ou informações de tipo de predição intra podem ser codificadas/decodificadas através do método de codificação descrito neste documento. Por exemplo, as informações de modo de predição intra podem ser codificadas/decodificadas através de codificação por entropia (por exemplo, CABAC ou CAVLC) com base em um código binário truncado (rice).
[0106] Entrementes, quando a predição intra é aplicada, um modo de predição intra aplicado a um bloco atual pode ser determinado usando um modo de predição intra de um bloco vizinho. Por exemplo, o aparelho decodificador pode selecionar, com base em um índice de MPM recebido, um dos candidatos a MPM dentro da lista de MPM derivada com base no modo de predição intra de um bloco vizinho (por exemplo, um bloco vizinho esquerdo e/ou superior) do bloco atual e modos de candidato adicionais ou selecionar um dos demais modos de predição intra remanescentes não incluídos nos candidatos a MPM (e modo plano) com base nas informações de modo de predição intra remanescentes. A lista de MPM pode ser construída para incluir ou não um modo plano como candidato. Por exemplo, quando a lista de MPM inclui um modo plano como candidato, a lista de MPM pode ter seis candidatos. Do contrário, a lista de MPM pode ter cinco candidatos. Quando a lista de MPM não inclui o modo plano como candidato, uma flag não plana (por exemplo,
intra_luma_not_planar_flag) que indica se o modo de predição intra do bloco atual é ou não um modo plano pode ser sinalizada. Por exemplo, quando a flag de MPM é sinalizada primeiramente, o índice de MPM e a flag não plana podem ser sinalizados quando o valor da flag de MPM for 1. Além disso, o índice de MPM pode ser sinalizado quando o valor da flag não plana for 1. Aqui, tenciona-se construir uma lista de MPM que não inclua o modo plano como candidato primeiramente para verificar se o modo de predição intra é um modo plano através da sinalização da flag não plana, que não visa a indicar que o modo plano não é MPM mas refletir o fato de que o modo plano nem sempre é considerado o MPM.
[0107] Por exemplo, pode-se indicar se um modo de predição intra aplicado a um bloco atual não está incluído nos candidatos a MPM (e modo plano) ou no modo remanescente com base na flag de MPM (por exemplo, intra_luma_mpm_flag). Quando a flag de MPM é 1, significa que o modo de predição intra para o bloco atual está incluído nos candidatos a MPM (e modo plano), ao passo que, quando a flag de MPM é 0, significa que o modo de predição intra para o bloco atual não está incluído nos candidatos a MPM (e modo plano). Quando a flag não plana (por exemplo, intra_luma_not_planar_flag) é 0, significa que o modo de predição intra para o bloco atual é o modo plano, ao passo que, quando a flag não plana é 1, significa que o modo de predição intra para o bloco atual não é o modo plano. O índice de MPM pode ser sinalizado na forma do elemento de sintaxe mpm_idx ou intra_luma_mpm_idx, e as informações de modo de predição intra remanescentes podem ser sinalizadas na forma do elemento de sintaxe rem_intra_luma_pred_mode ou intra_luma_mpm_remainder. Por exemplo, as informações de modo de predição intra remanescentes podem ser sinalizadas na forma do elemento de sintaxe rem_intra_luma_pred_mode ou intra_luma_mpm_remainder. Por exemplo, as informações de modo de predição intra remanescentes podem indicar um dos modos de predição intra remanescentes não incluídos nos candidatos a MPM (e modo plano) dentre todos os modos de predição intra ao indexar os modos de predição intra remanescentes na ordem do número de modos de predição. O modo de predição intra pode ser relacionado ao componente luma (amostra). Doravante, as informações de modo de predição intra podem incluir ao menos um de flag de MPM (por exemplo, intra_luma_mpm_flag), flag não plana (por exemplo, intra_luma_not_planar_flag), índice de MPM (por exemplo, mpm_idx ou intra_luma_mpm_idx) e informações de modo de predição intra remanescentes (por exemplo, rem_intra_luma_pred_mode ou intra_luma_mpm_remainder). Na presente revelação, a lista de MPM pode ser aludida por vários termos, tais como lista de candidatos a MPM ou candModeList.
[0108] Em termos gerais, quando executa-se a divisão de um bloco em uma imagem, um bloco atual e um bloco vizinho a ser codificado têm características de imagem semelhantes. Logo, o bloco atual e o bloco vizinho têm alta probabilidade de ter o mesmo modo de predição intra ou um modo de predição intra semelhante. Logo, o codificador pode utilizar o modo de predição intra do bloco vizinho para codificar o modo de predição intra do bloco atual. Por exemplo, o codificador/decodificador pode configurar uma lista de modos mais prováveis (MPM) para um bloco atual. A lista de MPM pode ser chamada de lista de candidatos a MPM. Aqui, o MPM pode significar um modo usado para aumentar a eficácia na codificação ao considerar a similaridade entre um bloco atual e um bloco atual no momento da codificação por modo de predição intra.
[0109] A FIG. 8 ilustra um exemplo de um método de predição intra baseado em MPM de um aparelho codificador ao qual modalidades da presente revelação podem ser aplicadas.
[0110] Com referência à FIG. 8, o aparelho codificador constrói uma lista de MPM para um bloco atual S800. A lista de MPM pode incluir modos de predição intra candidatos (candidatos a MPM) com alta probabilidade de aplicação ao bloco atual.
A lista de MPM pode incluir o modo de predição intra de um bloco vizinho e pode incluir ainda modos de predição intra específicos de acordo com um método predeterminado. Um método específico para construir uma lista de MPM será descrito mais adiante.
[0111] O aparelho codificador determina o modo de predição intra do bloco atual S810. O aparelho codificador pode executar a predição com base em vários modos de predição intra e determinar o modo de predição intra ideal com base na Otimização em Taxa-Distorção (RDO) usando a predição. Nesse caso, o aparelho codificador pode determinar o modo de predição intra ideal usando só os candidatos a MPM e o modo plano configurados na lista de MPM ou determinar o modo de predição intra ideal usando ainda os modos de predição intra remanescentes, além dos candidatos a MPM e o modo plano configurados na lista de MPM.
[0112] Mais especificamente, por exemplo, quando o tipo de predição intra do bloco atual é um tipo específico (por exemplo, LIP, MRL ou ISP) em vez do tipo de predição intra normal, o aparelho codificador pode determinar o modo de predição intra ideal considerando só os candidatos a MPM e o modo plano como os candidatos a modo de predição intra para o bloco atual. Em outras palavras, o modo de predição intra para o bloco atual pode ser determinado somente entre os candidatos a MPM e o modo plano, onde, neste caso, a flag de MPM pode não ser codificada/sinalizada. O aparelho decodificador, neste caso, pode supor que a flag de MPM é 1 mesmo sem receber sinalização separada da flag de MPM.
[0113] Em termos gerais, quando o modo de predição intra de um bloco atual não é o modo plano mas um dos candidatos a MPM na lista de MPM, o aparelho codificador gera um índice de MPM (mpm idx) que indica um dos candidatos a MPM. Se o modo de predição intra do bloco atual também não for incluído na lista de MPM, o aparelho codificador gera informações de modo de predição intra remanescentes que indicam um modo que é o mesmo que o modo de predição intra do bloco atual dentre os modos de predição intra remanescentes não incluídos na lista de MPM (e o modo plano).
[0114] O aparelho codificador pode codificar as informações de modo de predição intra e emitir as informações codificadas na forma de um fluxo de bits S820. As informações de modo de predição intra podem incluir a flag de MPM, a flag não plana, o índice de MPM e/ou as informações de modo de predição intra remanescentes descritos acima. Em termos gerais, as informações de índice de MPM e as informações de modo de predição intra remanescentes têm uma relação alternativa e não são sinalizadas simultaneamente ao indicar um modo de predição intra para um bloco. Em outras palavras, o valor da flag de MPM 1 e a flag não plana ou o índice de MPM podem ser sinalizados juntos, ou o valor da flag de MPM 0 e as informações de modo de predição intra remanescentes são sinalizados juntos. No entanto, como descrito acima, quando um tipo de predição intra específico é aplicado ao bloco atual, a flag de MPM pode não ser sinalizada, mas só a flag não plana e/ou o índice de MPM podem ser sinalizados. Ou seja, nesse caso, as informações de modo de predição intra podem incluir só a flag não plana e/ou o índice de MPM.
[0115] A FIG. 9 ilustra um exemplo de um método de predição intra baseado em MPM de um aparelho decodificador ao qual modalidades da presente revelação podem ser aplicadas. O aparelho decodificador da FIG. 9 pode determinar um modo de predição intra em resposta às informações de modo de predição intra determinadas e sinalizadas pelo aparelho codificador da FIG. 8.
[0116] Com referência à FIG. 9, o aparelho decodificador obtém informações de modo de predição intra a partir de um fluxo de bits S900. Como descrito acima, as informações de modo de predição intra podem incluir ao menos um de uma flag de MPM, uma flag não plana, um índice de MPM e um modo de predição intra remanescente.
[0117] O aparelho decodificador constrói uma lista de MPM S910. A lista de MPM é construída da mesma maneira que a lista de MPM construída pelo aparelho codificador. Em outras palavras, a lista de MPM pode incluir um modo de predição intra de um bloco vizinho e pode incluir ainda modos de predição intra específicos de acordo com um método predeterminado. Um método específico para construir uma lista de MPM será descrito mais adiante.
[0118] Embora a etapa S910 seja descrita como realizada após a etapa S900, a ordem de execução é só um exemplo, e a etapa S910 pode ser realizada antes da etapa S900 ou pode ser realizada simultaneamente à etapa S900.
[0119] O aparelho decodificador determina um modo de predição intra do bloco atual com base na lista de MPM e nas informações de modo de predição intra S920.
[0120] Em um exemplo, quando o valor da flag de MPM é 1, o aparelho decodificador pode derivar um modo plano como um modo de predição intra do bloco atual ou derivar um candidato indicado pelo índice de MPM dentre candidatos a MPM na lista de MPM (com base na flag não plana) como um modo de predição intra do bloco atual. Aqui, os candidatos a MPM podem incluir só os candidatos incluídos na lista de MPM ou incluir ainda um modo plano que possa ser aplicado a um caso em que o valor da flag de MPM é 1, além dos candidatos incluídos na lista de MPM.
[0121] Em outro exemplo, quando o valor da flag de MPM é 0, o aparelho decodificador pode derivar um modo de predição intra indicado pelas informações de modo de predição intra remanescentes dentre os modos de predição intra remanescentes não incluídos na lista de MPM e o modo plano como um modo de predição intra do bloco atual.
[0122] Em ainda outro exemplo, quando o tipo de predição intra do bloco atual é um tipo específico (por exemplo, LIP, MRL ou ISP), o aparelho decodificador pode derivar um candidato indicado pelo modo plano ou pelo índice de MPM dentro da lista de MPM como um modo de predição intra do bloco atual mesmo sem verificar a flag de MPM.
[0123] Entrementes, o modo de predição intra pode incluir modos de predição intra não direcionais (não angulares) e modos de predição intra direcionais (ou angulares). Por exemplo, o padrão HEVC utiliza modos de predição intra, incluindo dois modos de predição não direcionais e 33 modos de predição direcionais. Um modo de predição não direcional pode incluir o modo de predição intra plano 0 e o modo de predição intra DC 1, ao passo que um modo de predição direcional pode incluir os modos de predição intra 2 a 34. Um modo de predição intra plano pode ser chamado de modo plano, e um modo de predição intra DC pode ser chamado de modo DC.
[0124] Para capturar uma direção de borda específica encontrada em um vídeo natural, os modos de predição intra direcionais podem ser estendidos dos 33 modos existentes para 65 modos, como na FIG. 10, que será descrita mais adiante. Nesse caso, um modo de predição intra pode incluir dois modos de predição intra não direcionais e 65 modos de predição intra angulares. Os modos de predição intra não direcionais podem incluir um modo de predição intra plano nº 0 e um modo de predição intra DC nº 1, e os modos de predição intra direcionais podem incluir modos de predição intra de nº 2 a nº 66. Os modos de predição intra direcionais expandidos podem ser aplicados a blocos de todas as dimensões e podem ser aplicados a ambos os componentes luma e croma. No entanto, a descrição acima é só um exemplo, e modalidades da presente revelação também podem ser aplicadas a um caso em que o número de modos de predição intra difere do exemplo. Um modo de predição intra nº 67 pode ser adicionalmente utilizado dependendo da situação, onde o modo de predição intra nº 67 pode representar um Modelo Linear (LM).
[0125] A FIG. 10 ilustra um exemplo de modos de predição intra aos quais modalidades da presente revelação podem ser aplicadas.
[0126] Com referência à FIG. 10, um modo de predição intra com direcionalidade horizontal e um modo de predição intra com direcionalidade vertical podem ser distinguidos um do outro com base em um modo de predição intra nº 34 com uma direção de predição diagonal esquerda ascendente. H e V na FIG. 10 representam a direcionalidade horizontal e a direcionalidade vertical, respectivamente, e os números de -32 a 32 representam um deslocamento em 1/32 de unidade nas posições de grade da amostra. Os modos de predição intra nº 2 a nº 33 têm direcionalidade horizontal, e os modos de predição intra nº 34 a 66 têm direcionalidade vertical. O modo de predição intra nº 18 e o modo de predição intra nº 50 representam um modo de predição intra horizontal e um modo de predição intra vertical, respectivamente; o modo de predição intra nº 2 pode ser chamado de modo de predição intra diagonal esquerdo descendente, o modo de predição intra nº 34 um modo de predição intra esquerdo ascendente, e o modo de predição intra nº 66 um modo de predição intra direito ascendente.
[0127] Entrementes, a predição intra pode utilizar MRLs que empreguem múltiplas linhas de referência. O método MRL pode realizar a predição intra usando amostras vizinhas situadas ao longo de uma linha de amostras separada do lado superior e/ou inferior do bloco atual por uma distância de uma a três amostras como amostras de referência.
[0128] A FIG. 11 ilustra um exemplo de linhas de amostras de referência para a predição intra usando linhas multirreferência. A unidade de bloco da FIG. 11 pode representar um bloco atual.
[0129] Em uma modalidade, a predição intra pode utilizar amostras de referência adjacentes a um bloco atual (ou amostras de referência mais próximas do bloco atual, a saber, amostras de referência situadas a uma distância de zero amostra do bloco atual) como amostras de referência para predição. Em outra modalidade, a predição intra por Linha Multirreferência (MRL) utiliza amostras de referência situadas a uma distância de K amostras (onde K é um número inteiro superior ou igual a 1) dos limites esquerdo e superior do bloco atual, provendo mais opções para amostras de referência e um desempenho de predição mais preciso do que a predição intra usando amostras de referência mais próximas do bloco atual (a saber, situadas a uma distância de zero amostra). Uma amostra de referência do bloco atual pode ser chamada de amostra vizinha do bloco atual ou uma amostra de linha de referência do bloco atual, e uma amostra de linha de referência pode ser chamada de amostra na linha de referência.
[0130] Com referência à FIG. 11, posições de amostras de referência vizinhas situadas a distâncias de zero, uma, duas e três amostras do bloco atual podem ser chamadas de linhas de referência 0, 1, 2 e 3, respectivamente. Uma linha de referência pode ser indicada por uma linha de amostras de referência, uma fileira de amostras de referência ou uma coluna de amostras de referência, ou simplesmente por linhas, fileiras ou colunas. As linhas de referência 0, 1, 2 e 3 podem ser situadas na ordem mais próxima ao bloco atual. Em um exemplo, a predição intra por linha multirreferência pode ser executada usando as linhas de referência 1 e 2. Em outro exemplo, a predição intra por linha multirreferência pode ser executada usando linhas de referência 1 e 3. No entanto, deve-se ter em mente que a predição intra por linha multirreferência da presente revelação não necessariamente limita-se aos exemplos acima.
[0131] Além disso, a predição intra baseada em MRL pode sinalizar informações de linha de referência para indicar qual linha de referência usar. Por exemplo, informações de linha de referência podem ser sinalizadas na forma do elemento de sintaxe intra_luma_ref_idx. Quando o valor de intra_luman_ref_idx é 0, significa que a predição intra é realizada usando as amostras de referência mais próximas do bloco atual (a saber, amostras situadas a uma distância de zero amostra). Quando o valor de intra_luma_ref_idx é 1, significa que a predição intra é realizada usando as segundas amostras de referência mais próximas do bloco atual (a saber, amostras situadas a uma distância de uma amostra). Quando o valor de intra_luma_ref_idx é 2, significa que a predição intra é realizada usando as terceiras ou quartas amostras de referência mais próximas do bloco atual (a saber, amostras situadas a uma distância duas ou três amostras).
[0132] Doravante, descrever-se-á um método para construir uma lista de MPM quando a predição intra baseada em MRL for executada e um método para executar a predição intra derivando amostras de referência vizinhas em um modo DC.
[0133] A FIG. 12 ilustra uma modalidade de um método para derivar amostras de predição em um modo DC.
[0134] Para fins de conveniência, a FIG. 12 traz uma descrição usando um exemplo em que utilizam-se as amostras de referência mais próximas de um bloco atual (a saber, amostras situadas a uma distância de zero amostra). Em outras palavras, a FIG. 12 ilustra amostras de referência usadas em modo DC quando o valos das informações de índice de linha de referência (por exemplo, intra_luma_ref_idx) é 0. O método revelado na FIG. 12 pode ser aplicado à maneira de um modo DC quando o valor das informações de índice de linha de referência (por exemplo, intra_luma_ref_idx) é diferente de 0.
[0135] Com referência à FIG. 12(a), quando o bloco atual é um bloco quadrado (por exemplo, um bloco 4x4) e a predição intra do bloco atual é um modo DC, podem-se derivar amostras de referência vizinhas usadas para a predição intra do modo DC. Nessa hora, as amostras de referência vizinhas podem incluir amostras de referência esquerdas (E, F, G, H) situadas nas proximidades à esquerda do bloco atual e amostras de referência superiores (A, B, C, D) situadas nas proximidades superiores do bloco atual. Nesse caso, calcula-se a média usando as amostras de referência esquerdas (E, F, G, H) e as amostras de referência superiores (A, B, C, D), e o valor DC (dcVal) pode ser derivado com base na média calculada. As amostras dentro do bloco atual (a área preenchida com barras transversais na FIG. 12(a)) podem ser preenchidas com o valor DC (dcVal). Em outras palavras, as amostras preenchidas com o valor DC (dcVal) podem ser chamadas de amostras de predição.
[0136] Com referência à FIG. 12(b), quando o bloco atual é um bloco não quadrado (por exemplo, um bloco 8x4) e a predição intra do bloco atual é um modo DC, podem-se derivar amostras de referência vizinhas usadas para a predição intra do modo DC, Nessa hora, as amostras de referência vizinhas podem incluir amostras de referência situadas no lado mais longo da largura e da altura do bloco não quadrado. Como a largura (a saber, o comprimento horizontal) de um bloco 8x4 ilustrado na FIG. 12(b) possui um valor maior, amostras de referência superiores situadas nas proximidades do lado da largura (A, B, C, D, E, F, G e H) podem ser derivadas como amostras de referência vizinhas. Nesse caso, calcula-se a média usando as amostras de referência superiores (A, B, C, D, E, F, G e H), e um valor DC (dcVal) pode ser derivado com base na média calculada. As amostras dentro do bloco atual (a área preenchidas com barras transversais na FIG. 12(b)) podem ser preenchidas com o valor DC (dcVal). Em outras palavras, as amostras preenchidas com o valor DC (dcVal) podem ser chamadas de amostras de predição.
[0137] Como descrito acima, à diferença de um bloco quadrado, quando calcula-se a média para um bloco não quadrado usando todas as amostras de referência esquerdas e as amostras de referência superiores, uma vez que o valor divisor não é na forma de 2n, uma operação de divisão precisa ser usada. Para trocar a operação de divisão por uma operação de mudança, conforme descrito acima, o valor DC pode ser calculado usando só as amostras de referência situadas no lado mais longo da largura e da altura do bloco não quadrado.
[0138] Quando o bloco atual é um bloco não quadrado em um modo DC, a modalidade da FIG. 12 compara a largura (a saber, o comprimento horizontal) à altura (a saber, o comprimento vertical), calcula um valor DC usando só as amostras de referência no lado mais longo, e deriva as amostras de referência como amostras de predição do bloco atual. Como o método acima só utiliza as amostras de referência em um dos lados da largura e altura (a saber, o lado com o comprimento mais longo), a precisão da predição pode ser degradada. Logo, doravante, descrever-se-á um método para gerar amostras de predição ao calcular um valor DC usando todas as amostras de referência esquerdas e superiores quando o bloco atual for um bloco não quadrado. Além disso, descrever-se-á um método para selecionar amostras de referência (amostras de referência esquerdas e superiores) para calcular um valor DC usando uma operação de mudança em vez de uma operação de divisão. Em uma modalidade, tantas amostras de referência quanto for o número de amostras de referência vizinhas no lado mais curto da largura e da altura de um bloco não quadrado são selecionadas dentre as amostras de referência vizinhas no lado mais longo, e o valor DC é calculado usando as amostras de referência vizinhas selecionadas. Como descrito acima, como o número total de amostras de referência selecionadas é na forma de 2n quando tantas amostras de referência quanto for o número de amostras de referência no lado mais curto forem selecionadas dentre as amostras de referência vizinhas no lado mais longo, um valor médio pode ser calculado usando uma operação de mudança.
[0139] A FIG. 13 ilustra outra modalidade de um método para derivar amostras de predição em um modo DC. O método revelado na FIG. 13 seleciona quantas amostras de referência quanto for o número de amostras de referência no lado mais curto da largura e da altura de um bloco não quadrado dentre as amostras de referência no lado mais longo mas seleciona amostras de referência em diferentes posições no lado mais longo.
[0140] Além disso, para fins de conveniência, a FIG. 13 traz uma descrição usando um exemplo em que utilizam-se as amostras de referência mais próximas de um bloco atual (a saber, amostras situadas a uma distância de zero amostra). Em outras palavras, a FIG. 13 ilustra amostras de referência usadas em modo DC quando o valos das informações de índice de linha de referência (por exemplo, intra_luma_ref_idx) é 0. O método revelado na FIG. 13 pode ser aplicado à maneira de um modo DC quando o valor das informações de índice de linha de referência (por exemplo, intra_luma_ref_idx) é diferente de 0.
[0141] Com referência às FIGs. 13(a) a 13(d), quando o bloco atual é um bloco não quadrado (por exemplo, um bloco 8x4) e a predição intra do bloco atual é um modo DC, podem-se derivar amostras de referência vizinhas usadas para predição intra do modo DC. Nessa hora, as amostras de referência vizinhas podem incluir amostras de referência esquerdas (I, J, K, L) situadas nas proximidades à esquerda do bloco atual e quantas amostras de referência quanto for o número das amostras de referência esquerdas dentre as amostras de referência superiores (A, B, C, D, E, F, G e H) situadas nas proximidades superiores do bloco atual.
[0142] Por exemplo, conforme ilustra a FIG. 13(a), quantas amostras de referência quanto for o número de amostras de referência esquerdas podem ser selecionadas amostrando-se as amostras de referência superiores (A, B, C, D, E, F, G e H) em cada posição de número ímpar. Em outras palavras, amostras de referência em posições de número ímpar podem referir-se às amostras de referência (A, C, E e G) obtidas ao selecionar quantas amostras quanto for o número das amostras de referência esquerdas dentre as amostras de referência superior amostrando-se amostra referência sim amostra de referência não a partir da amostra de referência na primeira posição. Nesse caso, amostras de referência vizinhas podem incluir um total de 8 amostras de referência (quatro amostras de referência esquerdas e quatro amostras de referência superiores). Um valor DC pode ser derivado calculando-se a média do total de 8 amostras de referência.
[0143] Em outro exemplo, conforme ilustra a FIG. 13(b), quantas amostras de referência quanto for o número de amostras de referência esquerdas podem ser selecionadas amostrando-se as amostras de referência superiores (A, B, C, D, E, F, G e H) em cada posição de número par. Em outras palavras, amostras de referência em posições de número par podem referir-se às amostras de referência (B, D, F e H) obtidas ao selecionar quantas amostras quanto for o número das amostras de referência esquerdas dentre as amostras de referência superiores amostrando-se amostra de referência sim amostra de referência não a partir da amostra de referência na segunda posição. Nesse caso, amostras de referência vizinhas podem incluir um total de 8 amostras de referência (quatro amostras de referência esquerdas e quatro amostras de referência superiores). Um valor DC pode ser derivado calculando-se a média do total de 8 amostras de referência.
[0144] Em ainda outro exemplo, conforme ilustra a FIG. 13(c), quantas amostras de referência quanto for o número de amostras de referência esquerdas podem ser selecionadas amostrando-se as amostras de referência superiores (A, B, C, D, E, F, G e H) em posições consecutivas (A, B, C e D) a começar pela primeira posição das amostras de referência superiores. Nesse caso, amostras de referência vizinhas podem incluir um total de 8 amostras de referência (quatro amostras de referência esquerdas e quatro amostras de referência superiores). Um valor DC pode ser derivado calculando-se a média do total de 8 amostras de referência.
[0145] Em ainda outro exemplo, conforme ilustra a FIG. 13(d), quantas amostras de referência quanto for o número de amostras de referência esquerdas podem ser selecionadas amostrando-se as amostras de referência superiores (A, B, C, D, E, F, G e H) em posições consecutivas (E, F, G, H) a começar pela última posição das amostras de referência superiores. Nesse caso, amostras de referência vizinhas podem incluir um total de 8 amostras de referência (quatro amostras de referência esquerdas e quatro amostras de referência superiores). Um valor DC pode ser derivado calculando-se a média do total de 8 amostras de referência.
[0146] Embora a modalidade da FIG. 13 dê uma descrição usando um bloco 8x4, a descrição acima é só um exemplo, e os métodos acima podem ser aplicados a blocos não quadrados de várias dimensões para derivar amostras de referência vizinhas e calcular um valor DC usando as amostras de referência vizinhas derivadas. Em um exemplo, quando o bloco atual é um bloco não quadrado 16x4, quatro amostras de referência podem ser selecionadas dentre quatro amostras de referência esquerdas e 16 amostras de referência superiores. Nessa hora, quando (a) o método da FIG. 13 é aplicado, um total de quatro amostras de referência superiores pode ser selecionado amostrando-se cada quatro amostras a começar da amostra de referência na primeira posição das 16 amostras de referência superiores. Logo, um valor DC pode ser derivado calculando-se uma média de quatro amostras de referência esquerdas e quatro amostras de referência superiores amostradas. A operação acima pode ser aplicada da mesma maneira que os métodos ilustrados nas FIGS. 13(b), (c) e (d) para derivar amostras de referência esquerdas e superiores e para calcular um valor DC com base nas amostras de referência derivadas.
[0147] Entrementes, o método de predição intra usando linhas multirreferência só pode ser aplicado a modos de predição intra direcionais, salvo o modo plano e o modo DC. Logo, existe a desvantagem de que linhas multirreferência podem não ser aplicadas à predição intra do modo plano e do modo DC, que são modos não direcionais. O presente documento propõe um método para executar a predição intra em modo DC usando linhas multirreferência aplicando vários métodos que derivam amostras de referência vizinhas no modo DC conforme descrito acima.
[0148] Em uma modalidade, para reduzir a complexidade da predição intra baseada em linhas multirreferência, as linhas multirreferências não são aplicadas a todos os modos de predição intra mas aplicadas somente a modos de predição intra candidatos incluídos em uma lista de MPM. Logo, quando a predição intra baseada em MRL é aplicada, um modo DC pode ser adicionado à lista de MPM para executar o modo DC. Em outras palavras, uma lista de MPM existente para predição intra usando linhas multirreferência gera um total de seis modos de predição intra candidatos que não incluem um modo plano e modo DC. No entanto, de acordo com a presente revelação, uma lista de MPM pode ser construída adicionando-se o modo DC aos modos de predição intra candidatos. Em um exemplo, o modo DC pode ser adicionado sem mudar o número de modos de predição intra candidatos na lista de MPM existente. Nesse caso, um modo esquerdo, que é um modo de predição intra candidato para um bloco vizinho esquerdo do bloco atual, e um modo superior, que é um modo de predição intra candidato para um bloco vizinho superior do bloco atual, podem ser derivados, e uma lista de MPM pode ser construída derivando modos de predição intra candidatos com base nos modos esquerdo e superior. Nessa hora, um dos modos de predição intra candidatos pode ser derivado como um modo DC.
[0149] De acordo com uma modalidade, ao derivar um dos modos de predição intra candidatos como modo DC, um dos modos de predição intra candidatos na lista de MPM pode ser removido, e um modo DC pode ser adicionado. Nesse caso, um método para remover um modo de predição intra candidato na lista de MPM pode remover um modo de predição intra candidato localizado na última posição da lista de MPM, que possui a menor probabilidade de ocorrência. No entanto, a descrição acima é só um exemplo, e um modo de predição intra candidato localizado em uma posição específica pode ser removido, ou um modo de predição intra candidato situado na primeira posição da lista de MPM pode ser removido considerando-se a frequência de ocorrência do modo DC. Além disso, um método para adicionar um modo DC à lista de MPM pode adicionar um modo DC a uma posição na lista de MPM, da qual o modo de predição intra candidato é removido. Por exemplo, um modo DC pode ser adicionado à última posição da lista de MPM ou adicionar um modo DC à primeira posição da lista de MPM. Além disso, a posição dentro da lista de MPM à qual o modo DC é adicionado pode ser determinada de maneira arbitrária. Em outras palavras, um modo de predição intra candidato em uma ordem específica dentre os modos de predição intra candidatos na lista de MPM pode ser removido, e o modo DC pode ser posicionado em qualquer ordem da lista de MPM.
[0150] Como descrito acima, a predição pode ser realizada ainda usando um modo DC na predição intra baseada em MRL adicionando-se um modo DC à lista de MPM. Nessa hora, a predição do modo DC incluído na lista de MPM pode usar vários métodos para prever um valor DC descrito com referência às FIGs. 12 e 13.
[0151] A FIG. 14 é um fluxograma que ilustra um método de codificação que pode ser executado por um aparelho codificador de acordo com uma modalidade da presente revelação.
[0152] O método revelado na FIG. 14 pode ser executado pelo aparelho codificador 200 revelado na FIG. 2. Mais especificamente, as etapas S1400 a S1420 podem ser executadas pelo preditor 220 (mais especificamente, o preditor intra 222) revelado na FIG. 2, e as etapas S1420 a S1430 da FIG. 14 podem ser executadas pelo codificador por entropia 240 revelado na FIG. 2. Além disso, o método revelado na FIG. 14 pode incluir as modalidades descritas acima no presente documento. Logo, descrições detalhadas da FIG. 14 que coincidam com as modalidades acima serão omitidas ou simplificadas.
[0153] Com referência à FIG. 14, um aparelho codificador pode configurar uma lista de Modos Mais Prováveis (MPM) que inclua modos de predição intra candidatos para um bloco atual S1400.
[0154] Em uma modalidade, o aparelho codificador pode derivar um modo esquerdo, que é um modo de predição intra candidato para um bloco vizinho esquerdo do bloco atual, e pode derivar um modo superior, que é um modo de predição intra candidato para um bloco vizinho superior do bloco atual. Aqui, o bloco vizinho esquerdo pode indicar o bloco vizinho mais inferior dentre os blocos vizinhos esquerdos situados em adjacência ao lado esquerdo do bloco atual, e o bloco vizinho superior pode indicar o bloco vizinho mais direito situado adjacente ao lado superior do bloco atual. Por exemplo, se o tamanho do bloco atual for WxH, o componente x da posição de amostra superior esquerda do bloco atual for eo componente y da mesma for , o bloco vizinho esquerdo pode ser um bloco que inclui uma amostra de coordenadas ( , ), e o bloco vizinho superior pode ser um bloco que inclui uma amostra de coordenadas ( , ).
[0155] Por exemplo, quando o bloco vizinho esquerdo se faz disponível, e a predição intra é aplicada ao bloco vizinho esquerdo, o aparelho codificador pode derivar o modo de predição intra do bloco vizinho esquerdo como um modo de predição intra candidato esquerdo (a saber, o modo esquerdo). Quando o bloco vizinho superior se faz disponível, a predição intra é aplicada ao bloco vizinho superior e o bloco vizinho superior é incluído em uma CTU atual, o aparelho codificador pode derivar o modo de predição intra do bloco vizinho superior como um modo de predição intra candidato superior (a saber, o modo superior). Como alternativa, quando o bloco vizinho esquerdo não se faz disponível, ou a predição intra não é aplicada ao bloco vizinho esquerdo, o aparelho codificador pode derivar um modo plano como o modo esquerdo. O aparelho codificador pode derivar o modo plano como o modo superior quando o bloco vizinho superior não estiver disponível, a predição intra não for aplicada ao bloco vizinho superior ou o bloco vizinho superior não for incluído na CTU atual.
[0156] O aparelho codificador pode construir uma lista de MPM derivando modos de predição intra candidatos para o bloco atual com base no modo esquerdo derivado do bloco vizinho esquerdo e no modo superior derivado do bloco vizinho superior. Nessa hora, a lista de MPM pode incluir o modo esquerdo e o modo superior e pode incluir ainda modos de predição intra específicos de acordo com um método predeterminado.
[0157] Em uma modalidade, o aparelho codificador pode determinar se executa a predição intra aplicando linhas multirreferência ao bloco atual e pode derivar um modo de predição intra específico de acordo com a determinação e incluir o modo de predição intra derivado na lista de MPM. Quando a predição intra é executada aplicando linhas multirreferência ao bloco atual, o aparelho codificador pode gerar e sinalizar informações de índice de linha de referência. As informações de índice de linha de referência podem incluir um valor de índice que indica uma linha de referência usada para a predição intra do bloco atual e podem ser sinalizadas na forma do elemento de sintaxe intra_luma_ref_idx descrito acima. Quando o valor de intra_luma_ref_idx é 0, significa que a predição intra é executada usando as amostras de referência mais próximas do bloco atual (a saber, amostras de referência a uma distância de zero amostra). Quando o valor de intra_luma_ref_idx é 1, significa que a predição intra é executada usando as segundas amostras de referência mais próximas do bloco atual (a saber, amostras de referência a uma distância de uma amostra). Quando o valor de intra_luma_ref_idx é 2, significa que a predição intra é executada usando as terceiras ou quartas amostras de referência mais próximas do bloco atual (a saber, amostras situadas a uma distância de duas ou três amostras).
[0158] Por exemplo, quando o valor das informações de índice de linha de referência é diferente de 0, o aparelho codificador pode derivar o modo DC como um dos modos de predição intra candidatos e pode incluir o modo DC derivado na lista de MPM. Nesse caso, o modo DC pode situar-se em qualquer ordem da lista de
MPM. Como alternativa, o modo DC pode ser incluído na primeira posição ou na última posição da lista de MPM considerando-se a frequência de ocorrências.
[0159] O aparelho codificador pode derivar o modo de intrapredição do bloco atual com base em modos de intrapredição candidatos incluídos na lista de MPM S1410.
[0160] Em uma modalidade, o aparelho codificador pode executar vários modos de predição intra sobre o bloco atual para derivar um modo de predição intra com um custo de Taxa-Distorção (RD) ideal e determinar o modo de predição intra derivado como o modo de predição intra do bloco atual. Nesse caso, o aparelho codificador pode derivar um modo de predição intra ideal para o bloco atual com base em modos de predição intra que incluem dois modos de predição intra não direcionais e 65 modos de predição intra direcionais. Como alternativa, o aparelho codificador pode determinar o modo de predição intra ideal usando só os candidatos MPM que compõem a lista de MPM. Aqui, os candidatos a MPM podem incluir modos de predição intra candidatos e/ou um modo plano de acordo com o número de candidatos na lista de MPM. Por exemplo, quando o número de candidatos na lista de MPM for 6, os candidatos a MPM podem incluir um modo plano e modos de predição intra candidatos e, quando o número de candidatos na lista de MPM for 5, os candidatos a MPM podem incluir modos de predição intra candidatos.
[0161] Por exemplo, quando o valor das informações de índice de linha de referência for diferente de 0, o aparelho codificador pode derivar o modo de predição intra ideal para o bloco atual usando modos de predição intra candidatos a MPM incluídos na lista de MPM. Em outras palavras, nesse caso, o modo de predição intra para o bloco atual pode ser determinado somente dentre os modos de predição intra candidatos (e modo plano) que incluírem o modo DC na lista de MPM. Além disso, quando o valor das informações de índice de linha de referência for diferente de 0, o aparelho codificador pode não codificar/sinalizar as informações de flag de
MPM. Dessa forma, quando as informações de flag de MPM não forem codificadas/sinalizadas, o valor das informações de flag de MPM pode ser derivado como 1. Como descrito acima, as informações de flag de MPM podem ser expressas na forma de um elemento de sintaxe intra_luma_mpm_flag. Por exemplo, quando o valor de intra_luma_mpm_flag é 1, significa que o modo de predição intra do bloco atual é selecionado dentre modos de predição intra candidatos a MPM (modos de predição intra candidatos e/ou modo plano) e, quando o valor de intra_luma_mpm_flag é 0, significa que o modo de predição intra do bloco atual não é selecionado dentre os modos de predição intra candidatos a MPM (modos de predição intra candidatos e/ou modo plano).
[0162] O aparelho codificador pode gerar informações de índice de MPM que indiquem o modo de predição intra do bloco atual dentre os modos de predição intra candidatos incluídos na lista de MPM S1420.
[0163] Em uma modalidade, quando o valor das informações de índice de linha de referência é diferente de 0 e o valor das informações de flag de MPM é derivado de 1, o aparelho codificador gera um valor de índice que indica um dos modos de predição intra candidatos na lista de MPM e codifica o valor de índice gerado em informações de índice de MPM. Em outras palavras, quando o valor das informações de índice de linha de referência é diferente de 0 e o valor das informações de flag de MPM é derivado como 1, as informações de índice de MPM podem ser codificadas/sinalizadas.
[0164] Por exemplo, quando o modo de predição intra do bloco atual é derivado como um modo DC incluído na lista de MPM, as informações de índice de MPM podem ser geradas como um valor de índice que indica o modo DC dentre os modos de predição intra candidatos incluídos na lista de MPM. Nessa hora, quando o modo DC é incluído na primeira posição da lista de MPM, as informações de índice de MPM podem ser codificadas para ter um valor de índice 0. Ou, quando o modo
DC é incluído na última posição da lista de MPM, as informações de índice de MPM podem ser codificadas para ter um valor de índice n de acordo com o número de candidatos na lista de MPM (por exemplo, n é 5 quando o número de candidatos é 6, ou n é 4 quando o número de candidatos é 5).
[0165] Além disso, o aparelho codificador pode gerar amostras de predição para o bloco atual ao executar a predição intra com base em um modo de predição intra determinado para o bloco atual. Por exemplo, quando o modo de predição intra do bloco atual é derivado como um modo DC incluído na lista de MPM, o aparelho codificador pode derivar amostras de referência vizinhas usadas para o modo DC do bloco atual com base em se o bloco atual é um bloco quadrado ou um bloco não quadrado, calcular um valor DC para o bloco atual com base nas amostras de referência vizinhas e gerar amostras de predição com base no valor DC. Nessa hora, o processo de derivar amostras de referência vizinhas pode ser aplicado às várias modalidades descritas acima, que foram descritas em detalhes com referência às FIGs. 12 e 13.
[0166] Em uma modalidade, quando o bloco atual é um bloco quadrado, o aparelho codificador pode derivar amostras de referência vizinhas que incluem amostras de referência esquerdas do bloco atual e amostras de referência superiores do bloco atual. Nessa hora, o aparelho codificador pode derivar amostras de referência vizinhas com base nas informações de índice de linha de referência. Por exemplo, nesse caso, as amostras de referência vizinhas podem incluir uma linha de referência esquerda indicada pelas informações de índice de linha de referência (a saber, amostras de referência esquerdas situadas a distâncias de 0, 1, 2 ou 3 amostras) e uma linha de referência superior (a saber, amostras de referência superiores situadas a distâncias de 0, 1, 2 ou 3 amostras).
[0167] Como alternativa, quando o bloco atual é um bloco não quadrado e a largura do bloco atual é superior à altura, o aparelho codificador pode derivar amostras de referência vizinhas que incluem amostras de referência superiores do bloco atual. Em um exemplo, as amostras de referência superiores podem incluir amostras de referência cujo número é igual à largura do bloco atual. Em outro exemplo, as amostras de referência superiores podem incluir o mesmo número de amostras de referência que as amostras de referência esquerdas. Em ainda outro exemplo, as amostras de referência superiores incluem o mesmo número de amostras de referência que as amostras de referência esquerdas amostrando-se amostras de número ímpar ou amostras de número par dentre amostras de referência superiores do bloco atual. Além disso, nesse caso, o aparelho codificador pode derivar amostras de referência vizinhas com base em informações de índice de linha de referência. Por exemplo, nesse caso, as amostras de referência vizinhas podem incluir uma linha de referência superior indicada pelas informações de índice de linha de referência (a saber, amostras de referência superiores situadas a distâncias de 0, 1, 2 ou 3 amostras).
[0168] Como alternativa, quando o bloco atual é um bloco não quadrado e a largura do bloco atual é inferior à altura, o aparelho codificador pode derivar amostras de referência vizinhas que incluem amostras de referência esquerdas do bloco atual. Em um exemplo, as amostras de referência esquerdas podem incluir amostras de referência cujo número é igual à altura do bloco atual. Em outro exemplo, as amostras de referência esquerdas podem incluir o mesmo número de amostras de referência que as amostras de referência superiores. Em ainda outro exemplo, as amostras de referência esquerdas podem incluir o mesmo número de amostras de referência que as amostras de referência superiores amostrando-se amostras de número ímpar ou amostras de número par dentre amostras de referência esquerdas do bloco atual. Além disso, nesse caso, o aparelho codificador pode derivar amostras de referência vizinhas com base em informações de índice de linha de referência. Por exemplo, nesse caso, as amostras de referência vizinhas podem incluir uma linha de referência esquerda indicada pelas informações de índice de linha de referência (a saber, amostras de referência esquerdas situadas a distâncias de 0, 1, 2 ou 3 amostras).
[0169] Além disso, o aparelho codificador pode derivar amostras residuais para o bloco atual com base nas amostras de predição do bloco atual e nas amostras originais do bloco atual. Além disso, o aparelho codificador pode gerar informações residuais sobre o bloco atual com base nas amostras residuais e codificar informações de imagem que incluam as informações residuais. Aqui, as informações residuais podem incluir informações sobre os coeficientes de transformada quantizados derivados praticando-se transformação e quantização sobre as amostras residuais, informações de localização, técnicas de transformada, kernels de transformada e parâmetros de quantização.
[0170] O aparelho codificador pode codificar informações de imagem que incluem ao menos um de informações de índice de linha de referência ou informações de índice de MPM S1430.
[0171] Em uma modalidade, o aparelho codificador pode codificar informações de imagem que incluem informações de índice de referência determinadas com base em se aplicar a predição intra baseada em MRL e informações de modo de predição intra (por exemplo, informações de índice de MPM) do bloco atual derivadas com base na lista de MPM e emitir as informações de imagem codificadas na forma de um fluxo de bits. Além disso, o aparelho codificador pode adicionalmente derivar e codificar informações residuais e pode emitir as informações residuais codificadas na forma de um fluxo de bits.
[0172] O fluxo de bits pode ser transmitido ao aparelho decodificador através de uma rede ou meio de armazenamento (digital). Aqui, a rede pode incluir uma rede de difusão e/ou uma rede de comunicação, e o meio de armazenamento digital pode incluir vários meios de armazenamento, tais como USB, SD, CD, DVD, Bluray, HDD e SSD.
[0173] O processo de gerar amostras de predição para o bloco atual pode ser executado pelo preditor intra 222 do aparelho codificador 200 revelado na FIG. 2, o processo de derivar amostras residuais pode ser executado pelo subtrator 231 do aparelho codificador 200 revelado na FIG. 2, e o processo de gerar e codificar informações residuais pode ser executado pelo processador residual 230 e pelo codificador por entropia 240 do aparelho codificador 200 revelado na FIG. 2.
[0174] A FIG. 15 é um fluxograma que ilustra um método de decodificação que pode ser executado por um aparelho decodificador de acordo com uma modalidade da presente revelação.
[0175] O método revelado na FIG. 15 pode ser executado pelo aparelho decodificador 300 revelado na FIG. 3. Mais especificamente, as etapas S1500 a S1520 podem ser executadas pelo preditor 330 (mais especificamente, pelo preditor intra 331) revelado na FIG. 3, e as etapas S1530 da FIG. 15 podem ser executadas pelo processador residual 320 e/ou pelo somador 340 revelados na FIG. 3. Além disso, o método revelado na FIG. 15 pode incluir as modalidades descritas acima no presente documento. Logo, descrições detalhadas da FIG. 15 que coincidam com as modalidades acima serão omitidas ou simplificadas.
[0176] Com referência à FIG. 15, o aparelho decodificador pode configurar uma lista de Modos Mais Prováveis (MPM) que inclua modos de predição intra candidatos para um bloco atual S1500.
[0177] Em uma modalidade, o aparelho decodificador pode derivar um modo esquerdo, que é um modo de predição intra candidato para um bloco vizinho esquerdo do bloco atual, e pode derivar um modo superior, que é um modo de predição intra candidato para um bloco vizinho superior do bloco atual. Aqui, o bloco vizinho esquerdo pode indicar o bloco vizinho mais inferior dentre os blocos vizinhos esquerdos situados em adjacência ao lado esquerdo do bloco atual, e o bloco vizinho superior pode indicar o bloco vizinho mais direito situado adjacente ao lado superior do bloco atual. Por exemplo, se o tamanho do bloco atual for WxH, o componente x da posição de amostra superior esquerda do bloco atual for eo componente y da mesma for , o bloco vizinho esquerdo pode ser um bloco que inclui uma amostra de coordenadas ( , ), e o bloco vizinho superior pode ser um bloco que inclui uma amostra de coordenadas ( , ).
[0178] Por exemplo, quando o bloco vizinho esquerdo se faz disponível, e a predição intra é aplicada ao bloco vizinho esquerdo, o aparelho decodificador pode derivar o modo de predição intra do bloco vizinho esquerdo como um modo de predição intra candidato esquerdo (a saber, o modo esquerdo). Quando o bloco vizinho superior se faz disponível, a predição intra é aplicada ao bloco vizinho superior e o bloco vizinho superior é incluído em uma CTU atual, o aparelho decodificador pode derivar o modo de predição intra do bloco vizinho superior como um modo de predição intra candidato superior (a saber, o modo superior). Como alternativa, quando o bloco vizinho esquerdo não se faz disponível, ou a predição intra não é aplicada ao bloco vizinho esquerdo, o aparelho decodificador pode derivar um modo plano como o modo esquerdo. O aparelho decodificador pode derivar o modo plano como o modo superior quando o bloco vizinho superior não estiver disponível, a predição intra não for aplicada ao bloco vizinho superior ou o bloco vizinho superior não for incluído na CTU atual.
[0179] O aparelho decodificador pode construir uma lista de MPM derivando modos de predição intra candidatos para o bloco atual com base no modo esquerdo derivado do bloco vizinho esquerdo e no modo superior derivado do bloco vizinho superior. Nessa hora, a lista de MPM pode incluir o modo esquerdo e o modo superior e pode incluir ainda modos de predição intra específicos de acordo com um método predeterminado.
[0180] Em uma modalidade, o aparelho decodificador pode determinar se executa a predição intra aplicando linhas multirreferência ao bloco atual e pode derivar um modo de predição intra específico de acordo com a determinação e incluir o modo de predição intra derivado na lista de MPM. Em outras palavras, o aparelho decodificador pode determinar se executar a predição intra obtendo informações de índice de linha de referência e aplicando linhas multirreferência para o bloco atual. As informações de índice de linha de referência podem incluir um valor de índice que indica uma linha de referência usada para a predição intra do bloco atual e podem ser sinalizadas na forma do elemento de sintaxe intra_luma_ref_idx descrito acima. Quando o valor de intra_luma_ref_idx é 0, significa que a predição intra é executada usando as amostras de referência mais próximas do bloco atual (a saber, amostras de referência a uma distância de zero amostra). Quando o valor de intra_luma_ref_idx é 1, significa que a predição intra é executada usando as segundas amostras de referência mais próximas do bloco atual (a saber, amostras de referência a uma distância de uma amostra). Quando o valor de intra_luma_ref_idx é 2, significa que a predição intra é executada usando as terceiras ou quartas amostras de referência mais próximas do bloco atual (a saber, amostras situadas a uma distância de duas ou três amostras).
[0181] Por exemplo, quando o valor das informações de índice de linha de referência é diferente de 0, o aparelho decodificador pode derivar o modo DC como um dos modos de predição intra candidatos e pode incluir o modo DC derivado na lista de MPM. Nesse caso, o modo DC pode situar-se em qualquer ordem da lista de MPM. Como alternativa, o modo DC pode ser incluído na primeira posição ou na última posição da lista de MPM considerando-se a frequência de ocorrências.
[0182] O aparelho decodificador pode derivar o modo de predição intra do bloco atual a partir da lista de MPM com base nas informações de índice de MPM S1510.
[0183] Em uma modalidade, o aparelho decodificador pode obter informações de modo de predição intra para o bloco atual a partir de um fluxo de bits. As informações de modo de predição intra indicam um modo de predição intra do bloco atual, que inclui informações de flag de MPM, informações de índice de MPM e informações de modo remanescentes.
[0184] Nessa hora, quando o valor das informações de índice de linha de referência é diferente de 0, o aparelho codificador pode não sinalizar as informações de flag de MPM. Dessa forma, quando as informações de flag de MPM não são sinalizadas, o aparelho decodificador pode derivar o valor das informações de flag de MPM como 1. Como descrito acima, as informações de flag de MPM podem ser sinalizadas na forma de um elemento de sintaxe intra_luma_mpm_flag. Por exemplo, quando o valor de intra_luma_mpm_flag é 1, significa que o modo de predição intra do bloco atual é selecionado dentre modos de predição intra candidatos a MPM (modos de predição intra candidatos e/ou modo plano) e, quando o valor de intra_luma_mpm_flag é 0, significa que o modo de predição intra do bloco atual não é selecionado dentre os modos de predição intra candidatos a MPM (modos de predição intra candidatos e/ou modo plano). Aqui, o modo de predição intra candidato a MPM pode incluir modos de predição intra candidatos e/ou um modo plano dependendo do número de candidatos da lista de MPM. Por exemplo, quando o número de candidatos da lista de MPM for 6, os candidatos a MPM podem incluir um modo plano e modos de predição intra candidatos, ao passo que, quando o número de candidatos na lista de MPM for 5, os candidatos a MPM podem incluir modos de predição intra candidatos.
[0185] Além disso, quando o valor das informações de índice de linha de referência for diferente de 0 e o valor das informações de flag de MPM for derivado como 1, as informações de índice de MPM podem ser sinalizadas a partir do aparelho codificador. Em outras palavras, o aparelho decodificador pode obter as informações de índice de MPM a partir de um fluxo de bits e decodificar o fluxo de bits obtido. Conforme descrito acima, as informações de índice de MPM incluem um valor de índice que indica um modo de predição intra para o bloco atual dentre modos de predição intra candidatos incluídos na lista de MPM, que pode ser expresso, por exemplo, na forma de um elemento de sintaxe intra_luma_mpm_idx.
[0186] Em outras palavras, quando o valor das informações de índice de linha de referência é diferente de 0 e o valor das informações de flag de MPM é derivado como 1, o aparelho decodificador pode obter e decodificar as informações de índice de MPM e derivar um modo de predição intra do bloco atual a partir da lista de MPM com base nas informações de índice de MPM decodificadas.
[0187] Por exemplo, quando as informações de índice de MPM indicam um modo DC dentre modos de predição intra candidatos incluídos na lista de MPM, o aparelho decodificador pode derivar o modo de predição intra do bloco atual como o modo DC. Nessa hora, quando o modo DC for incluído na primeira posição da lista de MPM, as informações de índice de MPM podem ser sinalizadas sendo codificadas para que tenham um valor de índice 0. Ou, quando o modo DC for incluído na última posição da lista de MPM, as informações de índice de MPM podem ser sinalizadas sendo codificadas para que tenham um valor de índice n de acordo com o número de candidatos na lista de MPM (por exemplo, n é 5 quando o número de candidatos é 6, ou n é 4 quando o número de candidatos é 5).
[0188] O aparelho decodificador pode gerar amostras de predição para o bloco atual com base no modo de predição intra S1520.;
[0189] Por exemplo, quando o modo de predição intra do bloco atual é derivado como um modo DC incluído na lista de MPM, o aparelho decodificador pode derivar amostras de referência vizinhas usadas para o modo DC do bloco atual com base em se o bloco atual é um bloco quadrado ou um bloco não quadrado, calcular um valor DC para o bloco atual com base nas amostras de referência vizinhas e gerar amostras de predição com base no valor DC. Nessa hora, o processo de derivar amostras de referência vizinhas pode ser aplicado às várias modalidades descritas acima, que foram descritas em detalhes com referência às FIGs. 12 e 13.
[0190] Em uma modalidade, quando o bloco atual é um bloco quadrado, o aparelho decodificador pode derivar amostras de referência vizinhas que incluem amostras de referência esquerdas do bloco atual e amostras de referência superiores do bloco atual. Nessa hora, o aparelho decodificador pode derivar amostras de referência vizinhas com base nas informações de índice de linha de referência. Por exemplo, nesse caso, as amostras de referência vizinhas podem incluir uma linha de referência esquerda indicada pelas informações de índice de linha de referência (a saber, amostras de referência esquerdas situadas a distâncias de 0, 1, 2 ou 3 amostras) e uma linha de referência superior (a saber, amostras de referência superiores situadas a distâncias de 0, 1, 2 ou 3 amostras).
[0191] Como alternativa, quando o bloco atual é um bloco não quadrado e a largura do bloco atual é superior à altura, o aparelho decodificador pode derivar amostras de referência vizinhas que incluem amostras de referência superiores do bloco atual. Em um exemplo, as amostras de referência superiores podem incluir amostras de referência cujo número é igual à largura do bloco atual. Em outro exemplo, as amostras de referência superiores podem incluir o mesmo número de amostras de referência que as amostras de referência esquerdas. Em ainda outro exemplo, as amostras de referência superiores incluem o mesmo número de amostras de referência que as amostras de referência esquerdas amostrando-se amostras de número ímpar ou amostras de número par dentre amostras de referência superiores do bloco atual. Além disso, nesse caso, o aparelho decodificador pode derivar amostras de referência vizinhas com base em informações de índice de linha de referência. Por exemplo, nesse caso, as amostras de referência vizinhas podem incluir uma linha de referência superior indicada pelas informações de índice de linha de referência (a saber, amostras de referência superiores situadas a distâncias de 0, 1, 2 ou 3 amostras).
[0192] Como alternativa, quando o bloco atual é um bloco não quadrado e a largura do bloco atual é inferior à altura, o aparelho decodificador pode derivar amostras de referência vizinhas que incluem amostras de referência esquerdas do bloco atual. Em um exemplo, as amostras de referência esquerdas podem incluir amostras de referência cujo número é igual à altura do bloco atual. Em outro exemplo, as amostras de referência esquerdas podem incluir o mesmo número de amostras de referência que as amostras de referência superiores. Em ainda outro exemplo, as amostras de referência esquerdas podem incluir o mesmo número de amostras de referência que as amostras de referência superiores amostrando-se amostras de número ímpar ou amostras de número par dentre amostras de referência esquerdas do bloco atual. Além disso, nesse caso, o aparelho decodificador pode derivar amostras de referência vizinhas com base em informações de índice de linha de referência. Por exemplo, nesse caso, as amostras de referência vizinhas podem incluir uma linha de referência esquerda indicada pelas informações de índice de linha de referência (a saber, amostras de referência esquerdas situadas a distâncias de 0, 1, 2 ou 3 amostras).
[0193] O aparelho decodificador pode gerar uma cena reconstruída para o bloco atual com base nas amostras de predição S1530.
[0194] Em uma modalidade, o aparelho decodificador pode usar as amostras de predição diretamente como amostras reconstruídas ou gerar amostras reconstruídas adicionando amostras residuais às amostras de predição de acordo com um modo de predição.
[0195] Quando há amostras residuais para o bloco atual, o aparelho decodificador pode receber informações sobre os residuais para o bloco atual. As informações sobre os residuais podem incluir coeficientes de transformada para as amostras residuais. O aparelho decodificador pode derivar amostras residuais (ou um arranjo de amostras residuais) para o bloco atual com base nas informações residuais. O aparelho decodificador pode gerar amostras reconstruídas com base em amostras de predição e amostras residuais e derivar um bloco reconstruído ou uma cena reconstruída com base nas amostras reconstruídas. Depois disso, o aparelho decodificador pode aplicar o procedimento de filtragem in-loop, tal como filtragem por desblocagem e/ou um procedimento SAO, à cena reconstruída dependendo das necessidades para aprimorar a qualidade de imagem subjetiva/objetiva como descrito acima.
[0196] No sistema exemplificativo descrito acima, descrevem-se métodos de acordo com um fluxograma usando uma série de etapas e blocos. No entanto, a presente revelação não se limita a uma ordem específica das etapas, e algumas etapas podem ser realizadas com diferentes etapas e em uma ordem diferente das descritas acima ou simultaneamente. Além disso, os versados na técnica perceberão que as etapas ilustradas no fluxograma não são exclusivas, que outras etapas podem ser adicionalmente incluídas ou que uma ou mais etapas do fluxograma podem ser excluídas sem influir no âmbito técnico da presente revelação.
[0197] O método de acordo com a presente revelação pode ser implementado na forma de um software, e o aparelho codificador e/ou o aparelho decodificador de acordo com a presente revelação podem ser incluídos em um aparelho para executar o processamento de imagens, tal como uma TV, computador, smartphone, conversor de sinais e dispositivo de tela.
[0198] Quando as modalidades da presente revelação são implementadas por software, o método supramencionado pode ser implementado por um módulo (processo ou função) que executa a função supramencionada. O módulo pode ser armazenado em uma memória e executado por um processador. A memória pode ser instalada dentro ou fora do processador e pode ser conectada ao mesmo por vários meios bem conhecidos. O processador pode incluir um Circuito Integrado de Aplicação Específica (ASIC), outros chipsets, um circuito de lógica e/ou um dispositivo de processamento de dados. A memória pode incluir uma Memória Somente para Leitura (ROM), uma Memória de Acesso Aleatório (RAM), uma memória flash, um cartão de memória, um meio de armazenamento e/ou outro dispositivo de armazenamento. Em outras palavras, as modalidades de acordo com a presente revelação podem ser implementadas e executadas em um processador, um microprocessador, um controlador ou um chip. Por exemplo, as unidades funcionais ilustradas nas respectivas figuras podem ser implementadas e executadas em um computador, processador, microprocessador, controlador ou chip. Nesse caso, informações sobre a implementação (por exemplo, informações sobre as instruções) ou algoritmos podem ser armazenados em um meio de armazenamento digital.
[0199] Além disso, o aparelho decodificador e o aparelho codificador aos quais a presente invenção se aplica podem ser incluídos em um transceptor de difusão multimídia, um terminal de comunicação móvel, um dispositivo de cinema em casa, um dispositivo de cinema digital, uma câmera de vigilância, um dispositivo de bate-papo com vídeo e um dispositivo de comunicação em tempo real, tal como comunicação por vídeo, um dispositivo de transmissão móvel, um meio de armazenamento, uma filmadora, um provedor de serviços de vídeo sob demanda (VoD), um dispositivo de vídeo over the top (OTT), um provedor de serviços de transmissão via Internet, um dispositivo de vídeos 3D, um dispositivo de realidade virtual (VR), um dispositivo de realidade aumentada (AR), um dispositivo de vídeo de telefonia com vídeo, um terminal de meio de transporte (por exemplo, um terminal de veículo (inclusive de veículo autônomo), um terminal de aeronave ou um terminal de embarcação) e um dispositivo de telemedicina; e podem ser usados para processar um sinal ou dados de imagem. Por exemplo, o dispositivo de vídeo OTT pode incluir um console de jogos eletrônicos, um aparelho Blu-ray, uma TV conectada à Internet, um sistema de home theater, um smartphone, um tablet e um Gravador de Vídeo Digital (DVR).
[0200] Além disso, o método de processamento ao qual a presente invenção se aplica pode ser produzido na forma de um programa executado por um computador e pode ser armazenado em um meio de gravação legível por computador. Dados multimídia com uma estrutura de dados de acordo com a presente invenção também podem ser armazenados em um meio de gravação legível por computador. O meio de gravação legível por computador inclui todos os tipos de dispositivos de armazenamento e dispositivos de armazenamento distribuídos nos quais dados legíveis por computador são armazenados. O meio de gravação legível por computador pode incluir, por exemplo, um disco Blu-ray (BD), um barramento serial universal (USB), uma ROM, uma PROM, uma EPROM, uma EEPROM, uma RAM, um CD-ROM, uma fita magnética, um disquete e um dispositivo de armazenamento de dados óptico. O meio de gravação legível por computador também inclui meios concretizados na forma de uma onda portadora (por exemplo, transmissão via Internet). Em aditamento, um fluxo de bits gerado pelo método de codificação pode ser armazenado no meio de gravação legível por computador ou transmitido por uma rede de comunicação com fio ou sem fio.
[0201] Além disso, a(s) modalidade(s) da presente revelação podem ser concretizadas como um produto de programa de computador baseado em um código de programa, e o código de programa pode ser executado em um computador de acordo com a(s) modalidade(s) da presente revelação. O código de programa pode ser armazenado em uma onda portadora legível por computador.
[0202] A FIG. 16 representa um exemplo de um sistema de transmissão de conteúdo ao qual a modalidade do presente documento pode ser aplicada.
[0203] Com referência à FIG. 16, o sistema de transmissão de conteúdo ao qual as modalidades do presente documento se aplicam pode incluir em termos gerais um servidor de codificação, um servidor de transmissão, um servidor web, um armazenamento de mídia, um dispositivo do usuário e um dispositivo de entrada multimídia.
[0204] O servidor de codificação atua para comprimir em dados digitais o conteúdo introduzido pelos dispositivos de entrada multimídia, tais como smartphone, câmera, filmadora e seus semelhantes, para gerar um fluxo de bits e para transmiti-lo ao servidor de transmissão. Em outro exemplo, em um caso em que o dispositivo de entrada multimídia, tal como smartphone, câmera, filmadora ou seus semelhantes, gera diretamente um fluxo de bits, o servidor de codificação pode ser omitido.
[0205] O fluxo de bits pode ser gerado por um método de codificação ou um método de geração de fluxo de bits ao qual as modalidades do presente documento se aplicam. E o servidor de transmissão podem armazenar temporariamente o fluxo de bits em um processo de transmitir ou receber o fluxo de bits.
[0206] O servidor de transmissão transmite dados multimídia ao equipamento do usuário com base em um pedido do usuário através do servidor web, que atua como um instrumento que informa o usuário sobre um serviço. Quando o usuário solicita um serviço que deseja, o servidor web transfere o pedido ao servidor de transmissão, e o servidor de transmissão transmite dados multimídia ao usuário. Tendo isso em vista, o sistema de transmissão de conteúdo pode incluir um servidor de controle distinto, e, nesse caso, o servidor de controle atua para controlar comandos/respostas entre respectivos equipamentos no sistema de transmissão de conteúdo.
[0207] O servidor de transmissão pode receber conteúdo do armazenamento de mídia e/ou do servidor de codificação. Por exemplo, caso o conteúdo seja recebido do servidor de codificação, ele pode ser recebido em tempo real. Nesse caso, o servidor de transmissão pode armazenar o fluxo de bits por um período de tempo predeterminado para fornecer o serviço de transmissão consistentemente.
[0208] Por exemplo, o equipamento do usuário pode incluir um telefone móvel, um smartphone, um computador laptop, um terminal de transmissão digital, um assistente digital pessoal (PDA), um reprodutor multimídia portátil (PMP), uma navegação, um slate PC, um tablet, um dispositivo de vestir (por exemplo, um terminal tipo relógio (smartwatch), um terminal tipo óculos (smart glasses), telas de cabeça (HMD)), uma TV digital, um computador desktop, uma sinalização digital, ou algo do gênero.
[0209] Cada um dos servidores no sistema de transmissão de conteúdo pode ser operado como um servidor distribuído, e, nesse caso, os dados recebidos por cada servidor podem ser processados de maneira distribuída.

Claims (21)

REIVINDICAÇÕES
1. Método de decodificação de imagens praticado por um aparelho decodificador, o método sendo CARACTERIZADO por compreender: construir uma lista de Modos Mais Prováveis (MPM) que inclua modos de predição intra candidatos para um bloco atual; derivar um modo de predição intra do bloco atual a partir da lista de MPM com base em informações de índice de MPM que indicam um modo de predição intra para o bloco atual dentre os modos de predição intra candidatos incluídos na lista de MPM; gerar amostras de predição para o bloco atual com base no modo de predição intra; e gerar uma cena reconstruída com base nas amostras de predição, sendo que a construção da lista de MPM inclui derivar um modo DC como um dos modos de predição intra candidatos para incluí-lo na lista de MPM, com base em um caso em que o valor das informações de índice de linha de referência que indicam uma linha de referência usada para a predição intra do bloco atual é diferente de 0.
2. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que a construção da lista de MPM inclui o modo DC na última posição da lista de MPM.
3. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que a construção da lista de MPM inclui o modo DC na primeira posição da lista de MPM.
4. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que, com base em o valor das informações de índice de linha de referência ser diferente de 0, informações de flag de MPM que indicam se um modo de predição intra do bloco atual é selecionado dentre modos de predição intra candidatos a MPM não são sinalizadas e o valor das informações de flag de MPM é derivado como 1.
5. Método, acordo com a reivindicação 4, CARACTERIZADO pelo fato de que, com base em o valor das informações de índice de linha de referência ser diferente de 0 e o valor das informações de flag de MPM ser derivado como 1, as informações de índice de MPM são sinalizadas.
6. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que a derivação do modo de predição intra do bloco atual deriva o modo DC como o modo de predição intra do bloco atual com base em as informações de índice de MPM indicarem o modo DC dentre os modos de predição intra candidatos incluídos na lista de MPM.
7. Método, de acordo com a reivindicação 6, CARACTERIZADO pelo fato de que a geração das amostras de predição do bloco atual compreende: calcular um valor DC para o bloco atual usando amostras vizinhas específicas dentre amostras vizinhas do bloco atual, sendo que as amostras vizinhas incluem amostras vizinhas esquerdas e amostras vizinhas superiores do bloco atual; e derivar as amostras de predição com base no valor DC, sendo que as amostras vizinhas específicas são determinadas com base em se o bloco atual é um bloco quadrado ou um bloco não quadrado, sendo que, com base em o bloco atual ser um bloco quadrado, as amostras vizinhas específicas usadas para calcular o valor DC incluem tanto amostras vizinhas esquerdas do bloco qual quanto amostras vizinhas superiores do bloco atual, sendo que, com base em o bloco atual ser um bloco não quadrado e a largura do bloco atual ser superior à altura do mesmo, as amostras vizinhas específicas usadas para calcular o valor DC incluem amostras vizinhas superiores do bloco atual e não incluem amostras vizinhas esquerdas do bloco atual, e sendo que, com base em o bloco atual ser um bloco não quadrado e a largura do bloco atual ser inferior à altura do mesmo, as amostras vizinhas específicas usadas para calcular o valor DC incluem amostras vizinhas esquerdas do bloco atual e não incluem amostras vizinhas superiores do bloco atual.
8. Método, de acordo com a reivindicação 7, CARACTERIZADO pelo fato de que, com base em o bloco atual ser um bloco não quadrado e a largura do bloco atual ser superior à altura do mesmo, o número de amostras vizinhas superiores usado para calcular o valor DC é igual à largura do bloco atual, e com base em o bloco atual ser um bloco não quadrado e a largura do bloco atual ser inferior à altura do mesmo, o número de amostras vizinhas esquerdas usado para calcular o valor DC é igual à altura do bloco atual.
9. Método, de acordo com a reivindicação 7, CARACTERIZADO pelo fato de que, com base em o bloco atual ser um bloco não quadrado e a largura do bloco atual ser superior à altura do mesmo, o número de amostras vizinhas superiores usado para calcular o valor DC é igual ao número de amostras vizinhas esquerdas, e com base em o bloco atual ser um bloco não quadrado e a largura do bloco atual ser inferior à altura do mesmo, o número de amostras vizinhas esquerdas usado para calcular o valor DC é igual ao número de amostras vizinhas superiores.
10. Método, de acordo com a reivindicação 9, CARACTERIZADO pelo fato de que, com base em o bloco atual ser um bloco não quadrado e a largura do bloco atual ser superior à altura do mesmo, as amostras vizinhas superiores usadas para calcular o valor DC incluem amostras de número ímpar ou amostras de número par.
11. Método de codificação de imagens praticado por um aparelho codificador, o método sendo CARACTERIZADO por compreender: construir uma lista de Modos Mais Prováveis (MPM) que inclua modos de predição intra candidatos para um bloco atual; derivar um modo de predição intra do bloco atual com base nos modos de predição intra candidatos incluídos na lista de MPM; gerar informações de índice de MPM que indiquem um modo de predição intra do bloco atual dentre os modos de predição intra candidatos incluídos na lista de MPM; e codificar informações de imagem que incluam ao menos um de informações de índice de linha de referência que indicam uma linha de referência usada para a predição intra do bloco atual ou as informações de índice de MPM, sendo que a construção da lista de MPM inclui derivar um modo DC como um dos modos de predição intra candidatos para incluir o modo DC na lista de MPM, com base em um caso em que o valor das informações de índice de linha de referência é diferente de 0.
12. Método, de acordo com a reivindicação 11, CARACTERIZADO pelo fato de que a construção da lista de MPM inclui o modo DC na última posição da lista de MPM.
13. Método, de acordo com a reivindicação 11, CARACTERIZADO pelo fato de que a construção da lista de MPM inclui o modo DC na primeira posição da lista de MPM.
14. Método, de acordo com a reivindicação 11, CARACTERIZADO pelo fato de que, com base em o valor das informações de índice de linha de referência ser diferente de 0, informações de flag de MPM que indicam se um modo de predição intra do bloco atual é selecionado dentre modos de predição intra candidatos a MPM não são sinalizadas e o valor das informações de flag de MPM é derivado como 1.
15. Método, acordo com a reivindicação 14, CARACTERIZADO pelo fato de que, com base em o valor das informações de índice de linha de referência ser diferente de 0 e o valor das informações de flag de MPM ser derivado como 1, as informações de índice de MPM são sinalizadas.
16. Método, de acordo com a reivindicação 11, CARACTERIZADO pelo fato de que, com base em o modo de predição intra do bloco atual ser derivado como o modo DC incluído na lista de MPM, as informações de índice de MPM são geradas como um valor de índice que indica o modo DC dentre os modos de predição intra candidatos incluídos na lista de MPM.
17. Método, de acordo com a reivindicação 16, CARACTERIZADO por compreender ainda: com base em o modo DC ser aplicado ao bloco atual, calcular um valor DC para o bloco atual usando amostras vizinhas específicas dentre amostras vizinhas do bloco atual, sendo que as amostras vizinhas incluem amostras vizinhas esquerdas e amostras vizinhas superiores do bloco atual; e derivar as amostras de predição com base no valor DC, sendo que as amostras vizinhas específicas são determinadas com base em se o bloco atual é um bloco quadrado ou um bloco não quadrado, sendo que, com base em o bloco atual ser um bloco quadrado, as amostras vizinhas específicas usadas para calcular o valor DC incluem tanto amostras vizinhas esquerdas do bloco qual quanto amostras vizinhas superiores do bloco atual, sendo que, com base em o bloco atual ser um bloco não quadrado e a largura do bloco atual ser superior à altura do mesmo, as amostras vizinhas específicas usadas para calcular o valor DC incluem amostras vizinhas superiores do bloco atual e não incluem amostras vizinhas esquerdas do bloco atual, e sendo que, com base em o bloco atual ser um bloco não quadrado e a largura do bloco atual ser inferior à altura do mesmo, as amostras vizinhas específicas usadas para calcular o valor DC incluem amostras vizinhas esquerdas do bloco atual e não incluem amostras vizinhas superiores do bloco atual.
18. Método, de acordo com a reivindicação 17, CARACTERIZADO pelo fato de que, com base em o bloco atual ser um bloco não quadrado e a largura do bloco atual ser superior à altura do mesmo, o número de amostras vizinhas superiores usado para calcular o valor DC é igual à largura do bloco atual, e com base em o bloco atual ser um bloco não quadrado e a largura do bloco atual ser inferior à altura do mesmo, o número de amostras vizinhas esquerdas usado para calcular o valor DC é igual à altura do bloco atual.
19. Método, de acordo com a reivindicação 17, CARACTERIZADO pelo fato de que, com base em o bloco atual ser um bloco não quadrado e a largura do bloco atual ser superior à altura do mesmo, o número de amostras vizinhas superiores usado para calcular o valor DC é igual ao número de amostras vizinhas esquerdas, e com base em o bloco atual ser um bloco não quadrado e a largura do bloco atual ser inferior à altura do mesmo, o número de amostras vizinhas esquerdas usado para calcular o valor DC é igual ao número de amostras vizinhas superiores.
20. Meio de armazenamento digital não transitório legível por computador CARACTERIZADO por armazenar um fluxo de bits gerado por um método, o método compreendendo: construir uma lista de Modos Mais Prováveis (MPM) que inclua modos de predição intra candidatos para um bloco atual; derivar um modo de predição intra do bloco atual com base nos modos de predição intra candidatos incluídos na lista de MPM; gerar informações de índice de MPM que indiquem um modo de predição intra do bloco atual dentre os modos de predição intra candidatos incluídos na lista de MPM; e codificar informações de imagem que incluam ao menos um de informações de índice de linha de referência que indicam uma linha de referência usada para a predição intra do bloco atual ou as informações de índice de MPM, sendo que a construção da lista de MPM inclui derivar um modo DC como um dos modos de predição intra candidatos para incluir o modo DC na lista de MPM,
com base em um caso em que o valor das informações de índice de linha de referência é diferente de 0.
21. Método para transmitir dados para informações de imagem, o método sendo CARACTERIZADO por compreender: obter um fluxo de bits das informações de imagem que inclui informações de índice de linha de referência que indicam uma linha de referência usada para a predição intra de um bloco atual e informações de índice de Modo Mais Provável (MPM), sendo que as informações de índice de MPM são geradas executando a etapa de construir uma lista de MPM que inclua modos de predição intra candidatos para o bloco atual, derivar um modo de predição intra do bloco atual com base nos modos de predição intra candidatos incluídos na lista de MPM, gerar as informações de índice de MPM que indicam um modo de predição intra do bloco atual dentre os modos de predição intra candidatos incluídos na lista de MPM; e transmitir dados compreendendo o fluxo de bits das informações de imagem que inclui as informações de índice de referência e as informações de índice de MPM, sendo que a lista de MPM inclui um modo DC como um dos modos de predição intra candidatos, com base em um caso em que o valor das informações de índice de linha de referência é diferente de 0.
BR112021013735-1A 2019-01-13 2020-01-13 Método de codificação de imagens e dispositivo para executar intrapredição baseada em mrl BR112021013735A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962791877P 2019-01-13 2019-01-13
US62/791,877 2019-01-13
PCT/KR2020/000570 WO2020145775A1 (ko) 2019-01-13 2020-01-13 Mrl 기반 인트라 예측을 수행하는 영상 코딩 방법 및 장치

Publications (1)

Publication Number Publication Date
BR112021013735A2 true BR112021013735A2 (pt) 2021-09-21

Family

ID=71520273

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112021013735-1A BR112021013735A2 (pt) 2019-01-13 2020-01-13 Método de codificação de imagens e dispositivo para executar intrapredição baseada em mrl

Country Status (9)

Country Link
US (2) US11716461B2 (pt)
EP (1) EP3905674A4 (pt)
JP (2) JP7354260B2 (pt)
KR (1) KR20210093349A (pt)
CN (5) CN117201773A (pt)
BR (1) BR112021013735A2 (pt)
MX (1) MX2021008450A (pt)
WO (1) WO2020145775A1 (pt)
ZA (1) ZA202105106B (pt)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210158432A (ko) * 2018-05-12 2021-12-30 주식회사 윌러스표준기술연구소 참조 샘플을 이용하는 비디오 신호 처리 방법 및 장치
CN117201773A (zh) * 2019-01-13 2023-12-08 Lg 电子株式会社 用于执行基于mrl的帧内预测的图像编译方法和装置
US11405638B2 (en) * 2019-03-17 2022-08-02 Tencent America LLC Method and apparatus for video coding by determining intra prediction direction based on coded information of neighboring blocks
EP3932056A4 (en) * 2019-03-21 2022-08-03 Huawei Technologies Co., Ltd. METHOD AND DEVICE FOR INTRAPREDICTION
WO2020242182A1 (ko) * 2019-05-27 2020-12-03 에스케이텔레콤 주식회사 인트라 예측 모드를 유도하는 방법 및 장치
US20220345692A1 (en) * 2021-04-26 2022-10-27 Tencent America LLC Template matching based intra prediction
US20230217016A1 (en) * 2022-01-05 2023-07-06 Comcast Cable Communications, Llc Video Compression Using Boundary Based Template Refinement
WO2023224289A1 (ko) * 2022-05-16 2023-11-23 현대자동차주식회사 가상의 참조라인을 사용하는 비디오 코딩을 위한 방법 및 장치

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101854551B (zh) * 2010-06-08 2012-08-15 浙江大学 帧内预测模式编解码方法及装置
CN103636220B (zh) * 2011-06-28 2017-10-13 寰发股份有限公司 编码/解码帧内预测模式的方法及装置
KR20140008503A (ko) * 2012-07-10 2014-01-21 한국전자통신연구원 영상 부호화/복호화 방법 및 장치
KR20140121022A (ko) * 2013-04-04 2014-10-15 주식회사 팬택 복수의 레이어를 지원하는 비디오의 부호화 및 복호화 방법 및 이를 이용하는 장치
EP3442232A4 (en) * 2016-04-06 2019-12-04 KT Corporation METHOD AND APPARATUS FOR PROCESSING VIDEO SIGNAL
WO2017183751A1 (ko) * 2016-04-22 2017-10-26 엘지전자(주) 인터 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
CN109076241B (zh) * 2016-05-04 2023-06-23 微软技术许可有限责任公司 利用样本值的非相邻参考线进行帧内图片预测
WO2017205703A1 (en) * 2016-05-25 2017-11-30 Arris Enterprises Llc Improved weighted angular prediction coding for intra coding
CN109417628B (zh) * 2016-06-24 2022-03-08 株式会社Kt 视频信号处理方法和装置
ES2703607B2 (es) * 2016-08-03 2021-05-13 Kt Corp Método y aparato para procesar señales de vídeo
US20180199062A1 (en) 2017-01-11 2018-07-12 Qualcomm Incorporated Intra prediction techniques for video coding
US10742975B2 (en) * 2017-05-09 2020-08-11 Futurewei Technologies, Inc. Intra-prediction with multiple reference lines
CN117278745A (zh) 2017-07-06 2023-12-22 Lx 半导体科技有限公司 图像编码/解码方法、发送方法和数字存储介质
WO2019039806A1 (ko) * 2017-08-21 2019-02-28 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
CN118075473A (zh) * 2017-11-28 2024-05-24 Lx 半导体科技有限公司 图像编码/解码方法、图像数据的传输方法和存储介质
US10419754B1 (en) * 2018-04-02 2019-09-17 Tencent America LLC Method and apparatus for video decoding using multiple line intra prediction
KR20210158432A (ko) * 2018-05-12 2021-12-30 주식회사 윌러스표준기술연구소 참조 샘플을 이용하는 비디오 신호 처리 방법 및 장치
WO2020073911A1 (en) * 2018-10-09 2020-04-16 Huawei Technologies Co., Ltd. Devices and methods for image and video coding
CN113170116A (zh) * 2018-11-22 2021-07-23 北京字节跳动网络技术有限公司 为帧内模式视频处理使用参考行
CN117201773A (zh) * 2019-01-13 2023-12-08 Lg 电子株式会社 用于执行基于mrl的帧内预测的图像编译方法和装置

Also Published As

Publication number Publication date
JP2023164632A (ja) 2023-11-10
CN113424529A (zh) 2021-09-21
US11716461B2 (en) 2023-08-01
WO2020145775A1 (ko) 2020-07-16
JP7354260B2 (ja) 2023-10-02
EP3905674A1 (en) 2021-11-03
CN117201774A (zh) 2023-12-08
CN117201772A (zh) 2023-12-08
ZA202105106B (en) 2023-01-25
CN117201771A (zh) 2023-12-08
EP3905674A4 (en) 2022-06-22
US20210344907A1 (en) 2021-11-04
JP2022517028A (ja) 2022-03-03
CN113424529B (zh) 2023-10-13
KR20210093349A (ko) 2021-07-27
US20230328231A1 (en) 2023-10-12
CN117201773A (zh) 2023-12-08
MX2021008450A (es) 2021-09-21

Similar Documents

Publication Publication Date Title
US10911754B2 (en) Image coding method using history-based motion information and apparatus for the same
BR112021013735A2 (pt) Método de codificação de imagens e dispositivo para executar intrapredição baseada em mrl
BR122021011268B1 (pt) Método e aparelho de decodificação de imagem, método e aparelho de codificação de imagem e mídias de armazenamento não transitórias legíveis por computador
AU2020240943B2 (en) Method and device for signaling information on chroma format
JP7379541B2 (ja) マトリックスに基づくイントラ予測装置及び方法
BR112021004556A2 (pt) método e aparelho de decodificação de imagens com base em predição de movimento afim usando lista de candidatos a mvp afim no sistema de codificação de imagens
BR112021005152A2 (pt) método de codificação de nível de fator de conversão e dispositivo para o mesmo
CN113273192B (zh) 使用mpm列表的基于帧内预测的视频编码方法及装置
JP7230189B2 (ja) シンタックスデザイン方法及びシンタックスを用いてコーディングを行う装置
US11843801B2 (en) Image prediction method and apparatus for performing intra prediction
US20220174270A1 (en) Method and device for configuring mpm list
BR112021012505B1 (pt) Método de decodificação/codificação de imagem realizado por um aparelho de decodificação/codificação e mídia de armazenamento não transitória legível por computador
CN113475065A (zh) 使用统一mpm列表的基于帧内预测的图像编译方法和设备
JP2024019432A (ja) 決定された予測モードを適用して予測サンプルを生成する映像デコーディング方法及びその装置
US20220124309A1 (en) Unified mpm list-based intra prediction
US20220166968A1 (en) Intra prediction method and apparatus based on multi-reference line in image coding system
BR122022005509B1 (pt) Método de decodificação/codificação de imagem realizado por um aparelho de decodificação/codificação, método de transmissão de dados para uma imagem , aparelho de decodificação/codificação para decodificação/codificação de imagem, aparelho de transmissão para transmissão de dados para uma imagem e mídia de armazenamento não transitória legível por computador